Hello Todd Lipcon,

I'd like you to do a code review.  Please visit

    http://gerrit.cloudera.org:8080/7557

to review the following change.

Change subject: raft_consensus-itest: don't assume SIGSTOP is synchronous
......................................................................

raft_consensus-itest: don't assume SIGSTOP is synchronous

While looping raft_consensus-itest in slow mode 1000 times, I saw the
following failure once:

  I0801 03:05:02.165644 24426 raft_consensus-itest.cc:1682] Pausing 2 tablet 
servers in config of size 3
  /data/1/adar/kudu/src/kudu/integration-tests/raft_consensus-itest.cc:1702: 
Failure
  Value of: s.IsTimedOut()
    Actual: false
  Expected: true
  OK
  /data/1/adar/kudu/src/kudu/integration-tests/raft_consensus-itest.cc:1814: 
Failure
  Expected: AssertMajorityRequiredForElectionsAndWrites(active_tablet_servers, 
leader_uuid) doesn't generate new fatal failures in the current thread.
    Actual: it does.

One explanation is: since the SIGSTOP sent by Pause() is delivered
asynchronously, it's possible for the write issued by the test (after
Pause()) to be handled before a majority of replicas are actually paused.

Change-Id: Id3202378a0e03a1bb29f32993498399e67b584d5
---
M src/kudu/integration-tests/raft_consensus-itest.cc
1 file changed, 10 insertions(+), 5 deletions(-)


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

Gerrit-MessageType: newchange
Gerrit-Change-Id: Id3202378a0e03a1bb29f32993498399e67b584d5
Gerrit-PatchSet: 1
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Adar Dembo <[email protected]>
Gerrit-Reviewer: Todd Lipcon <[email protected]>

Reply via email to