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

resharding_generate_oplog_entries.js should retry on TransientTransactionError

    XMLWordPrintableJSON

Details

    • Icon: Task Task
    • Resolution: Unresolved
    • Icon: Major - P3 Major - P3
    • None
    • None
    • None
    • Cluster Scalability
    • 5

    Description

      The resharding donor machinery forces an asynchronous catalog refresh which might end up happening during a second statement of any of the transactions in the resharding_generate_oplog_entries.js. Since a lock is hold, this generates a ShardCannotRefreshDueToLocksHeld.

      In case this error is reported during a second or higher statement of the transaction, the router returns the error up to the user as a form of TransientTransactionError, which should be handled.

      Attachments

        Activity

          People

            backlog-server-cluster-scalability Backlog - Cluster Scalability
            enrico.golfieri@mongodb.com Enrico Golfieri
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated: