Three bitcore nodes (version of bitcoind is quite old – 0.12.1) are deployed to the servers on different cloud platforms.
All instances have the same bitcoin.conf files (except of rpcallowip, rpcuser and rpcpassword):
server=1 whitelist=127.0.0.1 txindex=1 addressindex=1 timestampindex=1 spentindex=1 zmqpubrawtx=tcp://127.0.0.1:28332 zmqpubhashblock=tcp://127.0.0.1:28332 rpcthreads=8 rpcworkqueue=32 rpcservertimeout=60 rpcallowip=127.0.0.1 rpcuser=... rpcpassword=... uacomment=bitcore
The problem is all of them have considerably different mempools:
- first has 33689 txs in mempool
- second has 58219 txs
- third node has 39540 txs
- blockchain.info has 63598 txs
I understand, that mempool is node-specific and there is no “Single Bitcoin Network Mempool”. However I need synchronization at least between these three nodes (though it would be better to be as close to blockchain.info as possible).
If there is transaction, that exists in blokchain.info’s mempool, but doesn’t exist in all three nodes’ mempools – it is ok. But as soon as this transaction get to one of these three nodes, it should appear on others as soon as possible.
I’ve tried using addnode
option to force nodes connect to each other, but it didn’t helped.
May be I am missing something, or at least there is a way to find the reason of so big differences in mempool ?