diff --git a/lbry/wallet/server/daemon.py b/lbry/wallet/server/daemon.py index 654b4337e..c6f4db3d2 100644 --- a/lbry/wallet/server/daemon.py +++ b/lbry/wallet/server/daemon.py @@ -55,7 +55,7 @@ class Daemon: self.available_rpcs = {} self.connector = aiohttp.TCPConnector() self._block_hash_cache = LRUCache(100000) - self._block_cache = LRUCache(10000) + self._block_cache = LRUCache(2**16, metric_name='block', namespace=NAMESPACE) async def close(self): if self.connector: @@ -249,8 +249,10 @@ class Daemon: async def deserialised_block(self, hex_hash): """Return the deserialised block with the given hex hash.""" - if not self._block_cache.get(hex_hash): - self._block_cache[hex_hash] = await self._send_single('getblock', (hex_hash, True)) + if hex_hash not in self._block_cache: + block = await self._send_single('getblock', (hex_hash, True)) + self._block_cache[hex_hash] = block + return block return self._block_cache[hex_hash] async def raw_blocks(self, hex_hashes):