Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

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

Open
wants to merge 1 commit into
base: 3.x
Choose a base branch
from

Conversation

sysprg
Copy link

@sysprg sysprg commented Nov 29, 2016

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

…p_handle_join_msg(gcs_group_t*, const gcs_recv_msg_t*)

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.
@peterschwaller peterschwaller changed the title - #PXC-594: Assertion `sender->count_last_applied' failed in gcs_group_handle_join_msg(gcs_group_t*, const gcs_recv_msg_t*) PXC-594 PXC-608: Assertion `sender->count_last_applied' failed in gcs_group_handle_join_msg(gcs_group_t*, const gcs_recv_msg_t*) Feb 13, 2020
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.

1 participant