ExportXMLWordPrintableJSON

    • DB Integration & Observability
    • Fully Compatible
    • ALL
    • QE 2026-09-15, QE 2026-09-28
    • 0
    • None
    • None
    • None
    • None
    • None
    • None
    • None

        1. Description

      The `minDifferentPBRTs` assertion in `change_stream_response_deadline_sharded.js` is structurally dependent on periodic noop oplog entry count, which varies with platform speed. In sharded change streams, mongos takes the minimum PBRT across shards, pinning client-visible progress to the laggard shard. When the target document is on shard1, shard0 can only advance its PBRT past the target's timestamp by scanning noop entries. Fewer noops (from a faster setup phase on Windows CI) means fewer PBRT advances, causing the assertion to fail.

      Experimentally verified: raising `periodicNoopIntervalSecs` from 1s to 10s deterministically collapses the PBRT count from ~5 to 1 (5/5 runs), confirming noop traversal — not sleep timing — as the governing mechanism.

      *Possible fix:* Replace the fixed `minDifferentPBRTs` threshold with a lower, more tolerant assertion (≥1 to confirm the knob was forwarded). The existing log message 10290000 check on each shard already proves the deadline was applied; the PBRT count should not be a strict threshold given its inherent dependence on oplog content that varies across platforms.

            Assignee:
            Cian Nugent McGealy
            Reporter:
            Cian Nugent McGealy
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: