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

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

前言


这篇文章说下使用百度链可能遇到的问题及解决办法


创世节点账户余额最大值


cat data/config/xuper.json


image.png


所以就认为没有最大值吧 设置为多少就是多少喽


若要知道精确的 需要看下源码


转账金额大小有限制吗


./xchain-cli transfer --to XC1111111111111111@xuper --amount 20000000000000000000000000000000000000000000000000000000000000000000000


image.png


有点震惊呐 这么大都可以转账 哈哈


这个账户我也没有创建 我直接往里面转账 也是可以的?


在转账的时候同时创建好了这个账户,但不是合约账户哦

普通账户和合约账户可以是同一个账户名称



我们再来测试下哈


1、先给一个不存在的账户转账


此时会创建这个普通账户


image.png


印证了上述的猜测


调用合约 保存K-V Key和Value长度有限制吗


我测试的时候是用的36288长的字符串 是可以的


image.png


如果是 36288*2 长度 java代码已经不支持了 超过了java 字符串常量的长度


这里科普下java的基本知识



a、字符串变量:
String内部是以char数组的形式存储,数组的长度是int类型,那么String允许的最大长度就是Integer.MAX_VALUE = 2^zhi31 - 1 = 2147483647。又由于java中的字符是以16位存储的,因此大概需要4GB的内存才能存储最大长度的字符串。 
b、字符串常量:
如“abc”、”1234”之类写在代码中的字符串str,那么允许的最大长度取决于字符串在常量池中的存储大小,也就是字符串在class格式文件中的存储格式:
CONSTANT_Utf8_info {    
  u1  tag;    
  u2  length;   
  u1  bytes[length];
}
u2是无符号的16位整数,因此理论上允许的string str的最大长度是2^16-1=65535。然而实际测试表明,允许的最大长度仅为65534,超过就编译错误。


既然调用合约是通过java sdk调用 所以字符串最大不能超过java所支持的范围

测试环境


2个出块节点 1个同步节点


分别命名为 节点1 节点2 节点3


创建一个合约账户并转账 看在其他的节点是否有同步过去


  • 在节点2创建一个合约账户


使用节点1账户地址访问节点2


image.png


transfer


3d6023d4a1ba08506fdd1e0ee0cc234f6d93f639a708e32ebe8d1d51d8272349


  • 分别查看节点1、节点2、节点3的该合约账户的余额



节点1余额查询 1000000000


节点2余额查询 1000000000


节点3余额查询 1000000000


小结:在一个节点创建合约账户并发起转账交易 会同步给其他的节点


部署合约看是否同步


  • 在一个节点部署一个合约



使用节点1的账户访问节点3


./xchain-cli wasm deploy --account XC1111111111116666@xuper --cname hello_last_1  --fee 5574291 --runtime g


image.png


invoke txid: 60b4ee039415ed2e8880212cf182361143f314f988034a669aee5be2a9c6b02a
response: 
gas: 100608


在节点2调用合约


和节点1区别在于 key为 mac1(这个合约的key是唯一的)


invoke txid: 127ad9ea3c0071dad560fb189b6be054e9fde06dc07d2202171aed5a32f49d3b
response: 
gas: 100609


在节点3调用合约


和节点1区别在于 key为 mac2


invoke txid: 56cd4547e266423630b6db038692bb04f0730ea207b776f55654d7d0db705717
response: 
gas: 100609


小结:在一个节点部署合约 会同步给其他的所有节点


  • 到不同的节点查看一个hash值 看是否都一致


比如查询


60b4ee039415ed2e8880212cf182361143f314f988034a669aee5be2a9c6b02a


./xchain-cli tx query 60b4ee039415ed2e8880212cf182361143f314f988034a669aee5be2a9c6b02a


在节点1、节点2、节点3查询的交易详情内容一致


小结:在一个节点做的交易会同步给所有的节点


相关文章
|
算法 区块链 开发工具
百度区块链所遇到的问题及处理汇总(下)
百度区块链所遇到的问题及处理汇总(下)
233 0
百度区块链所遇到的问题及处理汇总(下)
|
人工智能 区块链 数据安全/隐私保护
kinmall分析百度亮剑区块链能否险中求胜?
在BAT的长期竞争中,百度的落伍已然是不争的事实。在错过移动互联网的船票后,百度正在尽可能地去把握未来科技竞争的制高点,人工智能是百度关键技术之一,区块链同样也是。
1698 0
|
监控 区块链
百度区块链“度宇宙”百度“图腾”都是区块链,有什么不同呢?
百度在BAT中可谓是最多尝试区块链的,先前退出“莱茨狗”,后来退出了图片“源”,“源”又改成“图腾”,6月8号又开始退出了“度宇宙”,相信玩过网易星球的大多都能看出来,这次的度宇宙和网易星球从前端ui和玩法确实都很像,开始都是收集引力,然后积攒。
1055 0
|
SQL .NET 测试技术
【重磅】百度区块链宠物领养、抢狗最全攻略
随着区块链大火,区块链养宠也已经集合了“云养猫”(cryptokitties)”、“以太小怪兽(Etheremon)”,以及之前网易内测的“网易招财猫”。
3157 0
|
8天前
|
存储 传感器 物联网
未来已来:区块链、物联网与虚拟现实技术融合的新篇章
【10月更文挑战第38天】本文旨在探索新兴技术区块链、物联网(IoT)和虚拟现实(VR)在未来社会的应用前景。通过分析这些技术的发展趋势,我们将揭示它们如何相互交织,共同塑造一个更智能、更互联的世界。文章将不包含传统意义上的摘要内容,而是直接深入主题,展开讨论。
|
7天前
|
供应链 安全 物联网
区块链技术的未来展望:重塑信任与价值传递
区块链技术的未来展望:重塑信任与价值传递
20 1
|
9天前
|
供应链 物联网 区块链
探索未来:区块链、物联网与虚拟现实技术的融合与创新
【10月更文挑战第37天】在技术不断进步的今天,新兴技术如区块链、物联网和虚拟现实正在逐渐改变我们的生活和工作方式。本文将探讨这些技术的发展趋势和应用场景,并提供代码示例来说明它们是如何相互融合和创新的。我们将从区块链技术的基础开始,介绍其在金融领域的应用;然后探讨物联网技术的发展及其在智能家居中的应用;最后,我们将讨论虚拟现实技术的进步以及它在游戏和教育领域的应用。通过这些技术的融合与创新,我们可以更好地理解和预测未来的发展趋势。
|
9天前
|
供应链 算法 区块链
深入浅出区块链技术:从原理到应用
【10月更文挑战第21天】 本文旨在为读者提供一个关于区块链技术的全面概述,包括其工作原理、关键技术特点以及在现实世界中的应用案例。通过本文,您将能够理解区块链如何在不依赖中心化机构的情况下确保数据的安全性和不可篡改性,并探讨这项技术如何被应用于金融、供应链管理等多个领域,以提高效率和透明度。
20 1
|
12天前
|
供应链 安全 中间件
深度探索区块链技术在供应链管理中的应用与挑战###
本文聚焦于区块链技术在现代供应链管理中的创新应用及其面临的挑战。通过分析区块链的去中心化、透明性和不可篡改性如何重塑供应链结构,提升效率与信任度,本文进一步探讨了实施过程中的技术融合难题、数据隐私保护、标准化缺失及成本控制等关键问题,为相关企业和技术开发者提供策略指导与未来趋势洞察。 ###
|
12天前
|
供应链 区块链
探索区块链技术在供应链管理中的应用与挑战
本文深入探讨了区块链技术在现代供应链管理中的创新应用及其面临的挑战。通过分析区块链的去中心化特性、不可篡改性以及透明度,阐述了如何利用这一技术优化供应链流程,提高数据共享的安全性与效率。同时,文章也指出了实施过程中的技术难题、成本考量及法规限制等挑战,为读者提供了对区块链技术在供应链领域应用前景的全面认识。