1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-29 05:21:33 +03:00

MDEV-31355 innodb_undo_log_truncate=ON fails to wait for purge of enough transaction history

purge_sys_t::sees(): Wrapper for view.sees().

trx_purge_truncate_history(): Invoke purge_sys.sees() instead of
comparing to head.trx_no, to determine if undo pages can be safely freed.

The test innodb.cursor-restore-locking was adjusted by Vladislav Lesin,
as was the the debug instrumentation in row_purge_del_mark().

Reviewed by: Vladislav Lesin
This commit is contained in:
Marko Mäkelä
2023-06-08 09:17:52 +03:00
parent 609b4e997a
commit 3e40f9a7f3
14 changed files with 68 additions and 37 deletions

View File

@ -391,11 +391,12 @@ connection stop_purge;
COMMIT;
disconnect stop_purge;
connection default;
InnoDB 0 transactions not purged
InnoDB 1 transactions not purged
SET DEBUG_SYNC='now SIGNAL s2';
connection dml;
disconnect dml;
connection default;
InnoDB 0 transactions not purged
SET DEBUG_SYNC=RESET;
DROP TABLE t1;
# End of 10.3 tests