Remove standalone query_execution_context Bazel targets to restore binary layout

XMLWordPrintableJSON

    • Type: Bug
    • Resolution: Fixed
    • Priority: Major - P3
    • 9.0.0-rc0
    • Affects Version/s: None
    • Component/s: None
    • None
    • Query Integration
    • Fully Compatible
    • ALL
    • 200
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      SERVER-127286 split query_execution_context and query_execution_context_adapter into standalone Bazel lib targets. This inserted ~28KB of object code into the linker's topological sort, shifting all downstream hot
      SBE functions (BlockHashAggStage, HashAggStage) by a uniform +28,752 bytes in the .text section. On Intel arch, this caused cache alignment issues that produced an ~18% latency regression on AggEmptyMatchGroupSum and AggEmptyMatchGroupSumProject benchmarks (BF-43880).

      Fix is to:

      • Move adapter construction (QueryExecutionContext + QueryExecutionContextAdapter) from host/aggregation_stage/ast_node.cpp into host_connector/adapter/host_services_adapter.cpp, wrapping the raw C callback/destroy into std::function at the adapter layer.
      • Removes the standalone query_execution_context and query_execution_context_adapter Bazel targets
      • Merges query_execution_context_adapter.cpp back into the host_adapters target

            Assignee:
            Aditya Deshpande
            Reporter:
            Aditya Deshpande
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: