-
Notifications
You must be signed in to change notification settings - Fork 10
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
IF: Add the beginning of a savanna disaster recovery test #54
Conversation
assert not node2.verifyAlive(), "Node2 did not shutdown" | ||
assert not node3.verifyAlive(), "Node3 did not shutdown" | ||
|
||
# node0 will have higher lib than 1,2,3 since it can incorporate QCs in blocks |
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 yet we can't use waitForLibToAdvance()
at line 87?
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.
Would need to capture the LIB above and wait for LIB+1, but there is inherit race conditions on the get_info calls and where we are in the test. Waiting for head to advance should be sufficient.
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.
It would be nice if "Node::kill" would return the lib
right before the node is killed, so we could verify the assertion that node0 has higher lib than 1,2,3 when it is killed.
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.
Would need to report in a log statement at exit or use leap util to look at the block log.
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.
Can't we do in Node.py?
currentLib = self.getIrreversibleBlockNum()
Looks like it does a get_info
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.
Yes, but LIB can change immediately after that call or right before that call.
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.
Yes, but still it is the best indication of what lib
was right before the node is killed.
IF: Use string for variant format of fc::dynamic_bitset
Note:start |
Integration test with 4 finalizers (A, B, C, and D).
All nodes but A lose their reversible blocks and restart from an earlier snapshot.
A is restarted and replays up to block N after restarting from snapshot. Block N is sent to the other
nodes B, C, and D after they are also started up again.
Verify that LIB advances and that A, B, C, and D are eventually voting strong on new blocks.