mariadb/storage/innobase/fsp
Kristian Nielsen 5335c85a47 Binlog-in-engine: Fix incorrect handling of internal 2pc rollback
The error handling for internal 2pc transactions (eg. RocksDB/Spider) would
incorrectly try to handle the engine binlog_unlog() during rollback, in
binlog_post_rollback(); this should instead be handled solely in
log_and_order() and unlog(). This could trigger for example in parallel
replication error handling, causing assertions when wrongly entering XA code
paths.

Also fix a couple bugs found during debug:

 - Don't send format description even to the slave from before the starting
   GTID position, as that can cause the slave to wrongly drop temporary
   tables.

 - When looking up the initial GTID position for a new dump thread, wait for
   the necessary part of the binlog to become durable before reading it.

 - Don't error when searching the initial GTID position if reaching EOF of
   the durable portion, instead search back to an earlier GTID state record.

 - A rare race in the test framework that could fail to kill off lingering
   dump threads before RESET MASTER.

Signed-off-by: Kristian Nielsen <knielsen@knielsen-hq.org>
2026-04-08 12:34:24 +02:00
..
fsp0file.cc MDEV-35431: fix InnoDB flags error size specifier 2025-01-12 13:56:06 +11:00
fsp0fsp.cc Binlog-in-engine: Fixes for some review comments 2026-04-08 12:24:15 +02:00
fsp0space.cc Merge 10.6 into 10.11 2025-11-11 10:29:45 +02:00
fsp0sysspace.cc Merge 10.11 into 11.4 2025-11-11 10:34:33 +02:00
fsp_binlog.cc Binlog-in-engine: Fix incorrect handling of internal 2pc rollback 2026-04-08 12:34:24 +02:00