百度区块链所遇到的问题及处理汇总(下)

简介: 百度区块链所遇到的问题及处理汇总(下)

升级版本是否会影响到历史数据


  • 方式一(不推荐 也不对)


目前我是用的master分支 但不是最新的


当前的区块高度是605


那我想要升级到最新的master代码


1、现将所有节点停掉


2、创建新的文件夹用来存放最新的版本


image.png


3、下拉最新的代码并进行编译


4、替换可执行文件


cp -r output/* lastv-20200729/pn1
cp -r output/* lastv-20200729/pn2
cp -r output/* lastv-20200729/pn3


5、将上一版本下的data和conf目录替换到最新的


cp -R pn1/data/ lastv-20200729/pn1/data
cp -R pn1/conf/ lastv-20200729/pn1/conf
cp -R pn2/data lastv-20200729/pn2/data
cp -R pn2/conf lastv-20200729/pn2/conf
cp -R pn3/data/ lastv-20200729/pn3/data
cp -R pn3/conf/ lastv-20200729/pn3/conf


6、重启


nohup ./xchain --vm ixvm &


节点1可以启动,但节点2启动失败 说明这种升级的方式不对


  • 方式二(推荐)


查看升级文档


https://xuperchain.readthedocs.io/zh/latest/operations_guides.html#id2

我上面的思路是创建新的文件夹 将老版本数据复制到新文件夹中


官方文档的思路是 将新的“plugins文件夹, 二进制文件xchain,xchain-cli”这些文件将老版本的替换掉 然后重启即可


cp -R output/plugins/ pn1/plugins/
cp -R output/xchain pn1/xchain
cp -R output/xchain-cli pn1/xchain-cli
cp -R output/plugins/ pn2/plugins/
cp -R output/xchain pn2/xchain
cp -R output/xchain-cli pn2/xchain-cli
cp -R output/plugins/ pn3/plugins/
cp -R output/xchain pn3/xchain
cp -R output/xchain-cli pn3/xchain-cli


image.png


升级完成 保留了老数据

新增出块节点 节点数据同步中

  • 如何新增节点

a、若是新增一个同步节点 不需要修改 创世块配置 不需要删除老数据 只需要修改 yaml文件即可 然后启动即可

https://xuperchain.readthedocs.io/zh/latest/advanced_usage/multi-nodes.html?highlight=%E5%A2%9E%E5%8A%A0%E8%8A%82%E7%82%B9#id1

b、若是新增一个出块节点 这个不仅仅需要修改yaml文件还需要修改创世块配置 所以需要删除老数据

  • 系统如何选择出块节点

此时系统在选择出块节点的算法中会判断该节点是否已同步完成 若已同步完成才会选择该节点作为当前节点

  • 查询请求过来如何处理


查询的是当前同步到的状态


  • 新搭的场景 出块节点需要再创世快配置中配置 ;非新搭场景 添加一个出块节点 先修改yaml文件 跑起来 然后进行token抵押 才能出块


若一笔上链交易 在系统确认好一个出块节点之后 若突然这个节点挂掉了 此时系统是如何处理的这笔交易呢


如果发起一笔上链交易 交易在出块前会在各个节点间转发,该节点挂掉其它节点可以继续打包


如何使用xpos共识


image.png


加上这个配置就是使用xpos,也就是(tdpos+chainedBFT)

不加就是tdpos,不能保证安全性


如果通过sdk调用合约上链的时候 节点若是响应超时的话或因为网络问题没有收到响应  此时并没有收到hash值


  • 交易hash没有返回一定没有上链,说明预执行失败


  • 首先客户端向节点发起交易预执行请求,预执行结束后会返回客户端读写集,这时客户端会在本地计算txhash,如果没有得到txhash说明交易根本不可能上链 计算txhash成功后,才会将完整的tx发送至网络


感谢


非常感谢百度链的技术大牛的支持 超哥

相关文章
|
Java 测试技术 区块链
百度区块链所遇到的问题及处理汇总(上)
百度区块链所遇到的问题及处理汇总(上)
174 0
百度区块链所遇到的问题及处理汇总(上)
|
人工智能 区块链 数据安全/隐私保护
kinmall分析百度亮剑区块链能否险中求胜?
在BAT的长期竞争中,百度的落伍已然是不争的事实。在错过移动互联网的船票后,百度正在尽可能地去把握未来科技竞争的制高点,人工智能是百度关键技术之一,区块链同样也是。
1730 0
|
监控 区块链
百度区块链“度宇宙”百度“图腾”都是区块链,有什么不同呢?
百度在BAT中可谓是最多尝试区块链的,先前退出“莱茨狗”,后来退出了图片“源”,“源”又改成“图腾”,6月8号又开始退出了“度宇宙”,相信玩过网易星球的大多都能看出来,这次的度宇宙和网易星球从前端ui和玩法确实都很像,开始都是收集引力,然后积攒。
1067 0
|
SQL .NET 测试技术
【重磅】百度区块链宠物领养、抢狗最全攻略
随着区块链大火,区块链养宠也已经集合了“云养猫”(cryptokitties)”、“以太小怪兽(Etheremon)”,以及之前网易内测的“网易招财猫”。
3189 0
|
6天前
|
存储 安全 算法
深入探讨区块链技术的安全性
深入探讨区块链技术的安全性
149 101
|
1月前
|
供应链 算法 安全
探索区块链技术中的隐私保护机制
探索区块链技术中的隐私保护机制
82 27
|
26天前
|
供应链 Go 区块链
基于区块链技术实现供应链的全程可追溯性
基于区块链技术实现供应链的全程可追溯性
70 17
|
29天前
|
存储 供应链 安全
区块链技术在选举中的应用:透明与安全的新时代
区块链技术在选举中的应用:透明与安全的新时代
71 16
|
2月前
|
供应链 安全 分布式数据库
探索区块链技术在供应链管理中的应用
【10月更文挑战第21天】 本文深入探讨了区块链技术如何在供应链管理中发挥关键作用,通过具体案例分析,揭示了区块链提高透明度、降低成本和增强安全性的潜力。文章首先概述了区块链技术的基本原理及其对传统供应链模式的挑战,接着详细讨论了区块链如何在不同供应链环节中实施,并分析了其带来的变革。最后,文章提出了企业在采纳区块链技术时可能面临的挑战和应对策略,为供应链管理者提供了宝贵的参考。
166 26
|
3月前
|
存储 供应链 分布式数据库
深入理解区块链技术:原理、应用与挑战
本文旨在探讨区块链技术的基本原理、主要应用及其面临的挑战。通过分析区块链的分布式账本技术、加密算法和共识机制,我们揭示了其如何在无需中心化权威的情况下确保数据的不可篡改性和透明性。此外,文章还讨论了区块链在金融、供应链管理、智能合约等领域的应用案例,并指出了当前区块链技术面临的可扩展性、隐私保护和法律监管等挑战。通过对这些内容的深入分析,我们希望为读者提供一个全面而深入的区块链技术概览。
345 16