queryFramework field in slow query logs can be incorrect for hybrid execution

XMLWordPrintableJSON

    • Type: Bug
    • Resolution: Fixed
    • Priority: Major - P3
    • 8.3.0-rc0
    • Affects Version/s: None
    • Component/s: None
    • None
    • Query Execution
    • Fully Compatible
    • ALL
    • Hide
      assert.commandWorked(db.setProfilingLevel(0, {slowms: -1}));
      
      const coll = db.coll;
      coll.drop()
      coll.insert({b: 1})
      
      const coll2 = db.coll2;
      coll2.drop()
      coll2.insert({b: 1})
      
      const query = [{$group: {_id: null, a: {$sum: 'b'}}}, {$lookup: {from: 'coll2', pipeline: [], as: 'result'}}]
      jsTestLog(coll.aggregate(query).toArray())
      // Slow query log with queryFramework=classic
      jsTestLog(coll.explain().aggregate(query))
      // Slow query log with queryFramework=SBE
      
      Show
      assert .commandWorked(db.setProfilingLevel(0, {slowms: -1})); const coll = db.coll; coll.drop() coll.insert({b: 1}) const coll2 = db.coll2; coll2.drop() coll2.insert({b: 1}) const query = [{$group: {_id: null , a: {$sum: 'b' }}}, {$lookup: {from: 'coll2' , pipeline: [], as: 'result' }}] jsTestLog(coll.aggregate(query).toArray()) // Slow query log with queryFramework=classic jsTestLog(coll.explain().aggregate(query)) // Slow query log with queryFramework=SBE
    • QE 2025-11-10
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      The repro shows a query with $group (executed in SBE) and a $lookup (executed in document sources). When executed normally it shows queryFramework=classic, and when executed with explain it shows queryFramework=sbe.

      The QueryFramework enum for this query should be kSBEHybrid, meaning the queryFramework field in the slow query log should be "sbe"

            Assignee:
            Ivan Fefer
            Reporter:
            Matt Boros
            Votes:
            0 Vote for this issue
            Watchers:
            8 Start watching this issue

              Created:
              Updated:
              Resolved: