Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-52664

Explore more simple ways to generate SBE expressions

    XMLWordPrintableJSON

Details

    • Icon: Improvement Improvement
    • Resolution: Unresolved
    • Icon: Major - P3 Major - P3
    • None
    • None
    • Querying
    • Query Execution

    Description

      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:

      1. 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
      2. 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.

      Attachments

        Activity

          People

            backlog-query-execution Backlog - Query Execution
            nikita.lapkov@mongodb.com Nikita Lapkov (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated: