You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat: introduce and configure node with tiered KVStore
Introduces TierStore, a KVStore implementation that manages data
across three storage layers:
- Primary: Main/remote data store
- Ephemeral: Secondary store for non-critical, easily-rebuildable
data (e.g., network graph) with fast local access
- Backup: Tertiary store for disaster recovery with async/lazy
operations to avoid blocking primary store
Adds four configuration methods to NodeBuilder:
- set_tier_store_backup: Configure backup data store
- set_tier_store_ephemeral: Configure ephemeral data store
- set_tier_store_retry_config: Configure retry parameters with
exponential backoff
- build_with_tier_store: Build node with primary data store
These methods are exposed to the foreign interface via additions
in ffi/types.rs:
- ffi::SyncAndAsyncKVStore: Composed of KVStore and KVStoreSync
methods to handle the types::SyncAndAsyncKVStore supertrait
across FFI
- ffi::ForeignKVStoreAdapter and ffi::DynStore: Adapt/translate
between foreign language store and native Rust store
- Conditional compilation for DynStore: ffi::DynStore with uniffi,
types::DynStore without, with selection aided by the wrap_store!()
macro
0 commit comments