aptos-core
aptos-core copied to clipboard
[optqs] basic fallback heuristic for optimistic quorum store
Description
A basic implementation of fallback heuristic for optimistic quorum store. Proposal Generator will maintain a list of last proposal statuses (same as NewRoundReason
). A exponential window based algorithm to decide whether to go optimistic or not.
Initialize the window at 2.
- For each proposal failure, double the window up to a MAX size
- If there are no failures within the window, the propose optimistic batch
- If there are no failures up to MAX proposals, reset the window to 2.
Note that we don't check whether a round failed due to optimistic quorum store as we don't have that information locally to decide if a proposal failed due to batch missing, unless we collect it globally, so we have to work with local information for now.