进入分叉链的判定和解决办法
分叉链产生的原因
分叉链产生的主要原因是用户使用了旧版本的客户端,特别是个别受托人也使用了旧版的客户端。
当包含着协议更新的新版本发布时,可能之前合法的某些交易类型变得不再合法,也可能增加了旧版本不能识别的新类型的交易(例如增加新功能)。一般情况下大多数受托人会选择使用新版本,而少数受托人可能因为疏忽或不认可新版本的变动而选择继续使用旧版本,此时就会发生分叉。对于使用旧版本的用户来说就会进入只有极少数受托人维护的分叉链(非主链),表现为受托人参与率低下,转账无效,同步困难,以及大量区块缺失。而对于主链的用户来说,基本不会有明显感觉。
进入分叉链的判定
如果用户发送了某笔交易,但是接受者却声称没有收到该笔交易,而在正常工作的区块链浏览网站上也无法查询到该笔交易,此时就有可能是因为发送一方进入了分叉链。
另一个表现是,区块已经同步完毕,但显示受托人参与率低下。
明确的判定方法为,点击左侧“区块浏览”选项卡,右侧会出现最新区块的列表,如果列表中大量区块显示“缺失块”,那么即为进入了分叉链。
此时参照下述方法即可解决问题,用户的资金并不会丢失,请不必担心。
解决问题
如果进入分叉链时间不久的话,可以下载运行最新版的客户端,有可能可以解决问题。如果不能解决问题,请参照下述方案彻底的解决问题。
1,首先下载安装最新版的客户端。
2,删除区块链数据,请参见数据存放路径,其中chain文件夹即为区块链数据,请删除chain文件夹(不要删除其他文件,特别是wallet文件夹)。
3,启动最新版的客户端,从头同步数据即可解决问题。由于从头同步数据需要大量时间,也可以直接下载由热心网友提供的主链区块数据:http://pan.baidu.com/s/1bn0ifKz#path=%252FPLAY_blockchain 解压缩文件包,将其中的chain文件夹放置在相应位置再启动客户端即可。