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

Log when we are unable to kill a session due to a prepared transaction

    • Replication

      If a coordinator shard goes down, leaving participants with prepared transactions, the operator should have some way of knowing that there is transaction state to clean up, even if the transaction state does not create cache pressure or block other operations. SERVER-36499 will ensure that you can see how long a transaction has been in prepare in the currentOp output, but it would also be helpful to log when a transaction has been in prepare for "too long". We can log a message when the transaction timeout thread or the session reaper is unable to clean up a transaction because it is in prepare. The transaction timeout thread runs every 30 seconds by default and the session reaper runs every 5 minutes by default, so these log messages will not be too frequent. The log message should say how long the transaction has been in the prepare state.

            backlog-server-repl [DO NOT USE] Backlog - Replication Team
            tess.avitabile@mongodb.com Tess Avitabile (Inactive)
            0 Vote for this issue
            3 Start watching this issue