From ddbc4485530c704ae0743024a8e71bb6dbe9c23f Mon Sep 17 00:00:00 2001 From: "David A. Harding" Date: Sat, 3 Jan 2015 09:36:28 -0500 Subject: [PATCH] Dev Docs: Fix Confusion About Chain Switching As discussed on BitcoinTalk, there was confusion about whether a non-upgraded node would switch to the strongest chain despite that chain not following the consensus rules known to the non-upgraded node. Also updated to mention Bitcoin Core 0.10.0 now that it's RC'd. Ref: https://bitcointalk.org/index.php?topic=909732.msg9999032#msg9999032 --- _includes/guide_block_chain.md | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/_includes/guide_block_chain.md b/_includes/guide_block_chain.md index ca274574..c6523d91 100644 --- a/_includes/guide_block_chain.md +++ b/_includes/guide_block_chain.md @@ -341,19 +341,21 @@ provide incomplete information. Bitcoin Core includes code that detects a hard fork by looking at block -chain proof of work. If a node receives block chain headers -demonstrating six blocks more proof of work than the best chain this -node considers valid, the node reports an error in the `getinfo` RPC -results and runs the `-alertnotify` command if set. +chain proof of work. If a non-upgraded node receives block chain headers +demonstrating at least six blocks more proof of work than the best chain +it considers valid, the node reports an error in the `getinfo` RPC +results and runs the `-alertnotify` command if set. This warns the +operator that the non-upgraded node can't switch to what is likely the +best block chain. Full nodes can also check block and transaction version numbers. If the block or transaction version numbers seen in several recent blocks are higher than the version numbers the node uses, it can assume it doesn't -use the current consensus rules. Future versions of Bitcoin Core -(>0.9.3) will likely report this situation through the `getinfo` RPC and +use the current consensus rules. Bitcoin Core 0.10.0 +reports this situation through the `getinfo` RPC and `-alertnotify` command if set. -In either case, data should not be relied upon if it comes from a node +In either case, block and transaction data should not be relied upon if it comes from a node that apparently isn't using the current consensus rules. SPV clients which connect to full nodes can detect a likely hard fork by