diff --git a/storage/blockchain/src/service/read.rs b/storage/blockchain/src/service/read.rs index 73b2d220..3a5dc842 100644 --- a/storage/blockchain/src/service/read.rs +++ b/storage/blockchain/src/service/read.rs @@ -231,12 +231,14 @@ fn find_block(env: &ConcreteEnv, block_hash: BlockHash) -> ResponseResult { let table_alt_block_heights = env_inner.open_db_ro::(&tx_ro)?; - let height = table_alt_block_heights.get(&block_hash)?; - - Ok(BlockchainResponse::FindBlock(Some(( - Chain::Alt(height.chain_id.into()), - height.height, - )))) + match table_alt_block_heights.get(&block_hash) { + Ok(height) => Ok(BlockchainResponse::FindBlock(Some(( + Chain::Alt(height.chain_id.into()), + height.height, + )))), + Err(RuntimeError::KeyNotFound) => Ok(BlockchainResponse::FindBlock(None)), + Err(e) => Err(e), + } } /// [`BlockchainReadRequest::FilterUnknownHashes`].