You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Summary:
Added transactional retry writes test.
Fixed the following issues, found by this test.
1) Transaction could be aborted when status tablet leader changes.
Fixed by returning correct status to retryer.
2) Second commit request could fail after first one was replicated.
Fixed by returning AlreadyPresent status and handling it in commit callback.
3) RPC layers errors were not handled correctly.
For instance when request cannot be processed because of service shutdown, we could stop retrying to apply the operation.
Fixed by correct handling of such errors.
Those issues does NOT ruin correctness, but increase failure rate of transactions.
Also added more diagnostics information to retry writes test and transaction workflow.
Test Plan:
ybd --cxx-test ql-stress-test --gtest_filter QLStressTest.RetryTransactionalWritesWithRestarts -n 40
ybd --cxx-test ql-stress-test --gtest_filter QLStressTest.RetryTransactionalWrites -n 40
Reviewers: mikhail, dmitry, timur
Reviewed By: timur
Subscribers: bogdan, ybase, bharat
Differential Revision: https://phabricator.dev.yugabyte.com/D6354
No description provided.
The text was updated successfully, but these errors were encountered: