syntax = "proto2"; import "replication/common/request.proto"; package replication.ir.proto; message OpID { required uint64 clientid = 1; required uint64 clientreqid = 2; } message ProposeInconsistentMessage { required replication.Request req = 1; } message ReplyInconsistentMessage { required uint64 view = 1; required uint32 replicaIdx = 2; required OpID opid = 3; } message FinalizeInconsistentMessage { required OpID opid = 1; } message ConfirmMessage { required uint64 view = 1; required uint32 replicaIdx = 2; required OpID opid = 3; } message ProposeConsensusMessage { required replication.Request req = 1; } message ReplyConsensusMessage { required uint64 view = 1; required uint32 replicaIdx = 2; required OpID opid = 3; required bytes result = 4; } message FinalizeConsensusMessage { required OpID opid = 1; required bytes result = 2; } message UnloggedRequestMessage { required replication.UnloggedRequest req = 1; } message UnloggedReplyMessage { required bytes reply = 1; required uint64 clientreqid = 2; }