From 6c380e04a3bee3d04a17b9ae2913a55675c6e168 Mon Sep 17 00:00:00 2001 From: Ubuntu Date: Wed, 30 May 2018 14:17:04 +0000 Subject: [PATCH] fix --- multinode-demo/leader.sh | 4 +++- src/bin/fullnode.rs | 10 ++++++++-- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/multinode-demo/leader.sh b/multinode-demo/leader.sh index 65ece0c44..103cb862c 100755 --- a/multinode-demo/leader.sh +++ b/multinode-demo/leader.sh @@ -1,4 +1,6 @@ #!/bin/bash export RUST_LOG=solana=info sudo sysctl -w net.core.rmem_max=26214400 -cat genesis.log leader.log | cargo run --release --features cuda --bin solana-fullnode -- -s leader.json -l leader.json -b 8000 -d 2>&1 | tee leader-tee.log +rm leader.log +export RUST_BACKTRACE=1 +cat genesis.log leader.log | cargo run --features cuda --bin solana-fullnode -- -s leader.json -l leader.json -b 8000 -d 2>&1 | tee leader-tee.log diff --git a/src/bin/fullnode.rs b/src/bin/fullnode.rs index 8cf0dac0a..19a6b5c24 100644 --- a/src/bin/fullnode.rs +++ b/src/bin/fullnode.rs @@ -4,6 +4,8 @@ extern crate isatty; extern crate pnet; extern crate serde_json; extern crate solana; +#[macro_use] +extern crate log; use getopts::Options; use isatty::stdin_isatty; @@ -134,8 +136,12 @@ fn main() { let mut repl_data = make_repl_data(&bind_addr); if matches.opt_present("l") { let path = matches.opt_str("l").unwrap(); - if let Ok(file) = File::open(path) { - repl_data = serde_json::from_reader(file).expect("parse"); + if let Ok(file) = File::open(path.clone()) { + if let Ok(data) = serde_json::from_reader(file) { + repl_data = data; + } else { + warn!("failed to parse leader {}, generating new identity", path); + } } } let threads = if matches.opt_present("v") {