-
Type:
Build Failure
-
Resolution: Unresolved
-
Priority:
Critical - P2
-
None
-
Affects Version/s: None
-
Component/s: Cache and Eviction
-
None
-
Storage Engines, Storage Engines - Transactions
-
SE Transactions - 2025-11-07
-
1
There is an issue in the change of WT-15711 that the dirty byte are not increased except for a corner case causing wrong stats for the dirty cache size.
size = 0;
if (WT_UNLIKELY(!WT_PAGE_IS_INTERNAL(page) &&
__wt_atomic_load_uint64_relaxed(&S2C(session)->cache->pages_dirty_leaf) < 10 &&
(WT_IS_METADATA(session->dhandle) || WT_IS_DISAGG_META(session->dhandle) ||
WT_IS_HS(session->dhandle)))) {
increase_dirty_size_first = true;
size = __wt_atomic_load_size_relaxed(&page->memory_footprint);
__wt_cache_dirty_incr_size(session, size, false);
} else
increase_dirty_size_first = false;
size should always be initialized to memory_footprint instead of 0. Otherwise, we will increase 0 to the dirty cache.