Chunk operations should leave shard catalog metadata non-authoritative

XMLWordPrintableJSON

    • Type: Task
    • Resolution: Unresolved
    • Priority: Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • None
    • Catalog and Routing
    • CAR Team 2026-05-11
    • 🟥 DDL
    • None
    • None
    • None
    • None
    • None
    • None

      Make all chunk operations leave the shard catalog metadata in non-authoritative state as long as their commit is non-authoritative. Today they don't touch authoritativeness, so when the CSR is in kAuthoritative the post-commit refresh becomes a no-op and the CSS stays stale, breaking the next chunk operation with StaleConfig.

      Why

      When the CSR is in kAuthoritative, onCollectionPlacementVersionMismatch routes to _onCollectionPlacementVersionMismatchAuthoritative which reads only the local shard catalog and never picks up the chunks the operation just committed at the config server. Split and merge currently rely on the non-authoritative refresh to keep the CSS in sync.

      What

      In the split and merge commit paths, drop the CSR's authoritative state before the post-commit refresh so it goes through the non-authoritative path and setFilteringMetadata_nonAuthoritative updates the CSS.

      Out of scope

      Making split/merge fully authoritative (writing through config.shard.catalog.chunks).

            Assignee:
            Silvia Surroca
            Reporter:
            Silvia Surroca
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: