Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/41.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js Hyperledger结构链码实例化返回超时已过期_Node.js_Hyperledger Fabric - Fatal编程技术网

Node.js Hyperledger结构链码实例化返回超时已过期

Node.js Hyperledger结构链码实例化返回超时已过期,node.js,hyperledger-fabric,Node.js,Hyperledger Fabric,我已经在Fabric上工作了几个月了,我一直在尝试运行一个有点复杂的虚拟机,一个链码内的以太坊虚拟机。它是用JavaScript编写的,所以我使用了nodeJS链码版本。 我将虚拟机和我的链码打包在一个目录中,然后安装并实例化到对等机上。安装完成并退出,没有错误,但是挂起几分钟后的实例化返回错误: Error: Error endorsing chaincode: rpc error: code = Unknown desc = timeout expired while starting ch

我已经在Fabric上工作了几个月了,我一直在尝试运行一个有点复杂的虚拟机,一个链码内的以太坊虚拟机。它是用JavaScript编写的,所以我使用了nodeJS链码版本。 我将虚拟机和我的链码打包在一个目录中,然后安装并实例化到对等机上。安装完成并退出,没有错误,但是挂起几分钟后的实例化返回错误:

Error: Error endorsing chaincode: rpc error: code = Unknown desc = timeout expired while starting chaincode mychaincode:1.0(networkid:dev,peerid:peer0.org1.example.com,tx:.... 
它应该至少运行几分钟,因为添加的包是~15MB,根据示例nodejs chaincode至少运行一分钟

示例nodejs chaincode(chaincode_example02)在教程中的BYFN网络和我开始使用的基本网络上都运行良好。我的环境是根据fabric samples repository(v1.1.0)中的文档(v1.1.0)设置的。即使我只使用require方法向示例chaincode添加一个包,它也会挂起,而不会返回错误

我一直在搜索一个标志或配置,在那里我可以设置链码实例化的超时值,但运气不好。在哪里可以增加超时值? 我应该提供哪一个日志,以便在搜索soution时向前迈进

感谢是前进,
Balint

您可以通过向base/peer-base.yaml docker compose文件添加
CORE\u chaincode\u startuptimeout
环境变量来修改chaincode.startuptimeout配置,该文件指定的不是默认值

有趣的。。。另请注意,我们正在为fabric中的EVM提供正式支持(可能),也就是说,我们需要查看chaincode容器中的日志。-在这里,我提供了我的同伴的日志“peer0.org1.example.com”的屏幕截图,我无法提供链码容器本身的任何特定日志,因为它根本不是由于超时而创建的。(第一个错误导致我错误地再次安装链码)您确定没有创建链码,然后在超时后将其删除吗?您可以执行“docker ps-a”并查看是否有任何容器退出。FWIW,您可以通过向base/peer-base.yaml docker compose文件中添加一个CORE_chaincode_startuptimeout环境变量来修改chaincode.startuptimeout配置,该文件指定的不是默认值。“docker ps-a”命令show no containers exit by my previous terminated one我尝试在peer-base.yaml中为CORE_CHAINCODE_STARTUPTIMEOUT变量设置几个(“大数字”)值,但我仍然得到超时错误。我假设为它提供的值以秒为单位。是否有一个最大值,或者有一个选项将其设置为未定义,从而使代码永远运行?默认值为300秒或5分钟。在与您设置的超时值一致的一段时间后,是否仍会发生故障?如果您可以通过pastebin或gist共享同行日志,我们可能会提供更多的见解。-实例化过程中目标的对等方的完整日志。我已将超时设置为600000。对于6000和600000,这两个时间都在启动后2分钟左右退出。有关如何设置超时的某些信息似乎不正确。日志显示超时被配置为0s,默认为5s,实际上是在构建链码映像超时时。我仔细检查了一下,以确保ENV变量会影响超时,并且它工作正常。您在哪里设置环境变量?在base/peer-base.yaml中?你能分享一下吗?