This pull request introduces a new method on Buffer that allows to retrieve how many operations haven't been applied yet due to a deferral, in an effort to start adding observability into memo's internal state.
We have pretty good confidence that, so long as all messages are delivered, the system will converge. However, higher layers in the stack (e.g., networking, storage, etc.) may cause memo not to see every operation, and so this new simple function will help take operation delivery out of the equation (if the deferred count is zero).
This pull request introduces a new method on
Buffer
that allows to retrieve how many operations haven't been applied yet due to a deferral, in an effort to start adding observability into memo's internal state.We have pretty good confidence that, so long as all messages are delivered, the system will converge. However, higher layers in the stack (e.g., networking, storage, etc.) may cause memo not to see every operation, and so this new simple function will help take operation delivery out of the equation (if the deferred count is zero).
/cc: @joshaber