wallet: Refactor new_peak in WalletStateManager and PoolWallet (#16262)

This commit is contained in:
dustinface 2023-09-07 00:59:55 +07:00 committed by GitHub
parent 22b2a31374
commit 4ee7fe27be
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 5 additions and 5 deletions

View File

@ -918,7 +918,7 @@ class PoolWallet:
await self.publish_transactions(absorb_transaction, fee_tx)
return absorb_transaction, fee_tx
async def new_peak(self, peak_height: uint64) -> None:
async def new_peak(self, peak_height: uint32) -> None:
# This gets called from the WalletStateManager whenever there is a new peak
pool_wallet_info: PoolWalletInfo = await self.get_current_state()

View File

@ -1095,7 +1095,7 @@ class WalletNode:
await self.wallet_state_manager.blockchain.set_finished_sync_up_to(new_peak.height)
# todo why do we call this if there was an exception / the sync is not finished
async with self.wallet_state_manager.lock:
await self.wallet_state_manager.new_peak(new_peak)
await self.wallet_state_manager.new_peak(new_peak.height)
async def new_peak_from_trusted(
self, new_peak_hb: HeaderBlock, latest_timestamp: uint64, peer: WSChiaConnection

View File

@ -24,7 +24,7 @@ from chia.pools.pool_puzzles import (
solution_to_pool_state,
)
from chia.pools.pool_wallet import PoolWallet
from chia.protocols.wallet_protocol import CoinState, NewPeakWallet
from chia.protocols.wallet_protocol import CoinState
from chia.rpc.rpc_server import StateChangedProtocol
from chia.server.outbound_message import NodeType
from chia.server.server import ChiaServer
@ -2193,11 +2193,11 @@ class WalletStateManager:
return filtered
async def new_peak(self, peak: NewPeakWallet) -> None:
async def new_peak(self, height: uint32) -> None:
for wallet_id, wallet in self.wallets.items():
if wallet.type() == WalletType.POOLING_WALLET:
assert isinstance(wallet, PoolWallet)
await wallet.new_peak(uint64(peak.height))
await wallet.new_peak(height)
current_time = int(time.time())
if self.wallet_node.last_wallet_tx_resend_time < current_time - self.wallet_node.wallet_tx_resend_timeout_secs: