blob: 48011bf24046d1adf8a80158d039e65f283fa749 [file] [log] [blame]
package exec.rpc;
option java_package = "org.apache.drill.exec.proto";
option java_outer_classname = "GeneralRPCProtos";
option optimize_for = SPEED;
import "Coordination.proto";
message Ack{
optional bool ok = 1;
}
enum RpcMode {
REQUEST = 0;
RESPONSE = 1;
RESPONSE_FAILURE = 2;
}
message RpcHeader{
optional RpcMode mode = 1;
optional int32 coordination_id = 2; // reusable coordination identifier. Sender defines. Server returns on return. Irrelevant for purely single direction rpc.
optional int32 rpc_type = 3; // a rpc mode specific rpc type.
}
message CompleteRpcMessage {
optional RpcHeader header = 1; // required
optional bytes protobuf_body = 2; // required
optional bytes raw_body = 3; // optional
}
// Class to be used when an unexpected exception occurs while a rpc call is being evaluated.
message RpcFailure {
optional int64 error_id = 1; // for server trackback.
optional int32 error_code = 2; // system defined error code.
optional string short_error = 3;
optional string long_error = 4;
}