修改现有代言策略(Hyperledger面料)

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

我曾在Hyperledger面料blockchain网2组织开始。最近,我利用群不同的主机上增加了一个组织。当我尝试从第一或第二组织援引chaincode那么它的正常工作,我可以看到从org3更新的交易。但是,当我从org3调用事务时,我收到以下错误。

“[2019年2月6日06:44:21.895] [ERROR]调用 - 本次交易无效,代码= ENDORSEMENT_POLICY_FAILURE”

最初,chaincode使用以下策略启动。 -P “OR( 'Org1MSP.peer', 'Org2MSP.peer')”

因此,我认为我将不得不更新现有签注政策,包括org3。

任何人都可以帮助修改现有签注政策或以解决问题?

hyperledger-fabric blockchain ibm-blockchain
2个回答
1
投票

升级chaincode的方法是如下:

  • 增量含ccPackage ccRequest版本
  • 重新安装上该频道的所有单位部门的ccRequest。 例如:peer chaincode install -n mycc -v 2.0 -p github.com/chaincode/chaincode_example02/go/
  • 创建包含所需的单位部门作为广告代言人正确规则的新ccPolicy。
  • 通过运行upgradeCC命令升级chaincode 例如:peer chaincode upgrade -o orderer.example.com:7050 --tls $CORE_PEER_TLS_ENABLED --cafile $ORDERER_CA -C $CHANNEL_NAME -n mycc -v 2.0 -c '{"Args":["init","a","90","b","210"]}' -P "OR ('Org1MSP.peer','Org2MSP.peer','Org3MSP.peer')" 测试与上peer chaincode query -C $CHANNEL_NAME -n mycc -c '{"Args":["query","a"]}' chaincode查询

欲了解更多详情,请参阅docs或要求上rockerchat


0
投票

是的,你可以做到这一点使用对chaincode升级命令。

对等chaincode升级-o orderer.example.com:7050 --tls --cafile $ ORDERER_CA -C mychannel -n mycc -v 1.2 -c“{ “参数数量”:[ “初始化”, “一个”, “100”, “b”, “200”, “C”, “300”]}” -P “AND( 'Org1MSP.peer', 'Org2MSP.peer', 'Org3MSP.peer')”

参考:peer chaincode upgrade

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