You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

46 lines
1.5 KiB

  1. syntax = "proto3";
  2. package tendermint.proto.consensus;
  3. option go_package = "github.com/tendermint/tendermint/proto/consensus";
  4. import "third_party/proto/gogoproto/gogo.proto";
  5. import "proto/consensus/msgs.proto";
  6. import "proto/types/events.proto";
  7. import "google/protobuf/duration.proto";
  8. import "google/protobuf/timestamp.proto";
  9. // MsgInfo are msgs from the reactor which may update the state
  10. message MsgInfo {
  11. Message msg = 1 [(gogoproto.nullable) = false];
  12. string peer_id = 2 [(gogoproto.customname) = "PeerID"];
  13. }
  14. // TimeoutInfo internally generated messages which may update the state
  15. message TimeoutInfo {
  16. google.protobuf.Duration duration = 1
  17. [(gogoproto.nullable) = false, (gogoproto.stdduration) = true];
  18. int64 height = 2;
  19. int32 round = 3;
  20. uint32 step = 4;
  21. }
  22. // EndHeightMessage marks the end of the given height inside WAL.
  23. // @internal used by scripts/wal2json util.
  24. message EndHeight {
  25. int64 height = 1;
  26. }
  27. message WALMessage {
  28. oneof sum {
  29. tendermint.proto.types.EventDataRoundState event_data_round_state = 1;
  30. MsgInfo msg_info = 2;
  31. TimeoutInfo timeout_info = 3;
  32. EndHeight end_height = 4;
  33. }
  34. }
  35. // TimedWALMessage wraps WALMessage and adds Time for debugging purposes.
  36. message TimedWALMessage {
  37. google.protobuf.Timestamp time = 1 [(gogoproto.nullable) = false, (gogoproto.stdtime) = true];
  38. WALMessage msg = 2;
  39. }