[ 
https://issues.apache.org/jira/browse/HBASE-30104?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Vladimir Rodionov updated HBASE-30104:
--------------------------------------
    Description: 
h2. Description

Refactor LruBlockCache to implement the new *CacheEngine* abstraction as part 
of the pluggable block cache architecture.

LruBlockCache is the current in-memory cache implementation for hot blocks and 
is a natural candidate for the first concrete CacheEngine migration because it 
primarily represents a storage backend rather than topology/orchestration logic.

h3. Scope

* Adapt LruBlockCache to implement CacheEngine
* Map existing LruBlockCache operations to the new engine contract, including:
** block lookup
** block insertion
** invalidation
** capacity/usage reporting
** stats exposure
* Preserve current local eviction behavior and memory management semantics
* Keep integration with existing higher-level cache wiring unchanged where 
possible

h3. Notes

* No behavior change intended
* LruBlockCache should preserve its current semantics for:
** in-memory caching
** eviction policy
** stats
** block lifecycle
* This ticket does *not* include topology changes
* This ticket does *not* include admission or placement policy changes
* This is a storage-layer refactoring and a step toward separating:
** CacheEngine (storage)
** CacheTopology (orchestration)
** CachePlacementPolicy (decisions)

  was:
h2. Description

Refactor LruBlockCache to implement the new *CacheEngine* abstraction as part 
of the pluggable block cache architecture.

LruBlockCache is the current in-memory cache implementation for hot blocks and 
is a natural candidate for the first concrete CacheEngine migration because it 
primarily represents a storage backend rather than topology/orchestration logic.

h2. Scope

* Adapt LruBlockCache to implement CacheEngine
* Map existing LruBlockCache operations to the new engine contract, including:
** block lookup
** block insertion
** invalidation
** capacity/usage reporting
** stats exposure
* Preserve current local eviction behavior and memory management semantics
* Keep integration with existing higher-level cache wiring unchanged where 
possible

h2. Notes

* No behavior change intended
* LruBlockCache should preserve its current semantics for:
** in-memory caching
** eviction policy
** stats
** block lifecycle
* This ticket does *not* include topology changes
* This ticket does *not* include admission or placement policy changes
* This is a storage-layer refactoring and a step toward separating:
** CacheEngine (storage)
** CacheTopology (orchestration)
** CachePlacementPolicy (decisions)


> Refactor LruBlockCache to implement CacheEngine
> -----------------------------------------------
>
>                 Key: HBASE-30104
>                 URL: https://issues.apache.org/jira/browse/HBASE-30104
>             Project: HBase
>          Issue Type: New Feature
>          Components: BlockCache
>            Reporter: Vladimir Rodionov
>            Assignee: Vladimir Rodionov
>            Priority: Major
>
> h2. Description
> Refactor LruBlockCache to implement the new *CacheEngine* abstraction as part 
> of the pluggable block cache architecture.
> LruBlockCache is the current in-memory cache implementation for hot blocks 
> and is a natural candidate for the first concrete CacheEngine migration 
> because it primarily represents a storage backend rather than 
> topology/orchestration logic.
> h3. Scope
> * Adapt LruBlockCache to implement CacheEngine
> * Map existing LruBlockCache operations to the new engine contract, including:
> ** block lookup
> ** block insertion
> ** invalidation
> ** capacity/usage reporting
> ** stats exposure
> * Preserve current local eviction behavior and memory management semantics
> * Keep integration with existing higher-level cache wiring unchanged where 
> possible
> h3. Notes
> * No behavior change intended
> * LruBlockCache should preserve its current semantics for:
> ** in-memory caching
> ** eviction policy
> ** stats
> ** block lifecycle
> * This ticket does *not* include topology changes
> * This ticket does *not* include admission or placement policy changes
> * This is a storage-layer refactoring and a step toward separating:
> ** CacheEngine (storage)
> ** CacheTopology (orchestration)
> ** CachePlacementPolicy (decisions)



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to