mirror of
https://github.com/romanz/electrs.git
synced 2025-02-24 06:57:53 +01:00
Allow single-sync invocation using --sync-once commandline flag
This commit is contained in:
parent
269e756383
commit
f5df00f631
3 changed files with 9 additions and 1 deletions
|
@ -85,6 +85,10 @@ default = "10"
|
||||||
name = "ignore_mempool"
|
name = "ignore_mempool"
|
||||||
doc = "Don't sync mempool - queries will show only confirmed transactions."
|
doc = "Don't sync mempool - queries will show only confirmed transactions."
|
||||||
|
|
||||||
|
[[switch]]
|
||||||
|
name = "sync_once"
|
||||||
|
doc = "Exit after the initial sync is over (don't start Electrum server)."
|
||||||
|
|
||||||
[[param]]
|
[[param]]
|
||||||
name = "index_lookup_limit"
|
name = "index_lookup_limit"
|
||||||
type = "usize"
|
type = "usize"
|
||||||
|
|
|
@ -9,7 +9,9 @@ fn main() -> Result<()> {
|
||||||
tracker
|
tracker
|
||||||
.sync(&Daemon::connect(&config)?)
|
.sync(&Daemon::connect(&config)?)
|
||||||
.context("initial sync failed")?;
|
.context("initial sync failed")?;
|
||||||
|
if config.sync_once {
|
||||||
|
return Ok(());
|
||||||
|
}
|
||||||
// re-connect after initial sync (due to possible timeout during compaction)
|
// re-connect after initial sync (due to possible timeout during compaction)
|
||||||
server::run(&config, Rpc::new(&config, tracker)?).context("server failed")
|
server::run(&config, Rpc::new(&config, tracker)?).context("server failed")
|
||||||
}
|
}
|
||||||
|
|
|
@ -133,6 +133,7 @@ pub struct Config {
|
||||||
pub index_batch_size: usize,
|
pub index_batch_size: usize,
|
||||||
pub index_lookup_limit: Option<usize>,
|
pub index_lookup_limit: Option<usize>,
|
||||||
pub ignore_mempool: bool,
|
pub ignore_mempool: bool,
|
||||||
|
pub sync_once: bool,
|
||||||
pub server_banner: String,
|
pub server_banner: String,
|
||||||
pub args: Vec<String>,
|
pub args: Vec<String>,
|
||||||
}
|
}
|
||||||
|
@ -294,6 +295,7 @@ impl Config {
|
||||||
index_batch_size: config.index_batch_size,
|
index_batch_size: config.index_batch_size,
|
||||||
index_lookup_limit,
|
index_lookup_limit,
|
||||||
ignore_mempool: config.ignore_mempool,
|
ignore_mempool: config.ignore_mempool,
|
||||||
|
sync_once: config.sync_once,
|
||||||
server_banner: config.server_banner,
|
server_banner: config.server_banner,
|
||||||
args: args.map(|a| a.into_string().unwrap()).collect(),
|
args: args.map(|a| a.into_string().unwrap()).collect(),
|
||||||
};
|
};
|
||||||
|
|
Loading…
Add table
Reference in a new issue