From d7c28a6d2cfc769dc9a9c3886e6ee5087f67904d Mon Sep 17 00:00:00 2001 From: Someshwar Tripathi Date: Wed, 24 May 2023 10:26:50 +0530 Subject: [PATCH 1/2] Fixes peer chaincode error message formatting Uses proto.MarshalTextString to insert the protocol buffer response message into the error string --- internal/peer/chaincode/common.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/internal/peer/chaincode/common.go b/internal/peer/chaincode/common.go index 169f975c9e3..003747edc99 100644 --- a/internal/peer/chaincode/common.go +++ b/internal/peer/chaincode/common.go @@ -154,7 +154,7 @@ func chaincodeInvokeOrQuery(cmd *cobra.Command, invoke bool, cf *ChaincodeCmdFac return errors.WithMessage(err, "error while unmarshalling chaincode action") } if proposalResp.Endorsement == nil { - return errors.Errorf("endorsement failure during invoke. response: %v", proposalResp.Response) + return errors.Errorf("endorsement failure during invoke. response: %v", proto.MarshalTextString(proposalResp.Response)) } logger.Infof("Chaincode invoke successful. result: %v", ca.Response) } else { @@ -162,7 +162,7 @@ func chaincodeInvokeOrQuery(cmd *cobra.Command, invoke bool, cf *ChaincodeCmdFac return errors.New("error during query: received nil proposal response") } if proposalResp.Endorsement == nil { - return errors.Errorf("endorsement failure during query. response: %v", proposalResp.Response) + return errors.Errorf("endorsement failure during query. response: %v", proto.MarshalTextString(proposalResp.Response)) } if chaincodeQueryRaw && chaincodeQueryHex { From 017c38308bcdffa07cfed559923ca28642a5badb Mon Sep 17 00:00:00 2001 From: David Enyeart Date: Wed, 30 Aug 2023 12:34:55 -0400 Subject: [PATCH 2/2] Fix error message unit test Fix error message unit test. Signed-off-by: David Enyeart --- internal/peer/chaincode/query_test.go | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/internal/peer/chaincode/query_test.go b/internal/peer/chaincode/query_test.go index 9d15de866d3..41e63a8874e 100644 --- a/internal/peer/chaincode/query_test.go +++ b/internal/peer/chaincode/query_test.go @@ -80,7 +80,8 @@ func TestQueryCmdEndorsementFailure(t *testing.T) { err = cmd.Execute() require.Error(t, err) require.Regexp(t, "endorsement failure during query", err.Error()) - require.Regexp(t, fmt.Sprintf("response: status:%d payload:\"%s\"", ccRespStatus[i], ccRespPayload[i]), err.Error()) + require.Regexp(t, fmt.Sprintf("status: %d", ccRespStatus[i]), err.Error()) + require.Regexp(t, fmt.Sprintf("payload: \"%s\"", ccRespPayload[i]), err.Error()) } // failure - nil proposal response