Remove redundant assertCanWrite_inlock checks from write execution paths

XMLWordPrintableJSON

    • Type: Improvement
    • Resolution: Fixed
    • Priority: Major - P3
    • 9.0.0-rc0
    • Affects Version/s: None
    • Component/s: None
    • None
    • Catalog and Routing
    • Fully Compatible
    • CAR Team 2026-06-08
    • 🟦 Shard Catalog
    • None
    • None
    • None
    • None
    • None
    • None

      The assertCanWrite_inlock duplicates checks that are already performed by the Shard Role collection acquisition, for write operations.

      The write paths that call it acquire the target collection using IX collection lock and AcquisitionPrerequisites::kWrite (1, 2, 3, 4, 5), Such an acquisition already ensures write eligibility at the replication level and performs placement/shard version validation.

      This is also safe for time-series writes: logical time-series requests go through CollectionPreConditions::acquireCollectionAndCheck() and acquireCollectionWithBucketsLookup(), which acquire the actual buckets namespace for write and preserve the relevant placement checks across logical/buckets namespace translation.

            Assignee:
            Kaloian Manassiev
            Reporter:
            Kaloian Manassiev
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: