Skip to content

sui_v0.18.0_1670492155_ci

@andll andll tagged this 08 Dec 07:24
Consensus adapter has a bunch of pending tasks that submits to consensus and wait for transaction to be sequenced.

Some of those tasks might never complete after epoch change, because at some point we stop consensus and some submitted transactions will never get committed.

In order to release those tasks, we introduce separate mechanism - `AuthorityPerEpochStore` has a new method `wait_epoch_terminated` which returns future that resolves when epoch ends. We make use of this future to terminate all ConsensusAdapter tasks on epoch change.

In terms of implementation details, we introduce new `NotifyOnce` struct in order to propagate such notification.
Assets 2
Loading