summaryrefslogtreecommitdiff
path: root/sql/item_subselect.cc
diff options
context:
space:
mode:
authorMarko Mäkelä <marko.makela@mariadb.com>2022-04-21 14:09:23 +0300
committerMarko Mäkelä <marko.makela@mariadb.com>2022-04-21 14:09:23 +0300
commitfdec842fd7f82b6ed9aec54f82ac50b5eea925b3 (patch)
tree71bc5b6b1480955c1c21a1eb004aeafb2cb3b09a /sql/item_subselect.cc
parent580cbd18b38b1104da49b6eb4f1c10954d6ae183 (diff)
downloadmariadb-git-fdec842fd7f82b6ed9aec54f82ac50b5eea925b3.tar.gz
MDEV-28371 Assertion fold == id.fold() failed in buf_flush_check_neighbor()
Due to 32-bit arithmetics, SRV_TMP_SPACE_ID page number 0x200002 would be folded to 0, which is incompatible with the assumption that was made in commit 7cffb5f6e8a231a041152447be8980ce35d2c9b8 (MDEV-23399). page_id_t::fold(): Compute in the native word width instead of uint32_t. On 64-bit platforms, an alternative would be to return the 64-bit m_id directly, but that was measured to cause a performance regression. fil_space_t::open(): Invoke fil_node_t::find_metadata() when the tablespace is being created. In this way, we will actually detect that the temporary tablespace resides on SSD. (During database creation, also the system tablespace will correctly be detected as residing on SSD.)
Diffstat (limited to 'sql/item_subselect.cc')
0 files changed, 0 insertions, 0 deletions