Closed afck closed 5 years ago
Would it make sense trying older revisions of net_dynamic_hb
with this seed? Or the seed wouldn't lead to the same behaviour there?
It probably wouldn't lead to the same behaviour: The test has changed quite a bit recently, I think?
Anyway, I suspect now that the second point is the problem: Node 7's sender queue actually removes node 5 after handling batch 4, in which node 5 was added back.
It might be an unrealistic scenario, but I still think we should handle it: The sender queue should keep track of re-added nodes, even if they are in the last_epochs
map.
The
drop_and_re_add
test fails with the followingnet_dynamic_hb.proptest_regressions
file:Node 5's
DynamicHoneyBadger
never receives the first batch after getting re-added. TheSubset
instances for the subsequent batches complete, but the node is stalled waiting for the one in epoch 5.The reason is that the
Broadcast
instances with nodes 3 and 7 as proposers don't terminate (the correspondingBinaryAgreement
instances both returnedtrue
). I haven't found out why yet:Broadcast
,SenderQueue
(possibly it drops the removed nodes after they have already been re-added),