首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >大数据奇偶智能契约

大数据奇偶智能契约
EN

Ethereum用户
提问于 2018-08-15 09:33:22
回答 1查看 297关注 0票数 0

我遵循本教程:构建私有奇偶块链的链接,出于某种原因,我必须将一些二进制数据插入到智能契约中。要让智能合同存储超过1MB的数据,我必须做什么?

对于奇偶客户端,我使用web3j。

我的代码:

合同合同= Contract.deploy(web3j,凭据,BigInteger.valueOf(5000 L),BigInteger.valueOf(100_000_000L),字节).send();

它总是显示错误:“事务太大了,请参见链规范的限制。”

我试图在链规范中增加"gasLimit“,但它似乎不起作用。

任何帮助都将不胜感激。谢谢。

EN

回答 1

Ethereum用户

回答已采纳

发布于 2018-08-15 13:20:03

奇偶校验对on池的事务大小强制一个300 kb限制,而geth则强制一个较低的32 kb限制

您可以为链规格中的奇偶校验设置自定义的最大大小。对于geth节点,您必须编辑源代码并重新编译。

请注意,这不是共识规则,如果块包含较大的tx,则仍然有效。这些限制只适用于挂起的tx池。

请注意,一个256位字的存储成本为20000个气体,所以存储1MB的数据将花费约640万个气体,这远远高于每个网络的阻塞气体限制(我希望如此)。通常,如果您需要在链上存储那么多数据,您可能需要重新考虑使用。

票数 2
EN
页面原文内容由Ethereum提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://ethereum.stackexchange.com/questions/56572

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档