diff --git a/node/src/service.rs b/node/src/service.rs index b64b952d2bb4713eca39e2720100c3ba08ead91b..fb14fb678a0179ed9744e9f03cda45ec8942059e 100644 --- a/node/src/service.rs +++ b/node/src/service.rs @@ -503,15 +503,8 @@ where FullBackend, >( &*client, parent, distance_dir, &babe_owner_keys.clone() - ); - // provides fallback when distance inherent data provider crashes - let distance = match distance { - Ok(distance) => distance, - Err(e) => { - log::warn!("{:?}", e); - sp_distance::InherentDataProvider::new(None) - } - }; + )?; + // in case of manual sealing, the distance is forced to succeed Ok((timestamp, babe, distance)) } }, @@ -557,7 +550,17 @@ where FullBackend, >( &*client, parent, distance_dir, &babe_owner_keys.clone() - )?; + ); + + // provides fallback when distance inherent data provider crashes + // (only when sealing is not manual) + let distance = match distance { + Ok(distance) => distance, + Err(e) => { + log::warn!("{:?}", e); + sp_distance::InherentDataProvider::new(None) + } + }; Ok((slot, timestamp, storage_proof, distance)) }