blob: a5258b3dc0268c243f64b2c709155934cc4a778a [file] [log] [blame]
// Licensed to the Apache Software Foundation (ASF) under one
// or more contributor license agreements. See the NOTICE file
// distributed with this work for additional information
// regarding copyright ownership. The ASF licenses this file
// to you under the Apache License, Version 2.0 (the
// "License"); you may not use this file except in compliance
// with the License. You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing,
// software distributed under the License is distributed on an
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
// KIND, either express or implied. See the License for the
// specific language governing permissions and limitations
// under the License.
syntax = "proto2";
package heron.proto.stmgr;
option java_package = "org.apache.heron.proto.stmgr";
option java_outer_classname = "StreamManager";
import "common.proto";
import "physical_plan.proto";
//
// Messages sent by topologymaster
//
message NewPhysicalPlanMessage {
required heron.proto.system.PhysicalPlan new_pplan = 1;
}
//
// Request/Responses by the instance
//
message RegisterInstanceRequest {
// Information about the instance registering with us
required heron.proto.system.Instance instance = 1;
required string topology_name = 2;
required string topology_id = 3;
}
message RegisterInstanceResponse {
required heron.proto.system.Status status = 1;
// If the assignment is known, send it
optional heron.proto.system.PhysicalPlan pplan = 2;
}
message NewInstanceAssignmentMessage {
required heron.proto.system.PhysicalPlan pplan = 1;
}
// messages exchanged between stream managers
message StrMgrHelloRequest {
required string topology_name = 1;
required string topology_id = 2;
required string stmgr = 3;
}
message StrMgrHelloResponse {
required heron.proto.system.Status status = 1;
}
message StartBackPressureMessage {
required string topology_name = 1;
required string topology_id = 2;
required string stmgr = 3;
required string message_id = 4;
}
message StopBackPressureMessage {
required string topology_name = 1;
required string topology_id = 2;
required string stmgr = 3;
required string message_id = 4;
}
// Tuples exchanged between stream managers
message TupleStreamMessage {
// The src_task of this message
required int32 src_task_id = 3;
// This is actually the destination task_id
required int32 task_id = 1;
// serialized data
required bytes set = 2;
// number of tuples in serialized data tuples only
required int32 num_tuples = 4;
}