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

Retry on TransientTransaction errors in targeted transaction jstests

    • ALL
    • Sharding 2019-02-25, Sharding 2019-03-11, Sharding 2019-03-25, Sharding 2019-04-08, Sharding 2019-04-22, Sharding 2019-05-06, Sharding 2020-04-06
    • 10

      If a jstest that manually runs transaction statements fails with a TransientTransaction error, it is safe to retry the whole transaction, but it currently has no way to retry the previous statements, so the test will fail unnecessarily. The suites that run core/txns tests against sharded clusters are particularly susceptible to this, because of the chance of snapshot errors on slow hosts.

      Each targeted test / suite could use an override file (similar to the existing txn_override.js) that batches transaction operations and supports advancing a session's txnNumber transparently to do this. The override wouldn't have to handle network errors or failovers, just transient transaction errors.

            haley.connelly@mongodb.com Haley Connelly
            jack.mulrow@mongodb.com Jack Mulrow
            0 Vote for this issue
            4 Start watching this issue