Support group pushdown in pipeline optimization tests

XMLWordPrintableJSON

    • Type: Bug
    • Resolution: Fixed
    • Priority: Major - P3
    • 5.1.0-rc0
    • Affects Version/s: Backlog
    • Component/s: None
    • None
    • Fully Compatible
    • ALL
    • Hide

      ./buildscripts/resmoke.py run --mongodSetParameter='

      {internalQueryEnableSlotBasedExecutionEngine: true}

      ' --mongodSetParameter='

      {featureFlagSBEGroupPushdown: true}

      ' --suites=aggregation jstests/aggregation/optimize_away_pipeline.js

      Show
      ./buildscripts/resmoke.py run --mongodSetParameter=' {internalQueryEnableSlotBasedExecutionEngine: true} ' --mongodSetParameter=' {featureFlagSBEGroupPushdown: true} ' --suites=aggregation jstests/aggregation/optimize_away_pipeline.js
    • QE 2021-10-04
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      This test explicitly tests for a list of expected stages in the explain plan, for example:

      pipeline = [{$project: {a: 0}}, {$group: {_id: "$a", b: {$sum: "$b"}}}];
      assertPipelineUsesAggregation({
          pipeline: pipeline,
          expectedStages: ["COLLSCAN", "PROJECTION_SIMPLE", "$project"],
      });
      

      Now when we push group down, there will be an extra group stage. All we need to do is update the `expectedStages` list to check for the GROUP stage when we know $group will be pushed down.

            Assignee:
            Eric Cox (Inactive)
            Reporter:
            Eric Cox (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: