cache dump sometimes reports nonsense values with "stale (will be retained for %u more seconds)"
Several customers have reported this issue, but the cause had been completely baffling.
; stale (will be retained for 4294362497 more seconds)
While reviewing the relevant areas of the code for other issues, I realized that the decision about whether or not to report the record as stale, and report how long it will be retained for (as modified by the recorded stale intervals), is based solely on the
STALE flag in the header.
This is an accurate decision, but I wonder if this might lead to odd results if the record expiration is actually in the future because it has been forcibly expired due to the cache being overmem.
I've also wondered if there might be some incorrect reporting if/when the max-stale-ttl is changed after data has been added to the cache.
I will investigate both of these issues further using customer data I already have on hand, but I won't complain if it is fixed before I get to it.