Hello Kudu Jenkins, I'd like you to reexamine a change. Please visit
http://gerrit.cloudera.org:8080/7439 to look at the new patch set (#3). Change subject: WIP disk failure: forced shutdown of replicas ...................................................................... WIP disk failure: forced shutdown of replicas When a disk fails, replicas with data on the failed disk must shut down. Normally, when a replica is shutdown, it must wait for all transactions to finish. However, transactions that fail due to disk failure will not complete. This patch adds the ability to Cancel transactions. Unlike Aborts, which cannot end a transaction that is in the APPLYING state (must be RESERVED), Cancels can end any transaction. This is only "safe" because the tablet to whom the MvccManager belongs is expected to shutdown. In addition to this, a new tablet state is added: FAILED_AND_SHUTDOWN. Like QUIESCING and SHUTDOWN, TabletReplica::Shutdown() can wait on FAILED_AND_SHUTDOWN. This is needed to shut down failed tablets that need to be replicated: calling Shutdown() cannot leave the replica in the FAILED state, and the SHUTDOWN state cannot itself indicate the need for a tablet copy. WIP because there is no testing and I'm not sure this is the best design for what I'm trying to accomplish. Change-Id: I983620f27e7226806a2cca253db7619731914d42 --- M src/kudu/tablet/metadata.proto M src/kudu/tablet/mvcc.cc M src/kudu/tablet/mvcc.h M src/kudu/tablet/tablet_replica.cc M src/kudu/tablet/tablet_replica.h M src/kudu/tablet/transactions/alter_schema_transaction.h M src/kudu/tablet/transactions/transaction.h M src/kudu/tablet/transactions/transaction_driver.h M src/kudu/tablet/transactions/transaction_tracker-test.cc M src/kudu/tablet/transactions/transaction_tracker.cc M src/kudu/tablet/transactions/transaction_tracker.h M src/kudu/tablet/transactions/write_transaction.cc M src/kudu/tablet/transactions/write_transaction.h M src/kudu/tserver/ts_tablet_manager.cc 14 files changed, 100 insertions(+), 21 deletions(-) git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/39/7439/3 -- To view, visit http://gerrit.cloudera.org:8080/7439 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: newpatchset Gerrit-Change-Id: I983620f27e7226806a2cca253db7619731914d42 Gerrit-PatchSet: 3 Gerrit-Project: kudu Gerrit-Branch: master Gerrit-Owner: Andrew Wong <aw...@cloudera.com> Gerrit-Reviewer: David Ribeiro Alves <davidral...@gmail.com> Gerrit-Reviewer: Kudu Jenkins Gerrit-Reviewer: Mike Percy <mpe...@apache.org> Gerrit-Reviewer: Todd Lipcon <t...@apache.org>