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

movePrimary can cause retryable writes to the collection moved applied twice

    • Cluster Scalability
    • ALL

      Unlike moveChunk, movePrimary does not transfer the transaction history when cloning the unsharded collection to the new destination. This means that if a retryable write is applied on the original shard, the record of it being written will not be transferred to the new shard it is being moved to.

      To get around this bug, either:

      • don't use movePrimary if your application wants to use retryable writes on unsharded collection.

      or

      • Before calling movePrimary, make sure that there are no ongoing retryable writes to unsharded collection and after calling movePrimary, make sure to start a new session before attempting to do a retryable write.

            Assignee:
            backlog-server-cluster-scalability [DO NOT USE] Backlog - Cluster Scalability
            Reporter:
            randolph@mongodb.com Randolph Tan
            Votes:
            0 Vote for this issue
            Watchers:
            10 Start watching this issue

              Created:
              Updated: