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

queryStats key hash should persist through ClusterFind::runGetMore

    • Type: Icon: Improvement Improvement
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 7.0.0-rc9
    • Affects Version/s: None
    • Component/s: None
    • None
    • Query Optimization
    • Fully Compatible

      This issue was found when SERVER-77184 was committed and it generated a hot BF in noPassthrough suites on query_stats_collect_on_mongos.js. 

       

       For this mongos query, when setEndOfOpMetrics() is called from ClusterFind::runQueryWithoutRetrying, the queryStats key hash is set on debug. But when we run a getMore to exhaust the cursor, ClusterFind::runGetMore calls setEndOfOpMetrics() and the key hash is actually _not set at that point. So with my commit, the executimeTime doesn't get recorded/updated.

       

      The current fix is to just return at the top of query_stats_collect_on_mongos.js, however this ticket should address why the hash isn't persisted through the setEndOfOpMetrics() call in ClusterFind::runGetMore()

            Assignee:
            maddie.zechar@mongodb.com Maddie Zechar
            Reporter:
            maddie.zechar@mongodb.com Maddie Zechar
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: