-
Notifications
You must be signed in to change notification settings - Fork 8
Conversation
Test's pass locally on both go and node: ringpop-go:
ringpop-node:
|
@@ -121,8 +121,9 @@ function testStateTransitions(ns, initial, newState, finalState, incNoDelta, sta | |||
function prepareCluster(insert_fns) { | |||
return function(t, tc, n) { | |||
return [ | |||
dsl.assertDetectChecksumMethod(t, tc), | |||
dsl.waitForPing(t, tc, false), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe we should describe why we are waiting for a ping, and why we don't consume it. Both are very subtile but important facts.
LGTM |
Nice find on the bug in the lookup function of the test coordinator, fix is legit. |
// By waiting for the first ping we make sure the SUT is ready to go. | ||
// We don't consume it so other tests (especially the ping-tests) | ||
// can still assert implementation details related to ping distribution. | ||
dsl.waitForPing(t, tc, false), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm a bit confused. Shouldn't the joins happen before the ping?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The idea behind it is to wait until the node starts pinging. At that point we can consider it to be fully ready and start running the other validations.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
But wouldn't it make sense to first wait for the joins, and then for the pinging. I don't think the node will ping before it has joined.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Makes sense, I'll reorder them
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
After a discussion with Nils we changed it back (and added a comment). The reason why we're waiting for the initial ping first is so we wait until the node is fully ready before checking the number of joins. This way we're able to detect if there are too many joins during standup.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
makes sense, thanks!
Looks good! |
This PR fixes three issues: