-
Type: Improvement
-
Resolution: Unresolved
-
Priority: Major - P3
-
None
-
Affects Version/s: None
-
Component/s: Querying
-
Query Execution
Currently we useĀ makeE functions to create SBE expressions in builders for aggregation expressions and find. Code for complex expressions is not easy to read and quite verbose. We should explore how we can generate SBE expressions in a more simple way.
We have identified two options during the team discussion:
- Compile-time parser for DSL describing SBE expressions. We have a working prototype created by nikita.lapkov during Skunkworks: https://github.com/laplab/mongo/tree/sbe_strings
- C++ operator overloading and expression templates for constructing SBE expressions. This idea was proposed by anton.korshunov and martin.neupauer
In the scope of this ticket we need to understand limitations of the first approach and experiment with the second one.