- #PXC-501: galera_split_brain TC failing with following assertion intermittently #51
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.
galera_split_brain TC failing with assertion intermittently in the function KeyPart::matches (), which compares the two keys, because one of those keys is empty (the field "version" in this key contains the value "EMPTY").
The key to a locally created transaction may be empty until it is completed, but the current code does not allow this and trying looking for a key in the certification index. However, technically this key would fit to all the elements of the certification index. Therefore, the key comparison function in the KeyPart class has assertion to detect such incorrect comparisons, which leads to the PXC-501 error. However, the fact of the empty key cannot be inserted in the certification index; therefore, we can just skip it immediately.
Related PXC patch here: percona/percona-xtradb-cluster#121