Todd Lipcon has posted comments on this change. ( 
http://gerrit.cloudera.org:8080/8134 )

Change subject: consensus: disarm failure detector around elections
......................................................................


Patch Set 3:

(1 comment)

http://gerrit.cloudera.org:8080/#/c/8134/1//COMMIT_MSG
Commit Message:

http://gerrit.cloudera.org:8080/#/c/8134/1//COMMIT_MSG@20
PS1, Line 20: I'm still not convinced this is the cleanest approach, but it 
seems to work.
> That should already be guaranteed by virtue of using a one-shot timer (i.e.
The one-shot guarantees that 'FailureDetected' is called when it's not armed, 
but it's still possible for the election callback to get called when it's been 
re-armed, right? eg this sequence:

- is follower (fd armed)
- fd fires
-- start pre-election term=1 (fd disarmed)
- term changed, still follower (fd re-armed)
- fd fires
-- start pre-election term=2 (fd disarmed)
- term=1 election callback:
-- notices that it is for an out-of-date term
--- rearms (fd armed)
- term=2 election callback:
-- election callback called with FD armed. (is this a problem)?


(not sure if the term change is _supposed_ to re-arm the FD if there is already 
a pending pre-election but it seems it currently does).

Do we expect an invariant that, if there is any election pending that the FD is 
_not_ armed? Or just that, if the node is a follower and there is not an 
election, then it _is_ armed?



--
To view, visit http://gerrit.cloudera.org:8080/8134
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: Idcd311cee028c48e908f290d60c474e8a4557d97
Gerrit-Change-Number: 8134
Gerrit-PatchSet: 3
Gerrit-Owner: Adar Dembo <[email protected]>
Gerrit-Reviewer: Adar Dembo <[email protected]>
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Tidy Bot
Gerrit-Reviewer: Todd Lipcon <[email protected]>
Gerrit-Comment-Date: Thu, 26 Oct 2017 21:15:58 +0000
Gerrit-HasComments: Yes

Reply via email to