Andrew Wong has uploaded this change for review. ( 
http://gerrit.cloudera.org:8080/17263


Change subject: KUDU-2612: rollback txn on TXN_LOCKED_ABORT
......................................................................

KUDU-2612: rollback txn on TXN_LOCKED_ABORT

Previously it was required that clients manually rollback transactions
when their ops failed with TXN_LOCKED_ABORTED (seen as an Aborted
error). Rather than pushing the burden onto application users, this
patch attempts to alleviate this by hooking in a callback to rollback
transactions automatically if any write op fails with TXN_LOCKED_ABORT.

Of course, users are still free to Rollback() on error -- this patch is
simply meant to automate it in case the user doesn't, giving us a bit
more control over ensuring our transactions don't lead to a deadlock.

Change-Id: I25415cad0cfb08d260e23bd8b368852a5006c1fb
---
M src/kudu/integration-tests/txn_write_ops-itest.cc
M src/kudu/tserver/tablet_service.cc
M src/kudu/tserver/ts_tablet_manager.cc
M src/kudu/tserver/ts_tablet_manager.h
4 files changed, 65 insertions(+), 12 deletions(-)



  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/63/17263/1
--
To view, visit http://gerrit.cloudera.org:8080/17263
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newchange
Gerrit-Change-Id: I25415cad0cfb08d260e23bd8b368852a5006c1fb
Gerrit-Change-Number: 17263
Gerrit-PatchSet: 1
Gerrit-Owner: Andrew Wong <[email protected]>

Reply via email to