bitcoin/bitcoin — Issue #812: memory corruption issue in GIT HEAD?
Author: dooglus
Created: 2012-02-09 11:01:13+00:00
State: open

I just built GIT HEAD (328b26) and was playing about with 'getblock' and 'getmining info' when a new block was generated. This was the newest block initially:

$ bitcoind getblock 2ef0d1af72aac8cb39fdf061fcbcf3aa5c26f04150f9aaef4ed
{
"hash" : "00000000000002ef0d1af72aac8cb39fdf061fcbcf3aa5c26f04150f9aaef4ed",
"blockcount" : 166022,
"version" : 1,
"merkleroot" : "1d4723fd632af0dd2b3a6bd3559fab3dc401732100a6bda1c29fd27cfca0d1b3",
"time" : 1328784001,
"nonce" : 2228820364,
"difficulty" : 1379647.43921429,
"tx" : [
"2459f016f5733e819a3251ec31a1ebca5be4d33c74cc52c29d424f2665a9ec8d",
"aefcccaf2e6e478d0654737b69a5ac0b3f3bd330869323352b630abeefe35706",
"f5ba47853adfeb63b86d112e59614ac5ce03bea5f7c7d89efcb0ba069879fc08",
"e4e4f056c27893ea56f8825fd3b770c35ac7e9ba313474742b5bc9d5c49432e4",
"473e032356c42af5ac8fd85716128e6d776330fb58835bcf72b913b1daf4b2a5",
"f7f539536d10c96cf64e62e130c3f155b324e8ded7357a220bfacc124bd40a9b"
],
"hashprevious" : "00000000000009ce9f73ebcfb0180d4ae30fc508897cbff7ccda7e2bc9adf7f8"
}

Then I looked at the previous block:

$ bitcoind getblock 9ce9f73ebcfb0180d4ae30fc508897cbff7ccda7e2bc9adf7f8
{
"hash" : "00000000000009ce9f73ebcfb0180d4ae30fc508897cbff7ccda7e2bc9adf7f8",
"blockcount" : 166021,
"version" : 1,
"merkleroot" : "01b1d730757820fa9b1f5da1fa6efb15e9ef2913af1788272eeda4b9e1d8104d",
"time" : 1328783818,
"nonce" : 1103372786,
"difficulty" : 1379647.43921429,
"tx" : [
"0b4ab720dc41967e47c4e54e45fa62431f9b44b3808ae5146f20d86846be1cc9",
"551f64726921bc20fd1586fe456069f1f280c916d6141d63b49ec46164008389",
"29fc20e3d897e2eeb02010894e1edc31f06c85d59c4fd916e68b6f742143ff40",
"8aae8e841038440b25583a799add17491e5e4e93f4491a0350a0583e6bf24c4f",
"92c579cae52a26257547bcbd6d38461429744fb33683581877b5d8128af16fab",
"af726d45948e0328d2b13cb7588582cc30c7f6a283bb7616c660a074b8b285ef",
"2ceed6ae3e3eee59257e7d103373260d4f46b0fc0860881b228830372cc20973",
"0cdebcee7624e790b91f85faf1cfcab91fb235d0ed985e462f53c0192bac3551",
"5764e50f5fb8858effb9cc8d558c667982402a2d6e98e1eaae8a5feea26ca773",
"b7d6c72a956afd5b6bb821909ca7ca2f082f91f8a361e4b45bc390707934cdb3",
"6a5fa920ed8a6141e5c8684ebcd175e10c7fa0b8d9ebffff21a69a65fd33b541",
"7fa640d959c2eb554bad21c3a98c85bcae306c093522833571b504497f21c9b2",
"60379cdfbae6eab35aaa864e76ee8d5265270f9014e1d8ee9dc056607052903b",
"a0cee0cde40d75602d61d0e608a0aa79804a82fa80be66d73fef1faef90ed6e0",
"8a524624a691958d6be9b5054b5748a12be7d12ced161e4d45400c41c3fae6a8",
"adfe5c3ec456586bacfbcf69040562097bedf2f30795c2ba4108354030cc50fb",
"90cbe6fb718e6ba28e83573b9648d8ebb1561b67f6e3158c3f2b43c046f78ea1",
"495c152ce1d08892a9d7a5a9d16fa7b2887cf45cbd7c6b90edb6b40aa4b78f5d"
],
"hashprevious" : "0000000000000b7ffca2a099146f8cdc1e931574068b81d22bc7536e139ea46a",
"hashnext" : "00000000000002ef0d1af72aac8cb39fdf061fcbcf3aa5c26f04150f9aaef4ed"
}

And back to the newest block:

$ bitcoind getblock 2ef0d1af72aac8cb39fdf061fcbcf3aa5c26f04150f9aaef4ed
{
"hash" : "00000000000002ef0d1af72aac8cb39fdf061fcbcf3aa5c26f04150f9aaef4ed",
"blockcount" : 166022,
"version" : 1,
"merkleroot" : "1d4723fd632af0dd2b3a6bd3559fab3dc401732100a6bda1c29fd27cfca0d1b3",
"time" : 1328784001,
"nonce" : 2228820364,
"difficulty" : 1379647.43921429,
"tx" : [
"2459f016f5733e819a3251ec31a1ebca5be4d33c74cc52c29d424f2665a9ec8d",
"aefcccaf2e6e478d0654737b69a5ac0b3f3bd330869323352b630abeefe35706",
"f5ba47853adfeb63b86d112e59614ac5ce03bea5f7c7d89efcb0ba069879fc08",
"e4e4f056c27893ea56f8825fd3b770c35ac7e9ba313474742b5bc9d5c49432e4",
"473e032356c42af5ac8fd85716128e6d776330fb58835bcf72b913b1daf4b2a5",
"f7f539536d10c96cf64e62e130c3f155b324e8ded7357a220bfacc124bd40a9b"
],
"hashprevious" : "00000000000009ce9f73ebcfb0180d4ae30fc508897cbff7ccda7e2bc9adf7f8"
}

Then I checked the mininginfo for the first time:

$ bitcoind getmininginfo
{
"blocks" : 166022,
"currentblocksize" : 0,
"currentblocktx" : 0,
"difficulty" : 1379647.43921429,
"errors" : "",
"generate" : false,
"genproclimit" : -1,
"hashespersec" : 0,
"pooledtx" : 9,
"testnet" : false
}

Then again, almost immediately, and noticed the block count had gone up by one, and that the 'pooledtx' count had gone crazy:

$ bitcoind getmininginfo
{
"blocks" : 166023,
"currentblocksize" : 0,
"currentblocktx" : 0,
"difficulty" : 1379647.43921429,
"errors" : "",
"generate" : false,
"genproclimit" : -1,
"hashespersec" : 0,
"pooledtx" : 18446744073709551608,
"testnet" : false
}

I see nothing obvious in the code that would cause the pooledtx count to be such a massive number. This must be a bug.