Details
-
Bug
-
Status: Closed (View Workflow)
-
Major
-
Resolution: Fixed
-
10.6.9, 10.9.2, 10.6, 10.7(EOL), 10.8(EOL), 10.9(EOL), 10.10(EOL), 10.11, 11.0(EOL)
-
None
Description
InnoDB should set the XDES_FREE_BIT of the page before checking whether the
current extent is free.
if (!xdes_get_n_used(descr)) {
|
/* The extent has become free: move it to another list */
|
err = flst_remove(header, FSP_HEADER_OFFSET + FSP_FREE_FRAG,
|
xdes, xoffset, mtr);
|
if (UNIV_UNLIKELY(err != DB_SUCCESS)) {
|
return err;
|
}
|
err = fsp_free_extent(space, offset, mtr);
|
if (UNIV_UNLIKELY(err != DB_SUCCESS)) {
|
return err;
|
}
|
}
|
|
mtr->free(*space, static_cast<uint32_t>(offset));
|
xdes_set_free<true>(*xdes, descr, offset % FSP_EXTENT_SIZE, mtr);
|
This issue was caused in 10.6 by the following patch:
commit 0b47c126e31cddda1e94588799599e138400bcf8
|
Author: Marko Mäkelä <marko.makela@mariadb.com>
|
Date: Mon Jun 6 14:03:22 2022 +0300
|
|
MDEV-13542: Crashing on corrupted page is unhelpful
|
Attachments
Issue Links
- is caused by
-
MDEV-13542 Crashing on a corrupted page is unhelpful
- Closed