Hello Dan Burkert, Mike Percy, I'd like you to do a code review. Please visit
http://gerrit.cloudera.org:8080/3957 to review the following change. Change subject: KUDU-1500: Data race in RaftConsensusITest.TestCorruptReplicaMetadata ...................................................................... KUDU-1500: Data race in RaftConsensusITest.TestCorruptReplicaMetadata The test intends to corrupt the metadata of one of the tserver tablets. While the cluster is in the process of resurrecting the failed tserver, the Partition and PartitionSchema on that tserver is accessed using TabletPeer in an unguarded manner via ListTablets RPCs. The proposed fix here keeps the Partition and PartitionSchema immutable once after it is loaded during replica bootstrap. These fields are never overwritten again during Tablet Copy or any other workflow. Also a unit test is added to exercise this data race window. i.e, the unit test aims to issue ListTablets RPCs during a follower's tablet copy stage and provides an optimistic coverage for the fix. Testing: Passed about 2000 iteration of the failing test raft_consensus-itest.TestCorruptReplicaMetadata Change-Id: I0a7a62b7c5aa62e9888b4b454790861df9fe2ad5 Change-Id: I204e9ef326b95b4d6216778a35b04377778760ff --- M src/kudu/integration-tests/cluster_itest_util.cc M src/kudu/integration-tests/cluster_itest_util.h M src/kudu/integration-tests/tablet_copy-itest.cc M src/kudu/tablet/tablet_metadata.cc 4 files changed, 136 insertions(+), 16 deletions(-) git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/57/3957/1 -- To view, visit http://gerrit.cloudera.org:8080/3957 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I204e9ef326b95b4d6216778a35b04377778760ff Gerrit-PatchSet: 1 Gerrit-Project: kudu Gerrit-Branch: master Gerrit-Owner: Dinesh Bhat <din...@cloudera.com> Gerrit-Reviewer: Dan Burkert <d...@cloudera.com> Gerrit-Reviewer: Mike Percy <mpe...@apache.org>