-
Notifications
You must be signed in to change notification settings - Fork 2.1k
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
VReplication: disable use of session_track_gtids
#16424
Conversation
Signed-off-by: Shlomi Noach <2607934+shlomi-noach@users.noreply.github.com>
Review ChecklistHello reviewers! 👋 Please follow this checklist when reviewing this Pull Request. General
Tests
Documentation
New flags
If a workflow is added or modified:
Backward compatibility
|
session_track_gtids
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks fine. I expect there might be some test failures which have to be fixed.
We expect no test failures in this PR's CI jobs, as they all use vanilla MySQL, and so the behavior is effectively unchanged. |
OK, we choose to continue with this PR, over #16421 which I will now close. |
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #16424 +/- ##
=======================================
Coverage 68.66% 68.66%
=======================================
Files 1548 1548
Lines 199071 199063 -8
=======================================
+ Hits 136683 136696 +13
+ Misses 62388 62367 -21 ☔ View full report in Codecov by Sentry. |
Signed-off-by: Shlomi Noach <2607934+shlomi-noach@users.noreply.github.com> Signed-off-by: Florent Poinsard <florent.poinsard@outlook.fr>
This was disabled in vitessio#16424, but we can clean up this additional code since it's unused. Signed-off-by: Dirkjan Bussink <d.bussink@gmail.com>
Description
An alternative approach to #16421, addressing #16420.
It's really a completely different take: this PR disables the use of tracked session GTIDs, essentially undoing some of the work in #11061. VReplication table streamer and row streamer will only ever use the tried-and-true
flush tables with read lock
to capture a transactionally consistent GTID.There are multiple reasons here. First, the discrepancy of behavior we have right now between different flavors of MySQL, and across different CI jobs. This makes debugging and reproducibility more difficult to handle, and we've struggled with this for a while.
Next, and what actually kicks this work, is we're seeing a bug, and incorrect value for the tracked GTID, under certain workloads and with specific table structures. We began investigation into this. Out of precaution, we prefer to disable it at this time.
Related Issue(s)
#16420
Checklist
Deployment Notes