Skip to content

HBase 30024 tiered exclusive topology#8475

Closed
VladRodionov wants to merge 8 commits into
apache:masterfrom
VladRodionov:HBASE-30024-tiered-exclusive-topology
Closed

HBase 30024 tiered exclusive topology#8475
VladRodionov wants to merge 8 commits into
apache:masterfrom
VladRodionov:HBASE-30024-tiered-exclusive-topology

Conversation

@VladRodionov

Copy link
Copy Markdown
Contributor

Summary

This PR adds a compatibility bridge from the existing BlockCache API to the new CacheEngine abstraction.

TieredExclusiveTopology and TopologyBackedCacheAccessService operate on CacheEngine instances, but the existing production cache implementations such as LruBlockCache, BucketCache, TinyLfuBlockCache, and LruAdaptiveBlockCache still implement BlockCache. BlockCacheBackedCacheEngine allows these legacy cache implementations to participate in topology-backed cache wiring before they are migrated to implement CacheEngine directly.

This is an incremental migration step. It does not change production cache wiring and does not remove or replace CombinedBlockCache.

Changes

  • Adds BlockCacheBackedCacheEngine, a CacheEngine adapter backed by an existing BlockCache.
  • Adds CacheEngines helper factory for creating CacheEngine instances from legacy BlockCache instances.
  • Adds unit tests for adapter delegation and null validation.
  • Adds tests proving that TopologyBackedCacheAccessService can operate through TieredExclusiveTopology using BlockCache-backed engines.

Migration path

The new cache architecture is moving toward:

CacheAccessService
  -> CacheTopology
      -> CacheEngine(s)

AI assistance disclosure

This PR was prepared with assistance from ChatGPT. All changes were reviewed, tested, and submitted by the author.

…che#8155)

Signed-off-by: Tak Lon (Stephen) Wu <taklwu@apache.org>
Signed-off-by: Wellington Chevreuil <wchevreuil@apache.org>
…e#8184)

Signed-off-by: Peter Somogyi <psomogyi@apache.org>
Signed-off-by: Tak Lon (Stephen) Wu <taklwu@apache.org>
Signed-off-by: Wellington Chevreuil <wchevreuil@apache.org>
Signed-off-by: Tak Lon (Stephen) Wu <taklwu@apache.org>
Reviewed by: Kota-SH <shanmukhaharipriya@gmail.com>
…ssService (apache#8279)

Signed-off-by: Wellington Chevreuil <wchevreuil@apache.org>
Signed-off-by: Tak Lon (Stephen) Wu <taklwu@apache.org>
Reviewed by: Kota-SH <shanmukhaharipriya@gmail.com>
…ation to use CacheAccessService (apache#8325)

Signed-off-by: Wellington Chevreuil <wchevreuil@apache.org>
Signed-off-by: Tak Lon (Stephen) Wu <taklwu@apache.org>
…che instances (apache#8359)

Signed-off-by: Tak Lon (Stephen) Wu <taklwu@apache.org>
…gable cache engines (apache#8384)

Signed-off-by: Andor Molnár <andor@apache.org>
Signed-off-by: Tak Lon (Stephen) Wu <taklwu@apache.org>
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.

1 participant