Todd Lipcon has submitted this change and it was merged. Change subject: KUDU-1337. Avoid spurious remote bootstraps on DeleteTablet() ......................................................................
KUDU-1337. Avoid spurious remote bootstraps on DeleteTablet() When a table is deleted, the master sends a DeleteTablet() RPC to every replica of every tablet with the TABLET_DATA_DELETED parameter, which indicates a "permanent" tablet deletion. If a follower services DeleteTablet() before the leader does, it's possible for the leader to react to the missing replica by asking the follower to remote bootstrap itself. This changes a bit of logic so that the TSTabletManager caches that a tablet has been permamently deleted and refuses remote bootstrap requests for a tablet if that tablet is in the deleted cache. This is a transient cache and is reset upon process restart. Change-Id: I852f8ac70e1f6496127598e5e02de5b72711ab2b Reviewed-on: http://gerrit.cloudera.org:8080/2436 Tested-by: Mike Percy <[email protected]> Reviewed-by: Adar Dembo <[email protected]> --- M src/kudu/integration-tests/remote_bootstrap-itest.cc M src/kudu/tserver/ts_tablet_manager.cc M src/kudu/tserver/ts_tablet_manager.h 3 files changed, 84 insertions(+), 2 deletions(-) Approvals: Mike Percy: Verified Adar Dembo: Looks good to me, approved -- To view, visit http://gerrit.cloudera.org:8080/2436 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: merged Gerrit-Change-Id: I852f8ac70e1f6496127598e5e02de5b72711ab2b Gerrit-PatchSet: 3 Gerrit-Project: kudu Gerrit-Branch: master Gerrit-Owner: Mike Percy <[email protected]> Gerrit-Reviewer: Adar Dembo <[email protected]> Gerrit-Reviewer: Mike Percy <[email protected]> Gerrit-Reviewer: Todd Lipcon <[email protected]>
