ExportXMLWordPrintableJSON

    • DB Integration & Observability
    • Fully Compatible
    • v9.0
    • QE 2026-10-12
    • 200
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      The change stream sharding FSM tests run two writers against the same database (`test_cs`) with different collections. The writers run independent command streams, so one writer can start an index build (`createIndexes` / `shardCollection`) on its collection while the other issues a database-level DDL command. In particular, a `movePrimary` on test_cs races with a sibling writer's index build: the `movePrimary` coordinator scans the database for in-progress index builds and rejects the command with `BackgroundOperationInProgressForNamespace`.

      The FSM suites `load implicitly_retry_on_migration_in_progress.js`, but their `migrationRetryExtraDDLErrors` list does not cover the above error. `BackgroundOperationInProgressForNamespace` was therefore treated as fatal: the writer thread exited, its remaining events were never emitted, and the database-level change stream reader blocked until the 10-minute `waitForDone` timeout. This caused sporadic failures in multiple FSM tests.

      Fix: add `BackgroundOperationInProgressForNamespace` and `BackgroundOperationInProgressForDatabase` to `migrationRetryExtraDDLErrors` in the FSM base suite and the bg_mutator override, then regenerate the matrix suites. The conflict is transient (the index build finishes shortly after), so the existing retry logic now retries the command instead of failing the writer.

            Assignee:
            Jan Steemann
            Reporter:
            Jan Steemann
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: