Skip to content

Conversation

@mergify
Copy link

@mergify mergify bot commented Jan 22, 2025

…ication.

When a leader changes all enqueuer and consumer processes are notified from the state_enter(leader, callback. However a new leader may not yet have applied all commands that the old leader had. If any of those commands is a checkout or a register_enqueuer command these processes will not be notified of the new leader and thus may never resend their pending commands.

The new leader will however send an applied notification when it does apply these entries and these are always sent from the leader process so can also be used to trigger pending resends. This commit implements that.

Most likely fixes the jepsen failure in https://github.com/rabbitmq/jepsen/actions/runs/12606905118 - however proving this could be extremely difficult.


This is an automatic backport of pull request #13095 done by [Mergify](https://mergify.com).

…ication.

When a leader changes all enqueuer and consumer processes are notified
from the `state_enter(leader,` callback. However a new leader may not
yet have applied all commands that the old leader had. If any of those
commands is a checkout or a register_enqueuer command these processes
will not be notified of the new leader and thus may never resend their
pending commands.

The new leader will however send an applied notification when it does
apply these entries and these are always sent from the leader process
so can also be used to trigger pending resends. This commit implements
that.

(cherry picked from commit d31b9aa)
@michaelklishin michaelklishin added this to the 4.0.6 milestone Jan 22, 2025
@michaelklishin michaelklishin merged commit 65d350e into v4.0.x Jan 22, 2025
272 checks passed
@michaelklishin michaelklishin deleted the mergify/bp/v4.0.x/pr-13095 branch January 22, 2025 21:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants