Mempool
測試 mempool 是否重新嘗試傳遞本地送出的交易
測試:https ://github.com/bitcoin/bitcoin/blob/master/test/functional/mempool_unbroadcast.py
我正在通過以下步驟手動嘗試:
- 執行兩個節點(regtest):
節點1:
bitcoind -port=18333 -rpcport=18332 -datadir="/home/prayank/node1" -conf="/home/prayank/node1/bitcoin.conf"
節點2:
bitcoind -port=18444 -rpcport=18443 -datadir="/home/prayank/node2" -conf="/home/prayank/node2/bitcoin.conf"
bitcoin.conf
:節點1:
regtest=1 server=1 listen=1 debug=mempool regtest.rpcport=18332 rpcuser=user3 rpcpassword=password3 fallbackfee=0.0001 regtest.addnode=127.0.0.1:18444
節點2:
regtest=1 server=1 listen=1 debug=mempool regtest.rpcport=18443 rpcuser=user3 rpcpassword=password3 fallbackfee=0.0001
- 一切看起來都很好,直到 Line
68
如果不執行此 python 程式碼,我將如何做到這一點?
# fast forward into the future & ensure that the second node has the txns node.mockscheduler(MAX_INITIAL_BROADCAST_DELAY) self.sync_mempools(timeout=30)
mockscheduler
是一個隱藏的 RPC。這意味著在使用命令時它不會顯示help
,但您仍然可以像往常一樣呼叫它來使用它。例如,在測試中做與這一行相同的事情,你會做bitcoin-cli -regtest mockscheduler 900
sync_mempools()
是一個只等待getrawmempool
多個節點的結果匹配的函式。您可以手動執行此操作。