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

Optimize the expression search for parameter reuse during parameterization

    • Type: Icon: Task Task
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 7.2.0-rc0
    • Affects Version/s: None
    • Component/s: None
    • Labels:
    • Query Optimization
    • Fully Compatible
    • QO 2023-09-04, QO 2023-09-18

      Currently the parameter re-use has a complexity of O(n^2), due to the use of find_if on a vector, which works fine for small number of expressions within a query. With an increasing number of Expressions an implementation with a map can be superior compared to the find_if on a vector.

      Here we need to implement a hybrid approach to use a vector for small number of expressions and a map for larger number of expressions. To hash an expression the expression hashing function from the boolean simplification project should be used. 

            henri.nikku@mongodb.com Henri Nikku
            peter.volk@mongodb.com Peter Volk
            0 Vote for this issue
            7 Start watching this issue