From 80a4c70c4bbc3741ade021341b40fc4bd555f57c Mon Sep 17 00:00:00 2001 From: =?utf8?q?Bj=C3=B6rge=20Dijkstra?= Date: Wed, 27 Mar 2013 23:33:52 +0100 Subject: [PATCH] [perf] Fetch keys of mempool history maps outside of loop. --- backends/bitcoind/blockchain_processor.py | 11 +++++++---- 1 files changed, 7 insertions(+), 4 deletions(-) diff --git a/backends/bitcoind/blockchain_processor.py b/backends/bitcoind/blockchain_processor.py index 3f53dfb..398c110 100644 --- a/backends/bitcoind/blockchain_processor.py +++ b/backends/bitcoind/blockchain_processor.py @@ -736,8 +736,11 @@ class BlockchainProcessor(Processor): new_mempool_hist[addr] = h # invalidate cache for mempool addresses whose mempool history has changed - for addr in new_mempool_hist.keys(): - if addr in self.mempool_hist.keys(): + new_mempool_hist_keys = new_mempool_hist.keys() + self_mempool_hist_keys = self.mempool_hist.keys() + + for addr in new_mempool_hist_keys: + if addr in self_mempool_hist_keys: if self.mempool_hist[addr] != new_mempool_hist[addr]: self.invalidate_cache(addr) else: @@ -745,8 +748,8 @@ class BlockchainProcessor(Processor): # invalidate cache for addresses that are removed from mempool ? # this should not be necessary if they go into a block, but they might not - for addr in self.mempool_hist.keys(): - if addr not in new_mempool_hist.keys(): + for addr in self_mempool_hist_keys: + if addr not in new_mempool_hist_keys: self.invalidate_cache(addr) -- 1.7.1