forked from LBRYCommunity/lbry-sdk
Merge pull request #2877 from lbryio/on_ready_fixup
wait for tx sync to finish but not header sync
This commit is contained in:
commit
60d89506a5
5 changed files with 5 additions and 5 deletions
|
@ -370,7 +370,6 @@ class CommandTestCase(IntegrationTestCase):
|
|||
)
|
||||
self.extra_wallet_node_port += 1
|
||||
await wallet_node.start(self.conductor.spv_node, seed=seed)
|
||||
await wallet_node.ledger.on_ready.first
|
||||
self.extra_wallet_nodes.append(wallet_node)
|
||||
|
||||
upload_dir = os.path.join(wallet_node.data_path, 'uploads')
|
||||
|
|
|
@ -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)
|
||||
|
@ -323,6 +324,7 @@ class Ledger(metaclass=LedgerRegistry):
|
|||
else:
|
||||
await self._report_state()
|
||||
self.on_transaction.listen(self._reset_balance_cache)
|
||||
await self.on_ready.first
|
||||
|
||||
async def join_network(self, *_):
|
||||
log.info("Subscribing and updating accounts.")
|
||||
|
@ -334,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()
|
||||
|
@ -351,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):
|
||||
|
|
|
@ -77,7 +77,6 @@ class Conductor:
|
|||
async def start_wallet(self):
|
||||
if not self.wallet_started:
|
||||
await self.wallet_node.start(self.spv_node)
|
||||
await self.wallet_node.ledger.on_ready.first
|
||||
self.wallet_started = True
|
||||
|
||||
async def stop_wallet(self):
|
||||
|
|
|
@ -87,7 +87,6 @@ class ResolveCommand(BaseResolveTestCase):
|
|||
await self.conductor.spv_node.stop()
|
||||
resolve_task = asyncio.create_task(self.resolve('foo'))
|
||||
await self.conductor.spv_node.start(self.conductor.blockchain_node)
|
||||
await self.ledger.on_ready.first
|
||||
self.assertIsNotNone((await resolve_task)['claim_id'])
|
||||
|
||||
async def test_winning_by_effective_amount(self):
|
||||
|
|
|
@ -27,7 +27,6 @@ class SyncTests(IntegrationTestCase):
|
|||
wallet_node = WalletNode(WalletManager, RegTestLedger, port=self.api_port)
|
||||
await wallet_node.start(self.conductor.spv_node, seed)
|
||||
self.started_nodes.append(wallet_node)
|
||||
await wallet_node.ledger.on_ready.first
|
||||
return wallet_node
|
||||
|
||||
async def test_nodes_with_same_account_stay_in_sync(self):
|
||||
|
|
Loading…
Reference in a new issue