validate_db_metadata_command.js is not resilient to stepdowns after dropIndexes

XMLWordPrintableJSON

    • Type: Bug
    • Resolution: Won't Do
    • Priority: Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • None
    • Catalog and Routing
    • ALL
    • CAR Team 2026-04-27
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      validate_db_metadata_command.js fails in sharding_stepdown_fcv_upgrade_downgrade_jscore_passthrough because line 118 calls validate() immediately after dropIndexes() expecting zero API version errors, but a stepdown can cause validateDBMetadata to be routed to a newly elected primary that hasn't applied the drop yet (especially with catchUpTimeoutMillis: 0).

      The test already retries with assert.soon when expecting errors to appear (assertValidateError), but lacks the symmetric retry when expecting errors to disappear.

      Fix is to wrap the post-drop validate call in assert.soon so it retries until the clean state is visible across all shards.

            Assignee:
            Pol Pinol
            Reporter:
            Pol Pinol
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: