Draft
Conversation
2657892 to
760415b
Compare
760415b to
ec9beb1
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
This PR fixes flaky cache eviction behavior in the DeviceDetectorCache plugin.
When cached device detector entries are reused, their access time is now refreshed before eviction decisions are made. This makes cache cleanup behave like an LRU-style policy and prevents recently used cache files from being deleted unexpectedly.
Changes
Why
WarmDeviceDetectorCacheTest::testDoesClearExistingFilesFromCacheByDefaultWhenTooManyEntriesExistwas flaky because reading a cached entry did not update its file access time. As a result, cleanup could delete an entry that had just been reused.Testing
WarmDeviceDetectorCacheTestto assert the recently accessed cache entry is preserved.Checklist