Skip to content

Commit f0f47cb

Browse files
committed
MDEV-26017 fixup
buf_flush_relocate_on_flush_list(): Use dpage->physical_size() because bpage->zip.ssize may already have been zeroed in page_zip_set_size() invoked by buf_pool_t::realloc(). This would cause occasional failures of the test innodb.innodb_buffer_pool_resize, which creates a ROW_FORMAT=COMPRESSED table.
1 parent bd5a640 commit f0f47cb

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

storage/innobase/buf/buf0flu.cc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -302,7 +302,7 @@ buf_flush_relocate_on_flush_list(
302302
/* FIXME: Can we avoid holding buf_pool.mutex here? */
303303
ut_ad(dpage->oldest_modification() == lsn);
304304

305-
if (const lsn_t o_lsn = bpage->oldest_modification()) {
305+
if (ut_d(const lsn_t o_lsn =) bpage->oldest_modification()) {
306306
ut_ad(o_lsn == lsn);
307307

308308
/* Important that we adjust the hazard pointer before removing
@@ -321,7 +321,7 @@ buf_flush_relocate_on_flush_list(
321321
}
322322

323323
if (lsn == 1) {
324-
buf_pool.stat.flush_list_bytes -= bpage->physical_size();
324+
buf_pool.stat.flush_list_bytes -= dpage->physical_size();
325325
was_clean:
326326
dpage->list.prev = nullptr;
327327
dpage->list.next = nullptr;

0 commit comments

Comments
 (0)