0
하나의 채널에 4 명의 피어가 참여한 비즈니스 네트워크가있는 경우 피어가 트랜잭션 제안을 수락했는지, 피어가 트랜잭션을 승인했는지, 피어가 트랜잭션 페이로드를 상태 데이터베이스에 커밋했는지 확인하는 방법은 무엇입니까?하이퍼 드레거 네트워크에서 피어 유형 결정
하나의 채널에 4 명의 피어가 참여한 비즈니스 네트워크가있는 경우 피어가 트랜잭션 제안을 수락했는지, 피어가 트랜잭션을 승인했는지, 피어가 트랜잭션 페이로드를 상태 데이터베이스에 커밋했는지 확인하는 방법은 무엇입니까?하이퍼 드레거 네트워크에서 피어 유형 결정
모든 피어는 일단 처리하면 트랜잭션을 수락하거나 거절합니다. 이벤트 구독 및 트랜잭션 상태 업데이트를 수락했는지 알 수 있습니다.
트랜잭션을 보증하는 피어는 해당 SerializedIdentity를 보증서에 넣습니다. 그러므로 어느 거래 상대방이 어떤 거래를 승인했는지 알고 싶다면
var block common.Block
data := block.Data.Data
env, err := utils.GetEnvelopeFromBlock(envBytes)
payload, err := utils.GetPayload(env)
tx, err := utils.GetTransaction(payload.Data)
ccActionPayload, err := utils.GetChaincodeActionPayload(tx.Actions[0].Payload)
endorsements := ccActionPayload.Action.Endorsements
var endorsers []*peer.Endorser
for _, e := range endorsements {
endorsers = append(endorsers, e.Endorser)
}
과 같은 코드로 거래해야합니다. 피어의 하위 집합은 보증인이며 최종적으로 승인 된 트랜잭션은 새로운 블록의 일부인 채널 원장과 각 배의 모든 원장 사본에 추가됩니다. 그리고 다른 한편으로는 모든 피어가 통근자가되는 것은 아니며 동료 중 일부만이 자산을 주 데이터베이스에 커밋합니다. 내가 맞습니까? –
채널에 참여한 모든 피어는 해당 채널의 커미터입니다. – yacovm