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

timeseries_group.js fails if run with just mongod featureFlagSbeFull

    • Type: Icon: Bug Bug
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 8.0.0-rc0
    • Affects Version/s: None
    • Component/s: None
    • None
    • Query Execution
    • Fully Compatible
    • ALL

      This bug was injected 2024-03-16 by SERVER-78934.

      This test passes if run with all these flags:

      python3 buildscripts/resmoke.py run --suites=core
          --mongosSetParameters='{
              featureFlagTimeSeriesInSbe: true,
              featureFlagSbeBlockHashAgg: true,
              featureFlagSbeFull: true}'
          --mongodSetParameters='{
              featureFlagTimeSeriesInSbe: true,
              featureFlagSbeBlockHashAgg: true,
              featureFlagSbeFull: true}'
          jstests/core/timeseries/timeseries_group.js
      

      but it fails if run with only featureFlagSbeFull on mongod:

      python3 buildscripts/resmoke.py run --suites=core
          --mongodSetParameters='{featureFlagSbeFull: true}'
          jstests/core/timeseries/timeseries_group.js
      

      Failure:

      [js_test:timeseries_group] 2024-03-20T19:45:29.323Z assert failed :
      Expected explain not to use block processing for test case 'GroupByNull (allowDiskUse=false)'
      

      Block processing is used but the test expects it not to be used. The test case (block_processing_test_cases.js) has usesBlockProcessing: sbeFullEnabled:

              {
                  name: "GroupByNull",
                  pipeline: [
                      {$match: {[timeFieldName]: {$lt: dateUpperBound}}},
                      {$group: {_id: null}},
                      {$project: {_id: 1}}
                  ],
                  usesBlockProcessing: sbeFullEnabled
              },
      

      The proximate cause is the timeseries_group.js code introduced by SERVER-78934 that assigns the value to const featureFlagsAllowBlockHashAgg, but the true root cause may be incorrect determination in the server code of whether to use block processing. In either case, the server and the test disagree about this.

            Assignee:
            ian.boros@mongodb.com Ian Boros
            Reporter:
            kevin.cherkauer@mongodb.com Kevin Cherkauer
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: