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

Best effort transaction abort may cause test to hang due to abandoned transaction

    • Type: Icon: Bug Bug
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 8.1.0-rc0
    • Affects Version/s: None
    • Component/s: None
    • Cluster Scalability
    • Fully Compatible
    • ALL
    • Cluster Scalability 2024-09-02, Cluster Scalability 2024-10-28
    • 0

      In the internal_transactions_sharded_from_mongod_kill_sessions test, we run internal transactions and sometimes kill the sessions the transactions belong to. However, this abort is a best effort thing, and if the abortTransaction command runs before the command with the startTransaction: true argument in one of the shards then we will start the transaction after the abort and it will remain there until its lifetime expires. Because this operation is holding an IX lock, it will block any DDL command which will, in turn, block all other write operations.

      This should be primarily a testing issue because our tests increase the transaction lifetime whereas in production, the transaction expiring would happen sooner and unblock other operations.

            Assignee:
            cheahuychou.mao@mongodb.com Cheahuychou Mao
            Reporter:
            allison.easton@mongodb.com Allison Easton
            Votes:
            0 Vote for this issue
            Watchers:
            8 Start watching this issue

              Created:
              Updated:
              Resolved: