使用End2endIT测试连接到同一频道的两个组织。实例化链码时第二个失败了

问题描述 投票:0回答:1

我能够成功地在End2endIT(可从github获得)中运行fabric-sdk-java-1.1.0

End2endIT中,在设置之后,我们让peerOrg1创建并连接到FOO通道,安装,实例化链代码然后执行一些操作。然后我们有一个不同的组织,peerOrg2,做类似的事情,但在不同的渠道,BAR

为了测试连接到同一个通道的两个组织,我对End2endIT进行了一些修改以测试它,因此peerOrg1peerOrg2都将连接到FOO通道。

peerOrg1没有任何变化。对于peerOrg2,由于FOO频道已由peerOrg1创建,我打电话给

Channel newChannel = sampleStore.getChannel(client, name);

获取频道而不是调用client.newChannel

无论在哪里调用channel.getPeer()channel.getEventHubs(),我都确保只使用正确起源的peerseventHubs(对于peerOrg2)。

由于peerOrg1已经安装了链代码,因此无需再次安装链代码,但需要为刚刚加入通道的peerOrg2的两个对等实例化链代码。

InstantiationProposal发送给同行(或peerOrg2)并成功获得回复时没有问题。

但是当我发送交易订单(InstantiationProposal)时,我得到了

Caused by: org.hyperledger.fabric.sdk.exception.TransactionEventException: Received invalid transaction event. Transaction ID 897902a02ad4285e9827f0cfa14244e2fc5fa21f9819f3be4f698f94d98c185c status 10
    at org.hyperledger.fabric.sdk.Channel$TL.lambda$2(Channel.java:4458)
    ... 3 more

我是朝着正确的方向吗?错误中10的状态是什么意思?

java hyperledger-fabric
1个回答
0
投票

Chaincode只需要在同一个通道中实例化一次,因此第二个实例化不是必需的。

© www.soinside.com 2019 - 2024. All rights reserved.