6 ms·
So, Bitcoin ABC (Cash) is three blocks behind the other nodes, but no chain split has been detected. What’s up with that? Did the block three blocks ago cause
by runeks 9y ago
So, Bitcoin ABC (Cash) is three blocks behind the other nodes, but no chain split has been detected. What’s up with that?
Did the block three blocks ago cause a fork? Are we just waiting for someone to mine a Bitcoin Cash block on top of this block and then there’ll be a fork?
EDIT: Here's the log from a Bitcoin ABC node I have running:
2017-08-01 13:23:36 ERROR: AcceptBlock: bad-blk-too-small, size limits failed (code 16) (block 00000000000000000019f112ec0a9982926f1258cdcc558dd7c3b7e5dc7fa148)
2017-08-01 13:23:36 ERROR: ProcessNewBlock: AcceptBlock FAILED
2017-08-01 13:23:48 ERROR: AcceptBlockHeader: block 00000000000000000019f112ec0a9982926f1258cdcc558dd7c3b7e5dc7fa148 is marked invalid
2017-08-01 13:23:48 ERROR: invalid header received
2017-08-01 13:24:06 ERROR: AcceptBlockHeader: block 00000000000000000019f112ec0a9982926f1258cdcc558dd7c3b7e5dc7fa148 is marked invalid
2017-08-01 13:24:06 ERROR: invalid header received
[ ... last two lines repeat ... ]
Looks like 00000000000000000019f112ec0a9982926f1258cdcc558dd7c3b7e5dc7fa148 AKA block number 478559 was rejected by Bitcoin ABC.
EDIT2: Here's the code [1]. The block was rejected by Bitcoin ABC/Cash because it was smaller than 1 MB.
[1] https://github.com/Bitcoin-ABC/bitcoin-abc/blob/174846aaaf564e64b6bd06d679996b52ba86ad53/src/validation.cpp#L3397 https://github.com/Bitcoin-ABC/bitcoin-abc/blob/174846aaaf56...
- simias 9y agoThat's normal. Bitcoin ABC is rejecting the non-BCC blocks once the median time is after 12:20 UTC. So BTC blocks after 478558 are rejected. Now the BCC miners are actually working on producing the first BCC-only block, which will be block 478559 on the BCC chain and will be different from block 478559 on the BTC chain, hence effectively splitting the chain. Since BCC has only a tiny fraction of BTC's hash rate (around 1% by most estimates, although it's pretty hard to evaluate) it will take a while for this block to be found. Probably hours, maybe even days. Eventually the difficulty on the BCC chain will adjust, so even if the hash rate remains low the "blockrate" should steadily increase within the next few weeks. Also since BCC blocks can be 8 times as big they can fit more transactions in a single block, somewhat mitigating the effect.
- eterm 9y agoThe adjustment is by block-count not time, if they only produce a block per day it'll take ~144 days to lower the difficulty. I think people would abandon long before that.
- deleted 9y ago[deleted]
- hybridsole 9y agoThe difficulty recalculation in Bitcoin ABC was reduced significantly. I believe it is 6 blocks but could be wrong. At most it would take several days as opposed to several weeks.
- elmar 9y agothey probably should have hardcoded a much lower dificulty for the first batch of blocks.
- simias 9y agoThere's a "cheat" to avoid this situation in the technical spec[1]: In case the MTP of the tip of the chain is 12h or more after the MTP 6 block before the tip, the proof of work target is increased by a quarter, or 25%, which corresponds to a difficulty reduction of 20%. So as long as the BCC keeps lagging behind massively (less than 6 blocks every 12h) the difficulty is reduced by 20% after every new block. [1] https://github.com/Bitcoin-UAHF/spec/blob/master/uahf-technical-spec.md#req-7-difficulty-adjustement-in-case-of-hashrate-drop https://github.com/Bitcoin-UAHF/spec/blob/master/uahf-techni...
- eterm 9y agoThanks I didn't know of that 'cheat', it sounds from the spec though that the difficulty of the block yet to be found would be reduced but it would then go back up for the block after that to the proper-set difficultly (because there would now be a block within the 12h window).