From 3dff5a9f3f8825e859f807a916766bbb4357dfa4 Mon Sep 17 00:00:00 2001 From: Robert Habermeier Date: Sun, 5 Jun 2016 22:14:25 +0200 Subject: [PATCH] add early exit for pruned blocks --- ethcore/src/client/client.rs | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/ethcore/src/client/client.rs b/ethcore/src/client/client.rs index 65cb13e4c..008ca7860 100644 --- a/ethcore/src/client/client.rs +++ b/ethcore/src/client/client.rs @@ -379,6 +379,11 @@ impl Client where V: Verifier { self.block_header(id).and_then(|header| { let db = self.state_db.lock().unwrap().boxed_clone(); + // early exit for pruned blocks + if db.is_pruned() && self.chain.best_block_number() >= block_number + HISTORY { + return None; + } + // TODO [rob]: refactor State::from_existing so we avoid doing redundant lookups. if !db.contains(&root) { return None;