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

Index build can be missing on secondary after stepdown

    XMLWordPrintableJSON

Details

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Major - P3 Major - P3
    • None
    • None
    • None
    • Storage Execution
    • ALL
    • 10

    Description

      When oplogApplicationEnforcesSteadyStateConstraints is set to false, if there is an index build conflict after a node steps down and the existing index build fails, the index build is not retried resulting in an index build missing on a secondary.

      This is the order events that can cause this:

      • Node 1 starts index build A as a primary and the index build is scheduled (making it past this check)
      • Node 1 steps down
      • Node 2 steps up as primary and starts index build B with the same name as index build A
      • Node 1 tries to replicate index build B but runs into an index build conflict with index build A but continues with this error
      • Index build A on node 1 fails
      • Index build B now missing on node 1 and is not retried

      In production, this could only be detected by running dbcheck when the db hashes for Node 1 and Node 2 mismatch.

      Attachments

        Activity

          People

            backlog-server-execution Backlog - Storage Execution Team
            shinyee.tan@mongodb.com Shin Yee Tan
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated: