Uploaded image for project: 'WiredTiger'
  1. WiredTiger
  2. WT-9063

Create a general approach to handle WT_ROLLBACK errors in Python test suite

      In WT-8991, we are fixing test cases that fail due to WT_ROLLBACK. But the issue is potentially more broad than just those few test cases. As of WT-8869, any readonly transactions can now be rolled back, and of course read/write transactions have always had that possibility. WT handles retries of single operations that are not within a transaction, but explicit transactions are used pretty widely in the test suite, so this can come up.  The recommended approach for a production program is to rollback/retry any failing transactions.  Whether that's the right thing for short test cases is part of what we are discussing here.

      Since the problem might require fiddling a bit with a large number of tests, it would be good to discuss the proper approach. There are 183 python test files that use begin_transaction. Of those, 36 files set the cache size to 50M, and these are especially vulnerable to rollback errors.

        1. test_xx.py
          5 kB
          Donald Anderson

            Assignee:
            donald.anderson@mongodb.com Donald Anderson
            Reporter:
            donald.anderson@mongodb.com Donald Anderson
            Votes:
            0 Vote for this issue
            Watchers:
            9 Start watching this issue

              Created:
              Updated:
              Resolved: