Title: Rapid block generation issue
Post by: -ck on March 24, 2014, 10:16:28 AM
I recently implemented GBT solo mining with cgminer and have confirmed its ability to generate blocks on both testnet and the main bitcoin network. However I encountered an issue when I was running it with a high hashrate on a local testnet with only 2 nodes where generation was very rapid. This was on bitcoind 0.8.6 Here is the debug log: 2014-03-23 13:41:47 ThreadRPCServer method=submitblock 2014-03-23 13:41:47 AddToWallet 7e6b9062686f1899a1c7fac650a8f8814512ca3d46dd1ddc9e9a4754b234b0c9 new 2014-03-23 13:41:47 NotifyTransactionChanged 7e6b9062686f1899a1c7fac650a8f8814512ca3d46dd1ddc9e9a4754b234b0c9 status=0 2014-03-23 13:41:47 updateWallet 7e6b9062686f1899a1c7fac650a8f8814512ca3d46dd1ddc9e9a4754b234b0c9 0 2014-03-23 13:41:47 Committing 300 changed transactions to coin database... 2014-03-23 13:41:47 SetBestChain: new best=00000000c4bf4b3cc072bd1cb614869f38b0160d6dd06a91ded695b8c42d198e height=56195 log2_work=52.435666 tx=93784 date=2014-03-23 13:41:48 p rogress=1.000000 2014-03-23 13:41:47 ProcessBlock: ACCEPTED 2014-03-23 13:41:47 inWallet=1 inModel=0 Index=95-95 showTransaction=1 derivedStatus=0 2014-03-23 13:41:47 ThreadRPCServer method=submitblock 2014-03-23 13:41:47 ProcessBlock: ACCEPTED 2014-03-23 13:41:47 ThreadRPCServer method=getblockcount 2014-03-23 13:41:47 ThreadRPCServer method=submitblock 2014-03-23 13:41:47 ProcessBlock: ACCEPTED 2014-03-23 13:41:47 ThreadRPCServer method=submitblock 2014-03-23 13:41:47 ProcessBlock: ACCEPTED 2014-03-23 13:41:47 received getdata for: block 00000000c4bf4b3cc072bd1cb614869f38b0160d6dd06a91ded695b8c42d198e 2014-03-23 13:41:47 ThreadRPCServer method=submitblock 2014-03-23 13:41:47 ProcessBlock: ACCEPTED 2014-03-23 13:41:47 ThreadRPCServer method=submitblock 2014-03-23 13:41:47 ProcessBlock: ACCEPTED 2014-03-23 13:41:47 ThreadRPCServer method=submitblock 2014-03-23 13:41:47 ProcessBlock: ACCEPTED 2014-03-23 13:41:47 ThreadRPCServer method=submitblock 2014-03-23 13:41:47 ProcessBlock: ACCEPTED 2014-03-23 13:41:47 ThreadRPCServer method=submitblock 2014-03-23 13:41:47 ProcessBlock: ACCEPTED 2014-03-23 13:41:47 ThreadRPCServer method=submitblock 2014-03-23 13:41:47 ProcessBlock: ACCEPTED 2014-03-23 13:41:47 ThreadRPCServer method=submitblock 2014-03-23 13:41:47 ProcessBlock: ACCEPTED 2014-03-23 13:41:47 ThreadRPCServer method=submitblock 2014-03-23 13:41:47 ProcessBlock: ACCEPTED 2014-03-23 13:41:47 ThreadRPCServer method=submitblock 2014-03-23 13:41:47 ProcessBlock: ACCEPTED 2014-03-23 13:41:47 ThreadRPCServer method=submitblock 2014-03-23 13:41:47 ProcessBlock: ACCEPTED 2014-03-23 13:41:47 ThreadRPCServer method=submitblock 2014-03-23 13:41:47 ProcessBlock: ACCEPTED 2014-03-23 13:41:47 ThreadRPCServer method=submitblock 2014-03-23 13:41:47 ProcessBlock: ACCEPTED 2014-03-23 13:41:47 ThreadRPCServer method=submitblock 2014-03-23 13:41:47 ProcessBlock: ACCEPTED 2014-03-23 13:41:47 ThreadRPCServer method=submitblock 2014-03-23 13:41:47 ProcessBlock: ACCEPTED 2014-03-23 13:41:47 ThreadRPCServer method=submitblock 2014-03-23 13:41:47 ProcessBlock: ACCEPTED 2014-03-23 13:41:48 ThreadRPCServer method=submitblock 2014-03-23 13:41:48 ProcessBlock: ACCEPTED 2014-03-23 13:41:48 ThreadRPCServer method=submitblock 2014-03-23 13:41:48 ProcessBlock: ACCEPTED 2014-03-23 13:41:48 ThreadRPCServer method=submitblock 2014-03-23 13:41:48 ProcessBlock: ACCEPTED 2014-03-23 13:41:48 ThreadRPCServer method=submitblock 2014-03-23 13:41:48 ProcessBlock: ACCEPTED 2014-03-23 13:41:48 ThreadRPCServer method=submitblock 2014-03-23 13:41:48 ProcessBlock: ACCEPTED 2014-03-23 13:41:48 ThreadRPCServer method=submitblock 2014-03-23 13:41:48 ProcessBlock: ACCEPTED
So the first block was accepted and appeared fine in the wallet but after that, bitcoind appeared to go stupid and accepted all the blocks submitted but never really seemed to do anything with them. Is this simply a symptom of running only 2 nodes or is there a potential real problem with generating multiple valid block solves and submitting them? Note they were all almost certainly solves for the same height block and not subsequent blocks.
Title: Re: Rapid block generation issue
Post by: gmaxwell on March 24, 2014, 06:32:56 PM
As you say— they were probably solves for the same height. What do you expect it to do with them? It should discard them.
Title: Re: Rapid block generation issue
Post by: -ck on March 24, 2014, 08:27:59 PM
It went for many minutes and the block height reported by getblockcount didn't go higher before I finally killed it. I'd say at the very least it should be advancing block height, but ideally, rejecting them.
|