私は2つのチェーンコードを持っています - それをAとBと呼びましょう - プライバシーを有効にした設定でBにメソッドを呼び出そうとしています。私が作ろうとしているコールの一例を以下に示します。私はこれを実行しようとするたびプライバシーを有効にしたチェーンコード間でクエリを渡す
func (e *ChaincodeA) someFuncOnChaincodeA(stub *shim.ChaincodeStub, args []string) ([]byte, error) {
//Do stuff
newArgs := []string{"somevalue1","somevalue2"}
msg, err := stub.InvokeChaincode(chaincodeBName,"someFuncOnChaincodeB",args)
if err != nil{
fmt.Println(err.Error())
}
return msg, err
}
しかし、それは私のchaincodeを殺す前に、私に次のエラーメッセージを与える:
[72047168]エラーchaincode-chaincodeの相互作用が有効になってプライバシーを ではサポートされません。メッセージを処理 エラー:レディ
:(完成品) [72047168-5f5a-4017-862a-1329660e2076] ChaincodeハンドラFSMができない ハンドルメッセージをペイロードサイズ(0)状態の間で単純chaincodeを開始エラーエラーを送信
プロセスは0
明らかプライバシーchaincode-chaincode通信を妨害終了コードで終了。これを回避する方法はありますか?プライバシーを維持しながらコミュニケーションを可能にする方法はありますか?あるいは、絶対にすべてを1つの巨大なチェーンコードに入れるのがベストプラクティスですか?
さらに、プライバシーがチェーンコードチェーンコード通信を妨害するのはなぜですか?なぜ私はこれが起こるのか正確には分かりません。