Files
mongo/jstests/core/queryable_encryption
Alexander Neben ae19ac0739 SERVER-90484 Large increases in throughput for most expensive variants (#22196)
[required variant with jstestshell
changes](https://spruce.mongodb.com/version/6643e8bf8571a30007c6562d/tasks?sorts=STATUS%3AASC%3BBASE_STATUS%3ADESC)
<- 242 hours
[required variant without jstestshell
changes](https://spruce.mongodb.com/version/6643e9dd8571a30007c6576b/tasks?sorts=STATUS%3AASC%3BBASE_STATUS%3ADESC)
<- 301 hours
20% reduction in compute.

[AUBSAN
After](https://spruce.mongodb.com/version/6644ecfaf87baf0007e4b124/tasks):
412 hours
[AUBSAN
Before](https://spruce.mongodb.com/version/6644e4b131a6190007b0526c/tasks)
539 hours
24% reduction in compute

[TSAN
After](https://spruce.mongodb.com/version/6644ecabe2618d0007a54406/tasks)
356 hours
[TSAN
Before](https://spruce.mongodb.com/version/6644e47f9b110e0007e9820f/tasks)
580 hours
39% reduction in compute

According to project outliers this should reduce our spend on
mongodb-mongo-master by
(20%*20.32%) = 4.06%
(39%*14.82%) = 5.78%
(24%*8.73%) = 2.10%
**Total: 11.94%**

In all these patches we use a jstest shell compiled without debug
symbols and statically linked. This increased the startup speed from 1.2
seconds to .02 seconds. Since each javascript test is run with a
separate invocation of the shell this speeds up ever javascript test by
about 1.2 seconds. The tradeoff is that we are not going to catch tsan
or aubsan bugs in the jstestshell and it makes our test running process
just that much more complicated.

Not included here is another optimization to run batches of javascript
tests together to avoid having to re-handshake with the database.

[Final
PB](https://spruce.mongodb.com/version/664b780cceb3230007a77382/tasks?sorts=STATUS%3AASC%3BBASE_STATUS%3ADESC)
showing mostly green.

GitOrigin-RevId: db2f54f832512676f6f8159e1267d5ae69aa6b3d
2024-05-21 05:35:39 +00:00
..