[SERVER-69057] FLE2 Range Query mincover: test vectors take too many resources to build Created: 22/Aug/22  Updated: 14/Feb/23  Resolved: 23/Aug/22

Status: Closed
Project: Core Server
Component/s: None
Affects Version/s: None
Fix Version/s: 6.2.0-rc0

Type: Improvement Priority: Major - P3
Reporter: Sergey Galtsev (Inactive) Assignee: Sergey Galtsev (Inactive)
Resolution: Done Votes: 0
Labels: FLE2, fle2
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Sprint: Security 2022-09-05
Participants:

 Description   

mincover tests, such as Int32_TestVectors seem to be too heavy on a compiler:

  • compile might take minutes on evergreen hosts
  • clang3 llvm is crashing when optimizations are not turned off.
  • following line may appear during build:

src/mongo/unittest/unittest.h:363:5: note: variable tracking size limit exceeded with -fvar-tracking-assignments, retrying without

this ticket is to look for solution which would reduce compile time. Suggested options are:

  • split test vectors into multiple smaller ones
  • yank c++ primitives out of test vectors (e.g.: no boost::optional, and no std::vector)


 Comments   
Comment by Alex Neben [ 22/Aug/22 ]

From zoom,

  1. we are going forward with the revert
  2. Sergey is going to explore if making MinCoverTestVector trivial reduces compile time and/or hiding the number of elements from the compiler
  3. You can parse the tests from a string which will not have a bunch of initializations in the compilation step
  4. If that doesn’t work @Daniel is willing to help Sergey automatically split the file as part of a build task (Dan if you are feeling crafty I bet there is a way to link them all together at the end so you have a single binary)
  5. Finally, failing all the above we can split it by hand into 3-8 tests
Generated at Thu Feb 08 06:12:28 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.