PXC-594 PXC-608: Assertion `sender->count_last_applied' failed in gcs_group_handle_join_msg(gcs_group_t*, const gcs_recv_msg_t*) #95
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This patch fixes two bugs:
PART I, PXC-594:
Assertion `sender->count_last_applied' failed in the
gcs_group_handle_join_msg() function.
This error stems from the fact that we have added
a direct transition from JOINED to DONOR state bypassing
SYNCED state, but does not take into account that in this
case the count_last_applied flag is lost. It is necessary
to change it in such a direct transition.
PART II, PXC-608:
Assertion `node->desync_count > 0' failed in the
the gcs_node_update_status() function.
This error occurs because although disconnection node
from the cluster involves stop of replication, closing
of all client connections and consequently the cancellation
of all transactions (which are tied to client connections),
but the desynchronization counter associated with the current
node, as well as the last state of the node, which is stored
in the prim_state field of the gcs_group_t structure, are not
cleared even after disconnecting the node from the cluster.
Related PXC patch is located here: percona/percona-xtradb-cluster#360