consensus test passed

This commit is contained in:
William Banfield
2022-10-19 14:07:01 -04:00
parent 2786e3db55
commit cfe2ca68da
2 changed files with 13 additions and 20 deletions

View File

@@ -21,24 +21,12 @@ const (
// EncodeMsg encodes a Protobuf message
func EncodeMsg(pb proto.Message) ([]byte, error) {
msg := bcproto.Message{}
switch pb := pb.(type) {
case *bcproto.BlockRequest:
msg.Sum = &bcproto.Message_BlockRequest{BlockRequest: pb}
case *bcproto.BlockResponse:
msg.Sum = &bcproto.Message_BlockResponse{BlockResponse: pb}
case *bcproto.NoBlockResponse:
msg.Sum = &bcproto.Message_NoBlockResponse{NoBlockResponse: pb}
case *bcproto.StatusRequest:
msg.Sum = &bcproto.Message_StatusRequest{StatusRequest: pb}
case *bcproto.StatusResponse:
msg.Sum = &bcproto.Message_StatusResponse{StatusResponse: pb}
default:
return nil, fmt.Errorf("unknown message type %T", pb)
msg, err := toWrappedMessage(pb)
if err != nil {
return nil, err
}
bz, err := proto.Marshal(&msg)
bz, err := proto.Marshal(msg)
if err != nil {
return nil, fmt.Errorf("unable to marshal %T: %w", pb, err)
}

View File

@@ -149,12 +149,17 @@ func (bcR *Reactor) GetChannels() []*p2p.ChannelDescriptor {
// AddPeer implements Reactor by sending our state to peer.
func (bcR *Reactor) AddPeer(peer p2p.Peer) {
msg, err := toWrappedMessage(&bcproto.StatusResponse{
Base: bcR.store.Base(),
Height: bcR.store.Height(),
})
if err != nil {
bcR.Logger.Error("could not convert msg to proto", "err", err)
return
}
e := p2p.Envelope{
ChannelID: BlocksyncChannel,
Message: &bcproto.StatusResponse{
Base: bcR.store.Base(),
Height: bcR.store.Height(),
},
Message: msg,
}
peer.Send(e)
// it's OK if send fails. will try later in poolRoutine