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

ReadyIndexesIterator::_advance() does not perform isReady() check

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major - P3
    • Resolution: Won't Do
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: None
    • Labels:
      None
    • Operating System:
      ALL
    • Backport Requested:
      v4.2
    • Sprint:
      Execution Team 2019-08-26

      Description

      A change for SERVER-37263 removed a check in ReadyIndexesIterator::_advance() that skips indexes returning false for isReady().

      https://github.com/mongodb/mongo/commit/a5ce10b0982c7a0378ba92f1c7d3e02d49d0b18a#diff-d394cc50d8f61537a660446b56f0b5d5L96-L97

      Skipping this check may allow a query to scan an index that is not consistent with the current transaction. We believe the fassert() added by SERVER-40620 (since reverted) is tripping as a result of an index getting used that should have been filtered out by an isReady() check. Let me know if you'd like details on how to reproduce that.

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              daniel.gottlieb Daniel Gottlieb
              Reporter:
              justin.seyster Justin Seyster
              Participants:
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: