如何在Fabric SDK Go中添加集合配置?

I am working on adding private data into the Hyperledger using Fabric SDK Go but getting error while invoking the data.

Instantiate Chaincode

ccPolicy, err := cauthdsl.FromString("AND ('Org1MSP.member','Org2MSP.member')")

resMgmt.InstantiateCC(
    setup.Org.ChannelID,
    resmgmt.InstantiateCCRequest{
        Name:    chaincodeId,
        Path:    setup.Org.ChaincodePath,
        Version: chaincodeVersion,
        Args:    [][]byte{[]byte("init")},
        Policy:  ccPolicy,
    },resmgmt.WithRetry(retry.DefaultResMgmtOpts))

collections_config.json

[
   {
       "name": "collectionMedium",
       "policy": "AND ('Org1MSP.member', 'Org2MSP.member')",
       "requiredPeerCount": 0,
       "maxPeerCount": 3,
       "blockToLive":1000000
   },
   {
       "name": "collectionPrivate",
       "policy": "OR('Org2MSP.member')",
       "requiredPeerCount": 0,
       "maxPeerCount": 3,
       "blockToLive":5
   }
]

Invoke

product := &model.Product{id, name, color, length, width}
productBytes, err1 := json.Marshal(product)

if err1 != nil {
    return shim.Error(err1.Error())
}   

err2 := stub.PutPrivateData("collectionMedium", id, productBytes)

if err2 != nil {
    return shim.Error(err2.Error())
}

Error

Chaincode status Code: (500) UNKNOWN. Description: PUT_STATE failed: collection config not defined for chaincode [CC_ORG_V00], pass the collection configuration upon chaincode definition/instantiation

so, it says collection config is not defined during the instantiation of the chaincode. But, i don't know exactly how to add collection config in chaincode instantiation request.

please suggest me solution.

查看全部
douyue8191
douyue8191
2019/07/11 00:08
  • hyperledger
  • blockchain
  • 点赞
  • 收藏
  • 回答
    私信
满意答案
查看全部

2个回复