chainSyncServerExample
does not adhere to the spec
#4917
Labels
chainSyncServerExample
does not adhere to the spec
#4917
The ChainSync server example
ouroboros-network/ouroboros-network-protocols/testlib/Ouroboros/Network/Protocol/ChainSync/Examples.hs
Lines 161 to 261 in 29899df
does not adhere to the spec, namely the following aspect:
Concretely, when the
StrictTVar m (ChainProducerState blk)
changes at the same time as an intersection was found, then thread scheduling can result in sending aMsgRollBackward
to a different point than the negotiated intersection.The solution here would be to track a bit of state to make sure that the created follower will always first send a
MsgRollBackward
to the negotiated intersection even if theChainProducerState
changed in the meantime.FTR: This was noticed in IntersectMBO/ouroboros-consensus#1186 (comment), but isn't blocking us.
The text was updated successfully, but these errors were encountered: