VladRodionov opened a new pull request, #8697:
URL: https://github.com/apache/hbase/pull/8697
## Summary
Adds cache access notification support to the CacheEngine/topology
architecture.
This allows a topology to be notified when a block is successfully accessed
from a particular
cache engine and to react to the access when topology-specific behavior is
required.
The initial use case is inclusive tiered caching, where an L1 hit can be
propagated to L2 via
`touch(...)` so that L2 can update its own access metadata without
performing another block lookup.
## Changes
* Add `CacheEngine.touch(BlockCacheKey)` as an optional no-op operation.
* Add `CacheTopology.handleAccess(BlockCacheKey, CacheEngine)` as an
optional topology hook.
* Notify the topology after a successful cache lookup.
* Implement access propagation for `TieredInclusiveTopology`:
* an L1 hit calls `touch(...)` on L2;
* L2 hits require no additional action.
* Add/update tests covering access notifications and inclusive topology
behavior.
## Notes
`touch(...)` is intentionally a default no-op so cache engines which do not
require explicit
access notification do not need to implement it.
The notification is topology-driven rather than embedded in
`CacheAccessService`, allowing
different topologies to define their own access semantics.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]