mariadb/mysql-test/suite/binlog
Andrei Elkin c06c36218a MDEV-35506 commit policy of one-phase-commit even at errored-out binlogging leads to assert
Currently execution of commit in one phase proceeds to commit by
engines when binlog_commit() does not succeed.

There are two issues with that:

1. absence of binlog_rollback() or lower-level
`binlog_cache_data::reset()` along the following execution of the
failing statement eventually will raise an assert on non-empty binlog
cache, find in the MDEV description

  # --error assert(sql/log.cc:1712(binlog_close_connection))
  # --disconnect default

2. engines, including ones that are rollback capable, commit in this
particular error situation.

Both effects can be observed with a new mtr test that would fail when run on
a BASE of this commit.
The BASE has to include MDEV-35207 et all fixes because the test is written
with CREATE-TABLE-SELECTs.

A new test file verifies the new behaviour to rollback including
cases with a side effect of modified non-transactional engine which
expose another MDEV-36027 (TODO: fix).
2025-04-03 20:13:10 +03:00
..
include MDEV-35350: Backport search_pattern_in_file.inc SEARCH_WAIT to 10.5 2024-11-12 05:54:50 -07:00
r MDEV-35506 commit policy of one-phase-commit even at errored-out binlogging leads to assert 2025-04-03 20:13:10 +03:00
std_data MDEV-5115 RBR from MySQL 5.6 to MariaDB 10.0 does not work 2013-12-09 12:37:45 +01:00
t MDEV-35506 commit policy of one-phase-commit even at errored-out binlogging leads to assert 2025-04-03 20:13:10 +03:00
combinations
disabled.def MDEV-30940: Revert "binlog.innodb_rc_insert_before_delete is disabled with MDEV-30490" 2023-01-30 21:28:21 +01:00