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

ASF GitHub Bot updated HBASE-30380:
-----------------------------------
    Labels: pull-request-available  (was: )

> Add configuration change propagation through CacheAccessService
> ---------------------------------------------------------------
>
>                 Key: HBASE-30380
>                 URL: https://issues.apache.org/jira/browse/HBASE-30380
>             Project: HBase
>          Issue Type: New Feature
>          Components: BlockCache
>            Reporter: Vladimir Rodionov
>            Assignee: Vladimir Rodionov
>            Priority: Major
>              Labels: pull-request-available
>             Fix For: 4.0.0-alpha-1
>
>
> {{CacheConfig}} currently implements {{PropagatingConfigurationObserver}} and 
> registers its legacy {{BlockCache}} instance as a child configuration 
> observer.
> With the new pluggable block cache architecture, {{CacheAccessService}} is 
> the primary cache abstraction and may be backed by native {{CacheEngine}} 
> implementations that do not expose a legacy {{{}BlockCache{}}}.
> As a result, configuration changes must be propagated through 
> {{CacheAccessService}} rather than through the legacy 
> {{{}BlockCache{}}}compatibility reference.
> This change should make {{CacheAccessService}} participate in the HBase 
> configuration propagation mechanism and ensure topology-backed services 
> forward configuration changes to their underlying cache engines.
>  * Make {{CacheAccessService}} participate in 
> {{{}PropagatingConfigurationObserver{}}}.
>  * Implement configuration propagation in 
> {{{}TopologyBackedCacheAccessService{}}}.
>  * Propagate configuration changes to all engines in the active 
> {{{}CacheTopology{}}}.
>  * Use the existing {{CacheEngine.onConfigurationChange(Configuration)}} hook.
>  * Update {{CacheConfig.registerChildren()}} / {{deregisterChildren()}} to 
> register {{cacheAccessService}} instead of {{{}blockCache{}}}.
>  * Keep legacy {{BlockCache}} behavior working through 
> {{{}BlockCacheBackedCacheEngine{}}}.
>  * Add tests for single-tier and tiered topologies.



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

Reply via email to