Skip to content

Commit 9dc5a53

Browse files
committed
debug
1 parent 0299439 commit 9dc5a53

File tree

5 files changed

+26
-20
lines changed

5 files changed

+26
-20
lines changed

chia/_tests/conftest.py

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,7 @@
9292
from chia_rs.sized_ints import uint128
9393

9494
from chia._tests.environments.wallet import WalletEnvironment, WalletState, WalletTestFramework
95-
from chia._tests.util.setup_nodes import setup_farmer_solver_multi_harvester
95+
from chia._tests.util.setup_nodes import setup_farmer_multi_harvester
9696
from chia.full_node.full_node_rpc_client import FullNodeRpcClient
9797
from chia.simulator.block_tools import BlockTools, create_block_tools_async, test_constants
9898
from chia.simulator.keyring import TempKeyring
@@ -866,7 +866,7 @@ async def farmer_one_harvester_simulator_wallet(
866866
]
867867
]:
868868
async with setup_simulators_and_wallets_service(1, 1, blockchain_constants) as (nodes, wallets, bt):
869-
async with setup_farmer_solver_multi_harvester(bt, 1, tmp_path, bt.constants, start_services=True) as (
869+
async with setup_farmer_multi_harvester(bt, 1, tmp_path, bt.constants, start_services=True) as (
870870
harvester_services,
871871
farmer_service,
872872
_,
@@ -879,7 +879,7 @@ async def farmer_one_harvester_simulator_wallet(
879879

880880
@pytest.fixture(scope="function")
881881
async def farmer_one_harvester(tmp_path: Path, get_b_tools: BlockTools) -> AsyncIterator[FarmerOneHarvester]:
882-
async with setup_farmer_solver_multi_harvester(
882+
async with setup_farmer_multi_harvester(
883883
get_b_tools, 1, tmp_path, get_b_tools.constants, start_services=True
884884
) as _:
885885
yield _
@@ -894,7 +894,7 @@ async def farmer_one_harvester_solver(
894894
) -> AsyncIterator[FarmerOneHarvesterSolver]:
895895
async with setup_solver(tmp_path / "solver", get_b_tools, get_b_tools.constants) as solver_service:
896896
solver_peer = UnresolvedPeerInfo(get_b_tools.config["self_hostname"], solver_service._server.get_port())
897-
async with setup_farmer_solver_multi_harvester(
897+
async with setup_farmer_multi_harvester(
898898
get_b_tools, 1, tmp_path, get_b_tools.constants, start_services=True, solver_peer=solver_peer
899899
) as (harvester_services, farmer_service, bt):
900900
yield harvester_services, farmer_service, solver_service, bt
@@ -904,7 +904,7 @@ async def farmer_one_harvester_solver(
904904
async def farmer_one_harvester_not_started(
905905
tmp_path: Path, get_b_tools: BlockTools
906906
) -> AsyncIterator[tuple[list[HarvesterService], FarmerService, BlockTools]]:
907-
async with setup_farmer_solver_multi_harvester(
907+
async with setup_farmer_multi_harvester(
908908
get_b_tools, 1, tmp_path, get_b_tools.constants, start_services=False
909909
) as _:
910910
yield _
@@ -914,7 +914,7 @@ async def farmer_one_harvester_not_started(
914914
async def farmer_two_harvester_not_started(
915915
tmp_path: Path, get_b_tools: BlockTools
916916
) -> AsyncIterator[tuple[list[HarvesterService], FarmerService, BlockTools]]:
917-
async with setup_farmer_solver_multi_harvester(
917+
async with setup_farmer_multi_harvester(
918918
get_b_tools, 2, tmp_path, get_b_tools.constants, start_services=False
919919
) as _:
920920
yield _
@@ -924,7 +924,7 @@ async def farmer_two_harvester_not_started(
924924
async def farmer_three_harvester_not_started(
925925
tmp_path: Path, get_b_tools: BlockTools
926926
) -> AsyncIterator[tuple[list[HarvesterService], FarmerService, BlockTools]]:
927-
async with setup_farmer_solver_multi_harvester(
927+
async with setup_farmer_multi_harvester(
928928
get_b_tools, 3, tmp_path, get_b_tools.constants, start_services=False
929929
) as _:
930930
yield _
@@ -1309,7 +1309,7 @@ async def farmer_harvester_2_simulators_zero_bits_plot_filter(
13091309
]
13101310

13111311
[harvester_service], farmer_service, _ = await async_exit_stack.enter_async_context(
1312-
setup_farmer_solver_multi_harvester(bt, 1, tmp_path, bt.constants, start_services=True)
1312+
setup_farmer_multi_harvester(bt, 1, tmp_path, bt.constants, start_services=True)
13131313
)
13141314

13151315
yield farmer_service, harvester_service, simulators[0], simulators[1], bt

chia/_tests/farmer_harvester/test_filter_prefix_bits.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111

1212
from chia._tests.conftest import ConsensusMode
1313
from chia._tests.core.test_farmer_harvester_rpc import wait_for_plot_sync
14-
from chia._tests.util.setup_nodes import setup_farmer_solver_multi_harvester
14+
from chia._tests.util.setup_nodes import setup_farmer_multi_harvester
1515
from chia._tests.util.time_out_assert import time_out_assert
1616
from chia.farmer.farmer_api import FarmerAPI
1717
from chia.farmer.farmer_rpc_client import FarmerRpcClient
@@ -60,7 +60,7 @@ async def have_connections() -> bool:
6060
)
6161
new_config = local_b_tools._config
6262
local_b_tools.change_config(new_config)
63-
async with setup_farmer_solver_multi_harvester(
63+
async with setup_farmer_multi_harvester(
6464
local_b_tools, 1, tmp_path, local_b_tools.constants, start_services=True
6565
) as (harvesters, farmer_service, _):
6666
harvester_service = harvesters[0]

chia/_tests/farmer_harvester/test_third_party_harvesters.py

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -92,9 +92,9 @@ async def test_harvester_receive_source_signing_data(
9292
UnresolvedPeerInfo(str(full_node_service_1.self_hostname), full_node_service_1._server.get_port())
9393
)
9494

95-
await wait_until_node_type_connected(farmer.server, NodeType.FULL_NODE)
96-
await wait_until_node_type_connected(farmer.server, NodeType.HARVESTER) # Should already be connected
97-
await wait_until_node_type_connected(full_node_1.server, NodeType.FULL_NODE)
95+
await time_out_assert(60, node_type_connected, True, farmer.server, NodeType.FULL_NODE)
96+
await time_out_assert(60, node_type_connected, True, farmer.server, NodeType.HARVESTER)
97+
await time_out_assert(60, node_type_connected, True, full_node_1.server, NodeType.FULL_NODE)
9898

9999
# Prepare test data
100100
blocks: list[FullBlock]
@@ -429,12 +429,11 @@ def log_has_new_text() -> bool:
429429
return False
430430

431431

432-
async def wait_until_node_type_connected(server: ChiaServer, node_type: NodeType) -> WSChiaConnection:
433-
while True:
434-
for peer in server.all_connections.values():
435-
if peer.connection_type == node_type.value:
436-
return peer
437-
await asyncio.sleep(1)
432+
def node_type_connected(server: ChiaServer, node_type: NodeType) -> bool:
433+
for peer in server.all_connections.values():
434+
if peer.connection_type == node_type.value:
435+
return True
436+
return False
438437

439438

440439
def decode_sp(

chia/_tests/util/setup_nodes.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -303,7 +303,7 @@ async def setup_simulators_and_wallets_inner(
303303

304304

305305
@asynccontextmanager
306-
async def setup_farmer_solver_multi_harvester(
306+
async def setup_farmer_multi_harvester(
307307
block_tools: BlockTools,
308308
harvester_count: int,
309309
temp_dir: Path,

chia/server/start_service.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -151,26 +151,31 @@ async def _connect_peers_task_handler(self) -> None:
151151
prefer_ipv6 = self.config.get("prefer_ipv6", False)
152152
while True:
153153
for unresolved in self._connect_peers:
154+
print(f"try peer {unresolved}")
154155
resolved = resolved_peers.get(unresolved)
155156
if resolved is None:
156157
try:
157158
resolved = PeerInfo(await resolve(unresolved.host, prefer_ipv6=prefer_ipv6), unresolved.port)
158159
except Exception as e:
160+
print(f"Failed to resolve {unresolved.host}: {e}")
159161
self._log.warning(f"Failed to resolve {unresolved.host}: {e}")
160162
continue
161163
self._log.info(f"Add resolved {resolved}")
162164
resolved_peers[unresolved] = resolved
163165

164166
if any(connection.peer_info == resolved for connection in self._server.all_connections.values()):
167+
print("step 1")
165168
continue
166169
if any(
167170
connection.peer_info.host == resolved.host and connection.peer_server_port == resolved.port
168171
for connection in self._server.all_connections.values()
169172
):
173+
print("step 2")
170174
continue
171175

172176
if not await self._server.start_client(resolved, None):
173177
self._log.info(f"Failed to connect to {resolved}")
178+
print(f"Failed to connect to {resolved}")
174179
# Re-resolve to make sure the IP didn't change, this helps for example to keep dyndns hostnames
175180
# up to date.
176181
try:
@@ -179,9 +184,11 @@ async def _connect_peers_task_handler(self) -> None:
179184
)
180185
except Exception as e:
181186
self._log.warning(f"Failed to resolve after connection failure {unresolved.host}: {e}")
187+
print(f"Failed to resolve after connection failure {unresolved.host}: {e}")
182188
continue
183189
if resolved_new != resolved:
184190
self._log.info(f"Host {unresolved.host} changed from {resolved} to {resolved_new}")
191+
print(f"Host {unresolved.host} changed from {resolved} to {resolved_new}")
185192
resolved_peers[unresolved] = resolved_new
186193
await asyncio.sleep(self.reconnect_retry_seconds)
187194

0 commit comments

Comments
 (0)