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

Ensure Shard Merge supports transactions

    • Serverless
    • Fully Compatible
    • ALL
    • Server Serverless 2023-01-09, Server Serverless 2023-01-23

      We write a "fake" applyOps with ns set to tenantId_ here and here

      For shard merge, we won't have a tenant id, so the namespace string will end up looking like _., which is invalid when multitenancy is enabled, which means application of txn entries will fail.

      We can't simply skip setting nss for Shard Merge because entries require nss to be set: https://github.com/10gen/mongo/blob/d84272507b3957ce6289a6545e53cb25331a88d6/src/mongo/db/repl/oplog_entry.idl#L77-L80

      We should be able to set nss to NamespaceString(boost::none, "") for shard merge. As part of this ticket, we should add/update tests for <16MB transactions

            Assignee:
            christopher.caplinger@mongodb.com Christopher Caplinger
            Reporter:
            christopher.caplinger@mongodb.com Christopher Caplinger
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: