Increase attestation seen cache exp time to two epochs #14156
Merged
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.
h/t to @nerolation for discovering this
We updated the expired helper to work with the Deneb boundary, which now considers the current and previous epochs. The expired helper will only return true if the attestation is older than the previous epoch. Additionally, there is a seen cache that tracks attestations the node has observed using a bitfield. This seen cache operates on a time-based expiration system, expiring entries after 32 slots. However, it has not been updated to align with Deneb behavior. As a result, the seen cache and expired helper do not align perfectly. An old attestation can remain in the pool for over 32 slots and will not be pruned until it is older than the previous epoch. This PR updates seen cache to respect expire boundary