Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-87061

Sharded multi-document transactions can observe partial effects of concurrent reshard operation

    • Type: Icon: Bug Bug
    • Resolution: Fixed
    • Priority: Icon: Critical - P2 Critical - P2
    • 8.0.0-rc0, 7.0.7, 7.3.0-rc4
    • Affects Version/s: 7.0.0
    • Component/s: None
    • Labels:
    • Catalog and Routing
    • Fully Compatible
    • ALL
    • v7.3, v7.0
    • CAR Team 2024-03-04, CAR Team 2024-03-18
    • 127

      SERVER-84723 didn't fully fix the reported bug when resharding is involved – there's still a small window of time where anomalies can occur.
      Resharding first commits on the configsvr (which produces the new collection 'timestamp') and later commits on the shards (renames the resharding temporary collections to the original namespace). Transactions that logically execute at a timestamp in between the two steps above will match post-resharding sharding metadata with pre-resharding data. SERVER-84723 didn't fully fix this because it relies on the new collection 'timestamp' to guarantee that any operation that executes at a later logical timestamp is safe – this isn't true considering the way resharding commits.

      On v8.0, this affects moveCollection too.

            jordi.serra-torrens@mongodb.com Jordi Serra Torrens
            jordi.serra-torrens@mongodb.com Jordi Serra Torrens
            0 Vote for this issue
            13 Start watching this issue