[MDEV-21443] Donot report INCIDENT_EVENT in binary log for transactional changes which are safely rolledback Created: 2020-01-08 Updated: 2022-08-16 Resolved: 2022-07-26 |
|
| Status: | Closed |
| Project: | MariaDB Server |
| Component/s: | Replication |
| Affects Version/s: | 10.2, 10.3, 10.4, 10.5 |
| Fix Version/s: | 10.3.36, 10.4.26, 10.5.17, 10.6.9, 10.7.5, 10.8.4, 10.9.2 |
| Type: | Bug | Priority: | Critical |
| Reporter: | Sujatha Sivakumar (Inactive) | Assignee: | Brandon Nesterenko |
| Resolution: | Fixed | Votes: | 1 |
| Labels: | None | ||
| Issue Links: |
|
||||||||
| Description |
|
Part of "SHOW BINLOG EVENTS" output:
Slave reports following error:
Report INCIDENT event only in a case where safe rollback is not possible. |
| Comments |
| Comment by Sujatha Sivakumar (Inactive) [ 2020-01-10 ] | |||||||||||||||||||||||||||||||||||||||||
|
Hello Andrei, Please review additional changes in 10.3. sql/log.cc http://buildbot.askmonty.org/buildbot/grid?category=main&branch=bb-10.3-sujatha https://github.com/MariaDB/server/commit/014f752826899a0b83fe7cc2e5106fb2aa73ef12 Thank you | |||||||||||||||||||||||||||||||||||||||||
| Comment by Sujatha Sivakumar (Inactive) [ 2020-06-17 ] | |||||||||||||||||||||||||||||||||||||||||
|
Hello Andrei, I have tested the patch once again on latest 10.2 and 10.3. 10.2 Changes: https://github.com/MariaDB/server/commit/4432e80a722fd70aa704a65d10237e8450387943 I tried to upmerge my fix in higher versions and observed that the following test Test name: mysql-test/suite/rpl/t/rpl_mdev-11092.test --echo "#######################################################################"
Analysis: function: static int binlog_rollback(handlerton *hton, THD *thd, bool all)
With debugger I observed that the 'trx_cache' is not actually empty, as it has
Because of this fix transaction cache is getting reset and the incident Hence I added a check for the presence of incident event in 'binlog_rollback'.
Patch: https://github.com/MariaDB/server/commit/ac6ea253a0c4b08e9d121569c992f9d986f85c71#diff-a30b13c03c8d01a5301c20c921105ae4L2105-R2113 | |||||||||||||||||||||||||||||||||||||||||
| Comment by Andrei Elkin [ 2022-07-25 ] | |||||||||||||||||||||||||||||||||||||||||
|
[ Approved ] as PR-2190. | |||||||||||||||||||||||||||||||||||||||||
| Comment by Brandon Nesterenko [ 2022-07-26 ] | |||||||||||||||||||||||||||||||||||||||||
|
Pushed into 10.3 as 555c12a. There will be merge conflicts in 10.4 (git), 10.5 (git), and 10.7 (compilation only). A branch exists for each conflict: |