This repository has been archived by the owner on Nov 6, 2020. It is now read-only.
Authority Round and --force-sealing #11537
Labels
A3-stale 🍃
Pull request did not receive any updates in a long time. No review needed at this stage. Close it.
It looks like disabling force sealing currently prevents Aura from producing both blocks and empty step messages if there are no pending transactions. That means the network will fail to finalize any blocks whenever ½ resp. ⅓ of the validators have no pending transactions for a while. However, Aura considers skipping your turn "benign misbehavior" and reports that to the validator set contract.
The empty steps transition seems to have the same intention as disabling
force_sealing
: To prevent empty blocks.I wonder whether Aura should generally ignore the
--force-sealing
option then (i.e. consider it always enabled).Alternatively, we could make it illegal to run Aura without
--force-sealing
, and panic with an appropriate message.The wiki currently says:
That sounds like the current behavior is indeed intended: You can run it without force sealing, but then blocks won't get finalized "in a timely fashion". Maybe the wiki should just make it more clear that a lack of pending transactions, even just in some validator nodes, can prevent finalization indefinitely, and that in such a setting the validator set contract must ignore "benign misbehavior". (Or a bit better: Aura could report skipped steps only if force sealing is enabled.)
Anyway, I don't think the current behavior is ideal. Not sure what the best fix would be?
Original issue: poanetwork#180
The text was updated successfully, but these errors were encountered: