From 2893f1eb9ea333db224e76e0e05008d55650d4f7 Mon Sep 17 00:00:00 2001 From: Victor Shyba Date: Mon, 23 Mar 2020 12:36:05 -0300 Subject: [PATCH] add other taskgroup for non-start-important tasks --- lbry/wallet/ledger.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/lbry/wallet/ledger.py b/lbry/wallet/ledger.py index 8aa384f10..ebdfc7612 100644 --- a/lbry/wallet/ledger.py +++ b/lbry/wallet/ledger.py @@ -154,6 +154,7 @@ class Ledger(metaclass=LedgerRegistry): self._tx_cache = pylru.lrucache(100000) self._update_tasks = TaskGroup() + self._other_tasks = TaskGroup() # that we dont need to start self._utxo_reservation_lock = asyncio.Lock() self._header_processing_lock = asyncio.Lock() self._address_update_locks: DefaultDict[str, asyncio.Lock] = defaultdict(asyncio.Lock) @@ -335,7 +336,9 @@ class Ledger(metaclass=LedgerRegistry): async def stop(self): self._update_tasks.cancel() + self._other_tasks.cancel() await self._update_tasks.done.wait() + await self._other_tasks.done.wait() await self.network.stop() await self.db.close() await self.headers.close() @@ -352,7 +355,7 @@ class Ledger(metaclass=LedgerRegistry): async with self._header_processing_lock: for height in reversed(sorted(self.headers.known_missing_checkpointed_chunks)): await self.headers.ensure_chunk_at(height) - self._update_tasks.add(doit()) + self._other_tasks.add(doit()) await self.update_headers() async def update_headers(self, height=None, headers=None, subscription_update=False):