mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-06-11 04:51:09 +00:00
Add cli param to limit database cache size (#1261)
* Add cli param to limit datbase cache size * fixing tests
This commit is contained in:
committed by
GitHub
parent
8606595a6d
commit
bd2a206e40
@@ -228,7 +228,10 @@ where
|
||||
.into();
|
||||
|
||||
config.database_path = db_path(&base_path, config.chain_spec.id()).to_string_lossy().into();
|
||||
|
||||
config.database_cache_size = match matches.value_of("database_cache_size") {
|
||||
Some(s) => Some(s.parse().map_err(|_| "Invalid Database Cache size specified")?),
|
||||
_=> None
|
||||
};
|
||||
config.pruning = match matches.value_of("pruning") {
|
||||
Some("archive") => PruningMode::ArchiveAll,
|
||||
None => PruningMode::default(),
|
||||
|
||||
@@ -45,6 +45,10 @@ pub struct CoreParams {
|
||||
#[structopt(long = "light")]
|
||||
light: bool,
|
||||
|
||||
/// Limit the memory the database cache can use
|
||||
#[structopt(long = "db-cache", value_name = "MiB")]
|
||||
database_cache_size: Option<u32>,
|
||||
|
||||
/// Listen on this multiaddress
|
||||
#[structopt(long = "listen-addr", value_name = "LISTEN_ADDR")]
|
||||
listen_addr: Vec<String>,
|
||||
|
||||
@@ -415,7 +415,7 @@ impl<Factory: ServiceFactory> Components for FullComponents<Factory> {
|
||||
), error::Error>
|
||||
{
|
||||
let db_settings = client_db::DatabaseSettings {
|
||||
cache_size: None,
|
||||
cache_size: config.database_cache_size.map(|u| u as usize),
|
||||
path: config.database_path.as_str().into(),
|
||||
pruning: config.pruning.clone(),
|
||||
};
|
||||
|
||||
@@ -45,6 +45,8 @@ pub struct Configuration<C, G: Serialize + DeserializeOwned + BuildStorage> {
|
||||
pub keystore_path: String,
|
||||
/// Path to the database.
|
||||
pub database_path: String,
|
||||
/// Cache Size for internal database in MiB
|
||||
pub database_cache_size: Option<u32>,
|
||||
/// Pruning settings.
|
||||
pub pruning: PruningMode,
|
||||
/// Additional key seeds.
|
||||
@@ -81,6 +83,7 @@ impl<C: Default, G: Serialize + DeserializeOwned + BuildStorage> Configuration<C
|
||||
network: Default::default(),
|
||||
keystore_path: Default::default(),
|
||||
database_path: Default::default(),
|
||||
database_cache_size: Default::default(),
|
||||
keys: Default::default(),
|
||||
custom: Default::default(),
|
||||
pruning: PruningMode::default(),
|
||||
|
||||
@@ -123,6 +123,7 @@ fn node_config<F: ServiceFactory> (
|
||||
network: network_config,
|
||||
keystore_path: root.join("key").to_str().unwrap().into(),
|
||||
database_path: root.join("db").to_str().unwrap().into(),
|
||||
database_cache_size: None,
|
||||
pruning: Default::default(),
|
||||
keys: keys,
|
||||
chain_spec: (*spec).clone(),
|
||||
|
||||
Reference in New Issue
Block a user