Toknsit Toknsit
Toknsit Toknsit

Reputation: 144

How to disable Bitcoind ZeroMQ notification publish block or transaction in mempool

TL;DR

zmq send the block data in mempool not confirmed in blockchain,how to filter these unconfirmed data.

the problem

In 2019 our production use blocknotify to fire event of new block,but this year(2020) I'm required to changed to using zeromq.So I change my code fired by zeromq's publish zmqpubhashblock , it's easy.But I found zmq send the block data in mempool not confirmed in blockchain, and not found anyother config can disable this behavior.

current node(a testnet btc node for development)

my code (a zmq sub demo in laravel command)

        $context = new \ZMQContext();
        $subscriber = new \ZMQSocket($context, \ZMQ::SOCKET_SUB);
        $subscriber->connect("tcp://192.168.1.136:28332"); //btc testnet
        $subscriber->setSockOpt(\ZMQ::SOCKOPT_SUBSCRIBE, "hashblock");
        // $subscriber->setSockOpt(\ZMQ::SOCKOPT_SUBSCRIBE, "hashtx");
        $subscriber->setSockOpt(\ZMQ::SOCKOPT_SUBSCRIBE, "rawblock");
        // $subscriber->setSockOpt(\ZMQ::SOCKOPT_SUBSCRIBE, "rawtx");
        $this->info("sub btc");
        while (true) {
            $multiRec = $subscriber->recvMulti();
            // if ($multiRec != false) {
            // var_dump($multiRec);
            $this->info(date('Y-m-d H:i:s') . ' rec:');
            $topic = $multiRec[0];
            $body = \bin2hex($multiRec[1]);
            $sequence = \bin2hex($multiRec[2]);
            $this->info("topic: " . $topic . " , sequence : " . $sequence);
            $this->info("body " . " , sequence : " . $sequence);
            $this->info($body);
            $this->info('----------------------');
        }

It output like this

sub btc
2020-01-09 07:55:10 rec:
topic: hashblock , sequence : 4c2b0000
body  , sequence : 4c2b0000
00000000000119f7061e4de7bc09f7526ad6d03057da7eadb2a8c68260765b20
----------------------
2020-01-09 07:55:10 rec:
topic: rawblock , sequence : 4c2b0000
body  , sequence : 4c2b0000
0000ff3fef3ca23d30df507cfa0bbbccb27cbed53e714cf4da599c917fc200000000000035f889f1bb70bac042d7f63dc0056279d16564ef2b5a9ef6ef6e02a122ae3cea67dc165eb08f091b056252a702020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff2703b038190458dc165e726567696f6e312f46756e3230313931322f010000012700000000000000ffffffff02c40c5402000000001976a9149dbb856bf9bfe4cebc7cc3aec5434c14e540ba7d88ac0000000000000000266a24aa21a9ed0b17f5f2ecfe5fff1fde0d8e23223f2aa9fc2fad5b04c0430bb682c69f4f59dd012000000000000000000000000000000000000000000000000000000000000000000000000001000000000101d266d0eba0eb71e7f4c163caa5ce49d9f9d167cec65f7a1299cda5e6a10b3b2b0000000000ffffffff02e8030000000000001976a914c48ce75ce550d6d13548fe683106facbc0aeee3c88acb0290c0000000000160014f52b799d88c35973313bc2f5110a53f74e4dde810247304402203a001e87cbda9f36570963ff8dbb3f9b086008f34c15c360bcea2417aea6c575022071bf52e8394b54bab9d5a4a87e386c995d3651f9d09dc958e38d5fffeae1910701210339363cbe9f2a914801db907302a6658c28c145b247cb7c0133f70f5db0cdd0aa00000000
----------------------
2020-01-09 07:55:12 rec:
topic: hashblock , sequence : 4d2b0000
body  , sequence : 4d2b0000
0000000000017d572741e884f5b6d20a86351dc52f432072eba0f86ac5026cbd
----------------------
2020-01-09 07:55:12 rec:
topic: rawblock , sequence : 4d2b0000
body  , sequence : 4d2b0000
00000020205b766082c6a8b2ad7eda5730d0d66a52f709bce74d1e06f719010000000000eb6c4b961cfb08a367efdc0770df9377b5c1ffc7358ecf25870648e99e44d51c5edc165eb08f091bbd17f63801010000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff4c03b13819045edc165e08fabe6d6d00000000000000000000000000000000000000000000000000000000000000000100000000000000180000708b1800000d2f6e6f64655374726174756d2f00000000020000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf9e40b5402000000001976a914bd3400d71504033fb1e7c947f2e0f55775899f2288ac0120000000000000000000000000000000000000000000000000000000000000000000000000
----------------------
2020-01-09 07:55:12 rec:
topic: hashblock , sequence : 4e2b0000
body  , sequence : 4e2b0000
000000000000df593a7a72c65d1ddcb8d7aef78bac448b288b798de256d04db3
----------------------
2020-01-09 07:55:12 rec:
topic: rawblock , sequence : 4e2b0000
body  , sequence : 4e2b0000
00000020bd6c02c56af8a0eb7220432fc51d35860ad2b6f584e84127577d010000000000f70bd9ad38658f46e958c11bc3f98e3bc7b5082c72beee27df6672750a2c936c60dc165eb08f091b1b18f5f401010000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff4c03b238190460dc165e08fabe6d6d0000000000000000000000000000000000000000000000000000000000000000010000000000000018000070b40200000d2f6e6f64655374726174756d2f00000000020000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf9e40b5402000000001976a914bd3400d71504033fb1e7c947f2e0f55775899f2288ac0120000000000000000000000000000000000000000000000000000000000000000000000000
----------------------
2020-01-09 07:55:13 rec:
topic: hashblock , sequence : 4f2b0000
body  , sequence : 4f2b0000
00000000000082663372af34f08cb4463bba26bc50849d1f0cf559a6beb52c30
----------------------
2020-01-09 07:55:13 rec:
topic: rawblock , sequence : 4f2b0000
body  , sequence : 4f2b0000
00000020b34dd056e28d798b288b44ac8bf7aed7b8dc1d5dc6727a3a59df0000000000003ed7970bbe29d8f94424d80bfd597d11ccb0501a9ca9744bae7ce7e9e68f26a460dc165eb08f091b54bb9f6601010000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff4c03b338190460dc165e08fabe6d6d0000000000000000000000000000000000000000000000000000000000000000010000000000000018000070c90400000d2f6e6f64655374726174756d2f00000000020000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf9e40b5402000000001976a914bd3400d71504033fb1e7c947f2e0f55775899f2288ac0120000000000000000000000000000000000000000000000000000000000000000000000000
----------------------

I decode the rawBlockdata and get the txid a4268fe6e9e77cae4b74a99c1a50b0cc117d59fd0bd82444f9d829be0b97d73e, but it is zero confirmations (current 08:12:18 UTC Thursday, January 9, 2020).

Upvotes: 0

Views: 690

Answers (1)

Toknsit Toknsit
Toknsit Toknsit

Reputation: 144

check other testnet explorer solved my problem, the explorer I used is 200 behind current

By checking other testnet explorer, I find https://tbtc.bitaps.com/ is 200 block behind current (testnet January 9, 2020).

And the data is right now.(January 10, 2020).

It's not bitcoind's problem or my code's problem just check other testnet explorer.

Upvotes: 0

Related Questions