Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix update bug in ets_lru #4837

Merged
merged 1 commit into from
Nov 9, 2023
Merged

Fix update bug in ets_lru #4837

merged 1 commit into from
Nov 9, 2023

Conversation

nickva
Copy link
Contributor

@nickva nickva commented Nov 9, 2023

Previously, when an existing cache entry was updated, we didn't update the atime. Subsequently, when the entry was removed, we never cleaned the orphan atime entry. During trimming, we traverse the atime entries, and since the orphaned one didn't have any matching objects or ctime entries, the ets_lru cache would crash, possibly taking down the primary couch supervisor.

Previously, when an existing cache entry was updated, we didn't update the
atime. Subsequently, when the entry was removed, we never cleaned the orphan
atime entry. During trimming, we traverse the atime entries, and since the
orphaned one didn't have any matching objects or ctime entries, the ets_lru
cache would crash, possibly taking down the primary couch supervisor.
Copy link
Member

@rnewson rnewson left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

amazing this was only noticed now. +1

@nickva nickva merged commit 5a21bb2 into main Nov 9, 2023
14 checks passed
@nickva nickva deleted the fix-bug-in-ets-lru-insert branch November 9, 2023 19:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants