pub trait ExecutionCacheReconfigAPI: Send + Sync {
// Required methods
fn insert_genesis_object(&self, object: Object);
fn bulk_insert_genesis_objects(&self, objects: &[Object]);
fn revert_state_update(&self, digest: &TransactionDigest);
fn set_epoch_start_configuration(
&self,
epoch_start_config: &EpochStartConfiguration,
);
fn update_epoch_flags_metrics(&self, old: &[EpochFlag], new: &[EpochFlag]);
fn clear_state_end_of_epoch(
&self,
execution_guard: &RwLockWriteGuard<'_, EpochId>,
);
fn expensive_check_sui_conservation(
&self,
old_epoch_store: &AuthorityPerEpochStore,
) -> SuiResult;
fn checkpoint_db(&self, path: &Path) -> SuiResult;
fn maybe_reaccumulate_state_hash(
&self,
cur_epoch_store: &AuthorityPerEpochStore,
new_protocol_version: ProtocolVersion,
);
fn reconfigure_cache<'a>(
&'a self,
epoch_start_config: &'a EpochStartConfiguration,
) -> BoxFuture<'a, ()>;
}
Required Methods§
fn insert_genesis_object(&self, object: Object)
fn bulk_insert_genesis_objects(&self, objects: &[Object])
fn revert_state_update(&self, digest: &TransactionDigest)
fn set_epoch_start_configuration( &self, epoch_start_config: &EpochStartConfiguration, )
fn update_epoch_flags_metrics(&self, old: &[EpochFlag], new: &[EpochFlag])
fn clear_state_end_of_epoch( &self, execution_guard: &RwLockWriteGuard<'_, EpochId>, )
fn expensive_check_sui_conservation( &self, old_epoch_store: &AuthorityPerEpochStore, ) -> SuiResult
fn checkpoint_db(&self, path: &Path) -> SuiResult
Sourcefn maybe_reaccumulate_state_hash(
&self,
cur_epoch_store: &AuthorityPerEpochStore,
new_protocol_version: ProtocolVersion,
)
fn maybe_reaccumulate_state_hash( &self, cur_epoch_store: &AuthorityPerEpochStore, new_protocol_version: ProtocolVersion, )
This is a temporary method to be used when we enable simplified_unwrap_then_delete. It re-accumulates state hash for the new epoch if simplified_unwrap_then_delete is enabled.
Sourcefn reconfigure_cache<'a>(
&'a self,
epoch_start_config: &'a EpochStartConfiguration,
) -> BoxFuture<'a, ()>
fn reconfigure_cache<'a>( &'a self, epoch_start_config: &'a EpochStartConfiguration, ) -> BoxFuture<'a, ()>
Reconfigure the cache itself. TODO: this is only needed for ProxyCache to switch between cache impls. It can be removed once WritebackCache is the sole cache impl.