3 | | We're trying to check that long query strings don't cause scaling problems, but the test is not ideal as we incur the overheads of parsing a lot more times for the "large" tests. Ideally the test would be constructed such that "small" and "large" would give equal times, and we'd just have a margin to allow for random variations due to other loads on the machine, etc. That's how most most of the scaling tests we have work (see `tests/harness/scalability.h` which defines `O_N_LOG_N` etc thresholds which are each the geometric mean between the scaling behaviours we want them to discriminate between - for 10 times the work, `O(n)` -> 10, O(log(n)) -> 20, so the threshold is set based on `sqrt(10*20)` which is about 14.1). But this testcase is older that the `scalability.h` mechanisms. |
| 3 | We're trying to check that long query strings don't cause scaling problems, but the test is not ideal as we incur the overheads of parsing a lot more times for the "large" tests. Ideally the test would be constructed such that "small" and "large" would give equal times, and we'd just have a margin to allow for random variations due to other loads on the machine, etc. That's how most most of the scaling tests we have work (see `tests/harness/scalability.h` which defines `O_N_LOG_N` etc thresholds which are each the geometric mean between the scaling behaviours we want them to discriminate between - for 10 times the work, `O(n)` -> 10, `O(log(n))` -> 20, so the threshold is set based on `sqrt(10*20)` which is about 14.1). But this testcase is older that the `scalability.h` mechanisms. |