mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
MDEV-22970 Possible corruption of page_compressed tables, or
when scrubbing is enabled buf_read_recv_pages(): Ignore the page to read if it is already present in the freed ranges. store_freed_or_init_rec(): Store the ranges only if scrubbing is enabled or page compressed tablespace. recv_init_crash_recovery_space(): Add the freed range only when scrubbing or page compressed tablespace. range_set::contains(): Search the value is present in ranges. range_set::remove_if_exists(): Remove the value if exist in ranges. mtr_t::init(): Handles the scenario that mini-transaction may allocate a page that had just been freed. recv_sys_t::parse(): Note down the FREE and INIT redo log irrespective of STORE value. Removed innodb_tablespaces_scrubbing from test case
This commit is contained in:
@ -59,9 +59,7 @@
|
||||
--loose-innodb_sys_datafiles
|
||||
--loose-innodb_changed_pages
|
||||
--loose-innodb_tablespaces_encryption
|
||||
--loose-innodb_tablespaces_scrubbing
|
||||
--loose-innodb_mutexes
|
||||
--loose-innodb_sys_semaphore_waits
|
||||
--loose-innodb_tablespaces_scrubbing
|
||||
--loose-innodb_mutexes
|
||||
--loose-innodb_sys_semaphore_waits
|
||||
|
Reference in New Issue
Block a user