diff --git a/applications/tari_validator_node/src/main.rs b/applications/tari_validator_node/src/main.rs index 6ac845e2e28..c51c2084bb3 100644 --- a/applications/tari_validator_node/src/main.rs +++ b/applications/tari_validator_node/src/main.rs @@ -99,6 +99,7 @@ async fn run_node(config: GlobalConfig, create_id: bool) -> Result<(), ExitCodes )?; let db_factory = SqliteDbFactory::new(&config); let mempool_service = MempoolServiceHandle::default(); + info!( target: LOG_TARGET, "Node starting with pub key: {}, node_id: {}", @@ -133,6 +134,8 @@ async fn run_node(config: GlobalConfig, create_id: bool) -> Result<(), ExitCodes let grpc_addr = SocketAddr::new(IpAddr::V4(Ipv4Addr::new(0, 0, 0, 0)), 18144); task::spawn(run_grpc(grpc_server, grpc_addr, shutdown.to_signal())); + println!("🚀 Validator node started!"); + println!("{}", node_identity); run_dan_node( shutdown.to_signal(), config, diff --git a/comms/src/peer_manager/node_identity.rs b/comms/src/peer_manager/node_identity.rs index b319326b635..2b39ce70852 100644 --- a/comms/src/peer_manager/node_identity.rs +++ b/comms/src/peer_manager/node_identity.rs @@ -112,10 +112,19 @@ impl NodeIdentity { acquire_read_lock!(self.public_address).clone() } - /// Modify the public address. The account signature will be invalid + /// Modify the public address. pub fn set_public_address(&self, address: Multiaddr) { - *acquire_write_lock!(self.public_address) = address; - self.sign() + let mut must_sign = false; + { + let mut lock = acquire_write_lock!(self.public_address); + if *lock != address { + *lock = address; + must_sign = true; + } + } + if must_sign { + self.sign() + } } /// This returns a random NodeIdentity for testing purposes. This function can panic. If public_address