mirror of
https://github.com/sigp/lighthouse.git
synced 2026-03-02 16:21:42 +00:00
Store blobs in separate freezer or historical state freezer
This commit is contained in:
@@ -103,6 +103,11 @@ pub fn cli_app<'a, 'b>() -> App<'a, 'b> {
|
||||
)
|
||||
.takes_value(true)
|
||||
.default_value("0"),
|
||||
Arg::with_name("blobs-freezer-dir")
|
||||
.long("blobs-freezer-dir")
|
||||
.value_name("DIR")
|
||||
.help("Data directory for the blobs freezer database.")
|
||||
.takes_value(true),
|
||||
)
|
||||
.subcommand(migrate_cli_app())
|
||||
.subcommand(version_cli_app())
|
||||
@@ -123,6 +128,10 @@ fn parse_client_config<E: EthSpec>(
|
||||
client_config.freezer_db_path = Some(freezer_dir);
|
||||
}
|
||||
|
||||
if let Some(blobs_freezer_dir) = clap_utils::parse_optional(cli_args, "blobs-freezer-dir")? {
|
||||
client_config.blobs_freezer_db_path = Some(blobs_freezer_dir);
|
||||
}
|
||||
|
||||
let (sprp, sprp_explicit) = get_slots_per_restore_point::<E>(cli_args)?;
|
||||
client_config.store.slots_per_restore_point = sprp;
|
||||
client_config.store.slots_per_restore_point_set_explicitly = sprp_explicit;
|
||||
@@ -144,11 +153,13 @@ pub fn display_db_version<E: EthSpec>(
|
||||
let spec = runtime_context.eth2_config.spec.clone();
|
||||
let hot_path = client_config.get_db_path();
|
||||
let cold_path = client_config.get_freezer_db_path();
|
||||
let cold_blobs_path = client_config.get_blobs_freezer_db_path();
|
||||
|
||||
let mut version = CURRENT_SCHEMA_VERSION;
|
||||
HotColdDB::<E, LevelDB<E>, LevelDB<E>>::open(
|
||||
&hot_path,
|
||||
&cold_path,
|
||||
&cold_blobs_path,
|
||||
|_, from, _| {
|
||||
version = from;
|
||||
Ok(())
|
||||
@@ -200,10 +211,12 @@ pub fn inspect_db<E: EthSpec>(
|
||||
let spec = runtime_context.eth2_config.spec.clone();
|
||||
let hot_path = client_config.get_db_path();
|
||||
let cold_path = client_config.get_freezer_db_path();
|
||||
let cold_blobs_path = client_config.get_blobs_freezer_db_path();
|
||||
|
||||
let db = HotColdDB::<E, LevelDB<E>, LevelDB<E>>::open(
|
||||
&hot_path,
|
||||
&cold_path,
|
||||
&cold_blobs_path,
|
||||
|_, _, _| Ok(()),
|
||||
client_config.store,
|
||||
spec,
|
||||
@@ -254,12 +267,14 @@ pub fn migrate_db<E: EthSpec>(
|
||||
let spec = &runtime_context.eth2_config.spec;
|
||||
let hot_path = client_config.get_db_path();
|
||||
let cold_path = client_config.get_freezer_db_path();
|
||||
let cold_blobs_path = client_config.get_blobs_freezer_db_path();
|
||||
|
||||
let mut from = CURRENT_SCHEMA_VERSION;
|
||||
let to = migrate_config.to;
|
||||
let db = HotColdDB::<E, LevelDB<E>, LevelDB<E>>::open(
|
||||
&hot_path,
|
||||
&cold_path,
|
||||
&cold_blobs_path,
|
||||
|_, db_initial_version, _| {
|
||||
from = db_initial_version;
|
||||
Ok(())
|
||||
@@ -294,10 +309,12 @@ pub fn prune_payloads<E: EthSpec>(
|
||||
let spec = &runtime_context.eth2_config.spec;
|
||||
let hot_path = client_config.get_db_path();
|
||||
let cold_path = client_config.get_freezer_db_path();
|
||||
let cold_blobs_path = client_config.get_blobs_freezer_db_path();
|
||||
|
||||
let db = HotColdDB::<E, LevelDB<E>, LevelDB<E>>::open(
|
||||
&hot_path,
|
||||
&cold_path,
|
||||
&cold_blobs_path,
|
||||
|_, _, _| Ok(()),
|
||||
client_config.store,
|
||||
spec.clone(),
|
||||
|
||||
Reference in New Issue
Block a user