Skip to content

Commit a9ddf6f

Browse files
committed
Wait for nodes to sync masternode data during p2p-fullblocktest
1 parent 794b90d commit a9ddf6f

File tree

3 files changed

+15
-0
lines changed

3 files changed

+15
-0
lines changed

qa/rpc-tests/invalidblockrequest.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ def run_test(self):
3434
self.tip = None
3535
self.block_time = None
3636
NetworkThread().start() # Start up network handling in another thread
37+
sync_masternodes(self.nodes)
3738
test.run()
3839

3940
def get_tests(self):

qa/rpc-tests/p2p-fullblocktest.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@ def run_test(self):
4444
test = TestManager(self, self.options.tmpdir)
4545
test.add_all_connections(self.nodes)
4646
NetworkThread().start() # Start up network handling in another thread
47+
sync_masternodes(self.nodes)
4748
test.run()
4849

4950
def add_transactions_to_block(self, block, tx_list):

qa/rpc-tests/test_framework/util.py

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,15 @@ def get_rpc_proxy(url, node_number, timeout=None):
5555

5656
return coverage.AuthServiceProxyWrapper(proxy, coverage_logfile)
5757

58+
def get_mnsync_status(node):
59+
result = node.mnsync("status")
60+
return result['IsSynced']
61+
62+
def wait_to_sync(node):
63+
synced = False
64+
while not synced:
65+
synced = get_mnsync_status(node)
66+
time.sleep(0.5)
5867

5968
def p2p_port(n):
6069
return 11000 + n + os.getpid()%999
@@ -96,6 +105,10 @@ def sync_mempools(rpc_connections, wait=1):
96105
break
97106
time.sleep(wait)
98107

108+
def sync_masternodes(rpc_connections):
109+
for node in rpc_connections:
110+
wait_to_sync(node)
111+
99112
bitcoind_processes = {}
100113

101114
def initialize_datadir(dirname, n):

0 commit comments

Comments
 (0)