decoderawexchange causing node to crash

+1 vote

Hi all,

I'm using multichain 1.0.1, so I tried using:

decoderawexchange 0100000001a654fff14bb34dc1457dfede8968401ca8d3b8ad5a22a0d66d2ecbafabbbb911000000006a4730440220083ce8c417307e6588a53bb94987c7a694f12573e7cc9f355c30db9a73574c1502207500c3f70565e522014680a6d110cb23abc53041cd3a189e87caf5bbc43e4d578321033eccc5c7a040e9e132bf2c00c0042e54f621e96ca8f984d0bdb8f0372c4d5342ffffffff01000000000000000035a91492582fb00d4d19fad853a0c047eed3ed3a460ca8871c73706b7110a6c2cbdcdb51cca2efc1884aef5f561d000000000000007500000000

and it causes the server to crash and it must be restarted

asked Nov 10, 2017 by StevenChan

1 Answer

0 votes

Thanks for reporting this. Obviously MultiChain should not crash on this, and there's a bug there. But can you please answer the following to help us narrow it down?

  1. How was this raw exchange transaction built, e.g. using createrawexchange?
  2. What happens if you pass it to decoderawtransaction – does it crash or can you paste the output?
  3. Are you willing to share the blockchain directory with us so we can find the exact cause?
answered Nov 10, 2017 by MultiChain

It's been built using createrawtransaction, because it's not a direct swap but A->B and B->C, I expected that it would either decode or not work but not for the node to crash. Here is the output of decoderawtransaction

{
    "txid" : "c8f31ec2266cceed1a3c88c497e2b10038ad0257c5d582c53226385c0b4b6542",
    "version" : 1,
    "locktime" : 0,
    "vin" : [
        {
            "txid" : "11b9bbabafcb2e6dd6a0225aadb8d3a81c406889defe7d45c14db34bf1ff54a6",
            "vout" : 0,
            "scriptSig" : {
                "asm" : "30440220083ce8c417307e6588a53bb94987c7a694f12573e7cc9f355c30db9a73574c1502207500c3f70565e522014680a6d110cb23abc53041cd3a189e87caf5bbc43e4d5783 033eccc5c7a040e9e132bf2c00c0042e54f621e96ca8f984d0bdb8f0372c4d5342",
                "hex" : "4730440220083ce8c417307e6588a53bb94987c7a694f12573e7cc9f355c30db9a73574c1502207500c3f70565e522014680a6d110cb23abc53041cd3a189e87caf5bbc43e4d578321033eccc5c7a040e9e132bf2c00c0042e54f621e96ca8f984d0bdb8f0372c4d5342"
            },
            "sequence" : 4294967295
        }
    ],
    "vout" : [
        {
            "value" : 0.00000000,
            "n" : 0,
            "scriptPubKey" : {
                "asm" : "OP_HASH160 92582fb00d4d19fad853a0c047eed3ed3a460ca8 OP_EQUAL 73706b7110a6c2cbdcdb51cca2efc1884aef5f561d00000000000000 OP_DROP",
                "hex" : "a91492582fb00d4d19fad853a0c047eed3ed3a460ca8871c73706b7110a6c2cbdcdb51cca2efc1884aef5f561d0000000000000075",
                "reqSigs" : 1,
                "type" : "scripthash",
                "addresses" : [
                    "4Kn5dZhbLBU2M7mzqrwQaUxDpd4vzmmGtiDwPE"
                ]
            },
            "assets" : [
                {
                    "name" : "07c24814fbc0cf5252ac067f510c3ff0",
                    "issuetxid" : "565fef4a88c1efa2cc51dbdccbc2a610eb54779509132e864ce1d71447fb0e02",
                    "assetref" : "55-1481-24406",
                    "qty" : 29.00000000,
                    "raw" : 29,
                    "type" : "transfer"
                }
            ],
            "permissions" : [
            ],
            "items" : [
            ]
        }
    ],
    "data" : [
    ]
}
I saved the output of decoderawtransaction but I have already deleted the blockchain directory
Thanks - we've found the problem - it's the P2SH output that is making decoderawexchange crash. It's a bug and we'll fix it in the next maintenance release. Thanks for bringing this to our attention.
...