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

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

    XMLWordPrintableJSON

Details

    • Icon: Bug Bug
    • Resolution: Won't Do
    • Icon: Major - P3 Major - P3
    • None
    • None
    • None
    • None
    • ALL
    • v4.2
    • 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

        Activity

          People

            daniel.gottlieb@mongodb.com Daniel Gottlieb (Inactive)
            justin.seyster@mongodb.com Justin Seyster
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: