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

Fix internal transactions JS tests to correctly handle when original error is propagated from TransactionParticipantFailedUnyield

    • Type: Icon: Task Task
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 8.1.0-rc0, 8.0.0-rc14
    • Affects Version/s: None
    • Component/s: None
    • None
    • Cluster Scalability
    • Fully Compatible
    • v8.0
    • 200

      SERVER-91021 changed internal_transactions_unsharded.js to emulate what mongos does with the TransactionParticipantFailedUnyield error: if the test is running commands directly on a mongod and received TransactionParticipantFailedUnyield, the original error is extracted from it and thrown instead to be handled by the rest of the test.

      Unfortunately, this breaks internal_transactions_kill_sessions.js, because TransactionParticipantFailedUnyield will sometimes have Interrupted as original error and the test expects all Interrupted errors to be handled by the runCommand override in retry_on_killed_sessions.js. Since the original error is extracted and thrown after runCommand has finished running, the retry logic in the override does not get to see and handle the error properly.

            Assignee:
            abdul.qadeer@mongodb.com Abdul Qadeer
            Reporter:
            vojislav.stojkovic@mongodb.com Vojislav Stojkovic
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: