ExportXMLWordPrintableJSON

    • Type: Task
    • Resolution: Fixed
    • Priority: Major - P3
    • 9.1.0-rc0, 9.1.0-rc1024
    • Affects Version/s: None
    • Component/s: None
    • None
    • Query Execution
    • Fully Compatible
    • QE 2026-10-12, QE 2026-10-26
    • 0
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      Problem

      BF-46709: CheckOrphansDeleted times out after fts_spanish.js in disagg_sharded_colls_jscore_passthrough_secondary_reads_with_balancer, with a config.rangeDeletions task stuck in processing: true.

      implicitly_shard_accessed_collections.js shards the test collection on {_id: "hashed"}, and the random-migrations balancer moves a chunk off the donor, which queues a range deletion. If the test then calls coll.dropIndexes() before the deletion runs, dropIndexes("*") also drops the hashed shard key index, because skipDroppingHashedShardKeyIndex is not set (see drop_indexes.cpp). The range deleter needs that index, fails with IndexNotFound, and the task never completes, so the hook times out after 12 minutes.

      This is a race in the test setup, not a product bug. Any jscore test that calls dropIndexes() can hit it in this suite.

      Fix

      Add skipDroppingHashedShardKeyIndex: true to the mongod set_parameters of the balancer_and_migrations_fixture override in buildscripts/modules/atlas/matrix_suites/overrides/disagg.yml, then regenerate the matrix suites.

      This matches the comparable suites that already set the parameter:

      • sharded_collections_jscore_passthrough_with_config_transitions_and_add_remove_shard and its disagg variant
      • disagg_multi_stmt_txn_jscore_passthrough_with_migration
      • the disagg concurrency balancer suites (via fsm_balancer_and_migrations_fixture)

      Of the six suites that use balancer_and_migrations_fixture, this is the only one without the parameter, so regenerating changes only this suite.

      Possible follow-up (not in scope)

      The stuck task had numOrphanDocs: 0. The range deleter could complete an empty-range task without needing the shard key index, instead of retrying forever on IndexNotFound.

            Assignee:
            Daniel Tabacaru
            Reporter:
            Daniel Tabacaru
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: