| /** |
| * 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 hbase.pb; |
| |
| option java_package = "org.apache.hadoop.hbase.shaded.protobuf.generated"; |
| option java_outer_classname = "MasterProcedureProtos"; |
| option java_generic_services = true; |
| option java_generate_equals_and_hash = true; |
| option optimize_for = SPEED; |
| |
| import "HBase.proto"; |
| import "rpc/RPC.proto"; |
| import "server/Snapshot.proto"; |
| import "server/master/Replication.proto"; |
| import "server/master/RegionServerStatus.proto"; |
| |
| // ============================================================================ |
| // WARNING - Compatibility rules |
| // ============================================================================ |
| // This .proto contains the data serialized by the master procedures. |
| // Each procedure has some state stored to know, which step were executed |
| // and what were the parameters or data created by the previous steps. |
| // new code should be able to handle the old format or at least fail cleanly |
| // triggering a rollback/cleanup. |
| // |
| // Procedures that are inheriting from a StateMachineProcedure have an enum: |
| // - Do not change the number of the 'State' enums. |
| // doing so, will cause executing the wrong 'step' on the pending |
| // procedures when they will be replayed. |
| // - Do not remove items from the enum, new code must be able to handle |
| // all the previous 'steps'. There may be pending procedure ready to be |
| // recovered replayed. alternative you can make sure that not-known state |
| // will result in a failure that will rollback the already executed steps. |
| // ============================================================================ |
| |
| enum CreateTableState { |
| CREATE_TABLE_PRE_OPERATION = 1; |
| CREATE_TABLE_WRITE_FS_LAYOUT = 2; |
| CREATE_TABLE_ADD_TO_META = 3; |
| CREATE_TABLE_ASSIGN_REGIONS = 4; |
| CREATE_TABLE_UPDATE_DESC_CACHE = 5; |
| CREATE_TABLE_POST_OPERATION = 6; |
| CREATE_TABLE_SET_ERASURE_CODING_POLICY = 7; |
| } |
| |
| message CreateTableStateData { |
| required UserInformation user_info = 1; |
| required TableSchema table_schema = 2; |
| repeated RegionInfo region_info = 3; |
| } |
| |
| enum ModifyTableState { |
| MODIFY_TABLE_PREPARE = 1; |
| MODIFY_TABLE_PRE_OPERATION = 2; |
| MODIFY_TABLE_UPDATE_TABLE_DESCRIPTOR = 3; |
| MODIFY_TABLE_REMOVE_REPLICA_COLUMN = 4; |
| MODIFY_TABLE_DELETE_FS_LAYOUT = 5; |
| MODIFY_TABLE_POST_OPERATION = 6; |
| MODIFY_TABLE_REOPEN_ALL_REGIONS = 7; |
| MODIFY_TABLE_CLOSE_EXCESS_REPLICAS = 8; |
| MODIFY_TABLE_ASSIGN_NEW_REPLICAS = 9; |
| MODIFY_TABLE_SYNC_ERASURE_CODING_POLICY = 10; |
| } |
| |
| message ModifyTableStateData { |
| required UserInformation user_info = 1; |
| optional TableSchema unmodified_table_schema = 2; |
| required TableSchema modified_table_schema = 3; |
| required bool delete_column_family_in_modify = 4; |
| optional bool should_check_descriptor = 5; |
| optional bool reopen_regions = 6; |
| } |
| |
| enum TruncateTableState { |
| TRUNCATE_TABLE_PRE_OPERATION = 1; |
| TRUNCATE_TABLE_REMOVE_FROM_META = 2; |
| TRUNCATE_TABLE_CLEAR_FS_LAYOUT = 3; |
| TRUNCATE_TABLE_CREATE_FS_LAYOUT = 4; |
| TRUNCATE_TABLE_ADD_TO_META = 5; |
| TRUNCATE_TABLE_ASSIGN_REGIONS = 6; |
| TRUNCATE_TABLE_POST_OPERATION = 7; |
| } |
| |
| message TruncateTableStateData { |
| required UserInformation user_info = 1; |
| required bool preserve_splits = 2; |
| optional TableName table_name = 3; |
| optional TableSchema table_schema = 4; |
| repeated RegionInfo region_info = 5; |
| } |
| |
| enum TruncateRegionState { |
| TRUNCATE_REGION_PRE_OPERATION = 1; |
| TRUNCATE_REGION_MAKE_OFFLINE = 2; |
| TRUNCATE_REGION_REMOVE = 3; |
| TRUNCATE_REGION_MAKE_ONLINE = 4; |
| TRUNCATE_REGION_POST_OPERATION = 5; |
| } |
| |
| enum DeleteTableState { |
| DELETE_TABLE_PRE_OPERATION = 1; |
| DELETE_TABLE_REMOVE_FROM_META = 2; |
| DELETE_TABLE_CLEAR_FS_LAYOUT = 3; |
| DELETE_TABLE_UPDATE_DESC_CACHE = 4; |
| DELETE_TABLE_UNASSIGN_REGIONS = 5; |
| DELETE_TABLE_POST_OPERATION = 6; |
| } |
| |
| message DeleteTableStateData { |
| required UserInformation user_info = 1; |
| required TableName table_name = 2; |
| repeated RegionInfo region_info = 3; |
| } |
| |
| enum CreateNamespaceState { |
| CREATE_NAMESPACE_PREPARE = 1; |
| CREATE_NAMESPACE_CREATE_DIRECTORY = 2; |
| CREATE_NAMESPACE_INSERT_INTO_NS_TABLE = 3; |
| CREATE_NAMESPACE_UPDATE_ZK = 4[deprecated=true]; |
| CREATE_NAMESPACE_SET_NAMESPACE_QUOTA = 5; |
| } |
| |
| message CreateNamespaceStateData { |
| required NamespaceDescriptor namespace_descriptor = 1; |
| } |
| |
| enum ModifyNamespaceState { |
| MODIFY_NAMESPACE_PREPARE = 1; |
| MODIFY_NAMESPACE_UPDATE_NS_TABLE = 2; |
| MODIFY_NAMESPACE_UPDATE_ZK = 3[deprecated=true]; |
| } |
| |
| message ModifyNamespaceStateData { |
| required NamespaceDescriptor namespace_descriptor = 1; |
| optional NamespaceDescriptor unmodified_namespace_descriptor = 2; |
| } |
| |
| enum DeleteNamespaceState { |
| DELETE_NAMESPACE_PREPARE = 1; |
| DELETE_NAMESPACE_DELETE_FROM_NS_TABLE = 2; |
| DELETE_NAMESPACE_REMOVE_FROM_ZK = 3[deprecated=true]; |
| DELETE_NAMESPACE_DELETE_DIRECTORIES = 4; |
| DELETE_NAMESPACE_REMOVE_NAMESPACE_QUOTA = 5; |
| } |
| |
| message DeleteNamespaceStateData { |
| required string namespace_name = 1; |
| optional NamespaceDescriptor namespace_descriptor = 2; |
| } |
| |
| enum EnableTableState { |
| ENABLE_TABLE_PREPARE = 1; |
| ENABLE_TABLE_PRE_OPERATION = 2; |
| ENABLE_TABLE_SET_ENABLING_TABLE_STATE = 3; |
| ENABLE_TABLE_MARK_REGIONS_ONLINE = 4; |
| ENABLE_TABLE_SET_ENABLED_TABLE_STATE = 5; |
| ENABLE_TABLE_POST_OPERATION = 6; |
| } |
| |
| message EnableTableStateData { |
| required UserInformation user_info = 1; |
| required TableName table_name = 2; |
| // not used any more, always false |
| required bool skip_table_state_check = 3[deprecated=true]; |
| } |
| |
| enum DisableTableState { |
| DISABLE_TABLE_PREPARE = 1; |
| DISABLE_TABLE_PRE_OPERATION = 2; |
| DISABLE_TABLE_SET_DISABLING_TABLE_STATE = 3; |
| DISABLE_TABLE_MARK_REGIONS_OFFLINE = 4; |
| DISABLE_TABLE_SET_DISABLED_TABLE_STATE = 5; |
| DISABLE_TABLE_POST_OPERATION = 6; |
| DISABLE_TABLE_ADD_REPLICATION_BARRIER = 7; |
| } |
| |
| message DisableTableStateData { |
| required UserInformation user_info = 1; |
| required TableName table_name = 2; |
| required bool skip_table_state_check = 3; |
| } |
| |
| message RestoreParentToChildRegionsPair { |
| required string parent_region_name = 1; |
| required string child1_region_name = 2; |
| required string child2_region_name = 3; |
| } |
| |
| enum FlushTableState { |
| FLUSH_TABLE_PREPARE = 1; |
| FLUSH_TABLE_FLUSH_REGIONS = 2; |
| } |
| |
| message FlushTableProcedureStateData { |
| required TableName table_name = 1; |
| repeated bytes column_family = 2; |
| } |
| |
| message FlushRegionProcedureStateData { |
| required RegionInfo region = 1; |
| repeated bytes column_family = 2; |
| } |
| |
| message FlushRegionParameter { |
| required RegionInfo region = 1; |
| repeated bytes column_family = 2; |
| } |
| |
| enum SnapshotState { |
| SNAPSHOT_PREPARE = 1; |
| SNAPSHOT_PRE_OPERATION = 2; |
| SNAPSHOT_WRITE_SNAPSHOT_INFO = 3; |
| SNAPSHOT_SNAPSHOT_ONLINE_REGIONS = 4; |
| SNAPSHOT_SNAPSHOT_SPLIT_REGIONS = 5; |
| SNAPSHOT_SNAPSHOT_CLOSED_REGIONS = 6; |
| SNAPSHOT_SNAPSHOT_MOB_REGION = 7; |
| SNAPSHOT_CONSOLIDATE_SNAPSHOT = 8; |
| SNAPSHOT_VERIFIER_SNAPSHOT = 9; |
| SNAPSHOT_COMPLETE_SNAPSHOT = 10; |
| SNAPSHOT_POST_OPERATION = 11; |
| } |
| |
| message SnapshotProcedureStateData { |
| required SnapshotDescription snapshot = 1; |
| } |
| |
| message SnapshotRegionProcedureStateData { |
| required RegionInfo region = 1; |
| required SnapshotDescription snapshot = 2; |
| } |
| |
| message SnapshotRegionParameter { |
| required RegionInfo region = 1; |
| required SnapshotDescription snapshot = 2; |
| } |
| |
| message SnapshotVerifyProcedureStateData { |
| required SnapshotDescription snapshot = 1; |
| required RegionInfo region = 2; |
| optional ServerName target_server = 3; |
| } |
| |
| message SnapshotVerifyParameter { |
| required SnapshotDescription snapshot = 1; |
| required RegionInfo region = 2; |
| } |
| |
| enum CloneSnapshotState { |
| CLONE_SNAPSHOT_PRE_OPERATION = 1; |
| CLONE_SNAPSHOT_WRITE_FS_LAYOUT = 2; |
| CLONE_SNAPSHOT_ADD_TO_META = 3; |
| CLONE_SNAPSHOT_ASSIGN_REGIONS = 4; |
| CLONE_SNAPSHOT_UPDATE_DESC_CACHE = 5; |
| CLONE_SNAPSHOT_POST_OPERATION = 6; |
| CLONE_SNAPHOST_RESTORE_ACL = 7; |
| CLONE_SNAPSHOT_SET_ERASURE_CODING_POLICY = 8; |
| } |
| |
| message CloneSnapshotStateData { |
| required UserInformation user_info = 1; |
| required SnapshotDescription snapshot = 2; |
| required TableSchema table_schema = 3; |
| repeated RegionInfo region_info = 4; |
| repeated RestoreParentToChildRegionsPair parent_to_child_regions_pair_list = 5; |
| optional bool restore_acl = 6; |
| optional string customSFT = 7; |
| } |
| |
| enum RestoreSnapshotState { |
| RESTORE_SNAPSHOT_PRE_OPERATION = 1; |
| RESTORE_SNAPSHOT_UPDATE_TABLE_DESCRIPTOR = 2; |
| RESTORE_SNAPSHOT_WRITE_FS_LAYOUT = 3; |
| RESTORE_SNAPSHOT_UPDATE_META = 4; |
| RESTORE_SNAPSHOT_RESTORE_ACL = 5; |
| RESTORE_SNAPSHOT_SYNC_ERASURE_CODING_POLICY = 6; |
| } |
| |
| message RestoreSnapshotStateData { |
| required UserInformation user_info = 1; |
| required SnapshotDescription snapshot = 2; |
| required TableSchema modified_table_schema = 3; |
| repeated RegionInfo region_info_for_restore = 4; |
| repeated RegionInfo region_info_for_remove = 5; |
| repeated RegionInfo region_info_for_add = 6; |
| repeated RestoreParentToChildRegionsPair parent_to_child_regions_pair_list = 7; |
| optional bool restore_acl = 8; |
| required TableSchema old_table_schema = 9; |
| } |
| |
| enum DispatchMergingRegionsState { |
| DISPATCH_MERGING_REGIONS_PREPARE = 1; |
| DISPATCH_MERGING_REGIONS_PRE_OPERATION = 2; |
| DISPATCH_MERGING_REGIONS_MOVE_REGION_TO_SAME_RS = 3; |
| DISPATCH_MERGING_REGIONS_DO_MERGE_IN_RS = 4; |
| DISPATCH_MERGING_REGIONS_POST_OPERATION = 5; |
| } |
| |
| message DispatchMergingRegionsStateData { |
| required UserInformation user_info = 1; |
| required TableName table_name = 2; |
| repeated RegionInfo region_info = 3; |
| optional bool forcible = 4; |
| } |
| |
| enum SplitTableRegionState { |
| SPLIT_TABLE_REGION_PREPARE = 1; |
| SPLIT_TABLE_REGION_PRE_OPERATION = 2; |
| SPLIT_TABLE_REGION_CLOSE_PARENT_REGION = 3; |
| SPLIT_TABLE_REGION_CREATE_DAUGHTER_REGIONS = 4; |
| SPLIT_TABLE_REGION_WRITE_MAX_SEQUENCE_ID_FILE = 5; |
| SPLIT_TABLE_REGION_PRE_OPERATION_BEFORE_META = 6; |
| SPLIT_TABLE_REGION_UPDATE_META = 7; |
| SPLIT_TABLE_REGION_PRE_OPERATION_AFTER_META = 8; |
| SPLIT_TABLE_REGION_OPEN_CHILD_REGIONS = 9; |
| SPLIT_TABLE_REGION_POST_OPERATION = 10; |
| SPLIT_TABLE_REGIONS_CHECK_CLOSED_REGIONS = 11; |
| } |
| |
| message SplitTableRegionStateData { |
| required UserInformation user_info = 1; |
| required RegionInfo parent_region_info = 2; |
| repeated RegionInfo child_region_info = 3; |
| } |
| |
| enum MergeTableRegionsState { |
| MERGE_TABLE_REGIONS_PREPARE = 1; |
| MERGE_TABLE_REGIONS_PRE_OPERATION = 2; |
| MERGE_TABLE_REGIONS_PRE_MERGE_OPERATION = 3; |
| MERGE_TABLE_REGIONS_CLOSE_REGIONS = 4; |
| MERGE_TABLE_REGIONS_CREATE_MERGED_REGION = 5; |
| MERGE_TABLE_REGIONS_WRITE_MAX_SEQUENCE_ID_FILE = 6; |
| MERGE_TABLE_REGIONS_PRE_MERGE_COMMIT_OPERATION = 7; |
| MERGE_TABLE_REGIONS_UPDATE_META = 8; |
| MERGE_TABLE_REGIONS_POST_MERGE_COMMIT_OPERATION = 9; |
| MERGE_TABLE_REGIONS_OPEN_MERGED_REGION = 10; |
| MERGE_TABLE_REGIONS_POST_OPERATION = 11; |
| MERGE_TABLE_REGIONS_CHECK_CLOSED_REGIONS = 12; |
| } |
| |
| message MergeTableRegionsStateData { |
| required UserInformation user_info = 1; |
| repeated RegionInfo region_info = 2; |
| optional RegionInfo merged_region_info = 3; |
| optional bool forcible = 4 [default = false]; |
| } |
| |
| |
| message ServerCrashStateData { |
| required ServerName server_name = 1; |
| // optional bool DEPRECATED_distributed_log_replay = 2; |
| repeated RegionInfo regions_on_crashed_server = 3; |
| repeated RegionInfo regions_assigned = 4; |
| optional bool carrying_meta = 5; |
| optional bool should_split_wal = 6 [default = true]; |
| } |
| |
| message RecoverMetaStateData { |
| optional ServerName failed_meta_server = 1; |
| optional bool should_split_wal = 2 [default = true]; |
| optional int32 replica_id = 3 [default = 0]; |
| } |
| |
| enum ServerCrashState { |
| SERVER_CRASH_START = 1; |
| SERVER_CRASH_PROCESS_META = 2[deprecated=true]; |
| SERVER_CRASH_GET_REGIONS = 3; |
| SERVER_CRASH_NO_SPLIT_LOGS = 4[deprecated=true]; |
| SERVER_CRASH_SPLIT_LOGS = 5; |
| // Removed SERVER_CRASH_PREPARE_LOG_REPLAY = 6; |
| // Removed SERVER_CRASH_CALC_REGIONS_TO_ASSIGN = 7; |
| SERVER_CRASH_ASSIGN = 8; |
| SERVER_CRASH_WAIT_ON_ASSIGN = 9; |
| SERVER_CRASH_SPLIT_META_LOGS = 10; |
| SERVER_CRASH_ASSIGN_META = 11; |
| SERVER_CRASH_DELETE_SPLIT_META_WALS_DIR = 12; |
| SERVER_CRASH_DELETE_SPLIT_WALS_DIR = 13; |
| SERVER_CRASH_CLAIM_REPLICATION_QUEUES = 14; |
| SERVER_CRASH_HANDLE_RIT2 = 20[deprecated=true]; |
| SERVER_CRASH_FINISH = 100; |
| } |
| |
| enum RecoverMetaState { |
| RECOVER_META_PREPARE = 0; |
| RECOVER_META_SPLIT_LOGS = 1; |
| RECOVER_META_ASSIGN_REGIONS = 2; |
| } |
| |
| enum RegionTransitionState { |
| REGION_TRANSITION_QUEUE = 1; |
| REGION_TRANSITION_DISPATCH = 2; |
| REGION_TRANSITION_FINISH = 3; |
| } |
| |
| message AssignRegionStateData { |
| required RegionTransitionState transition_state = 1; |
| required RegionInfo region_info = 2; |
| optional bool force_new_plan = 3 [default = false]; |
| optional ServerName target_server = 4; |
| // Current attempt index used for expotential backoff when stuck |
| optional int32 attempt = 5; |
| } |
| |
| message UnassignRegionStateData { |
| required RegionTransitionState transition_state = 1; |
| required RegionInfo region_info = 2; |
| // This is optional info; it is the servername we will |
| // subsequently assign the region too... it may be null. |
| optional ServerName destination_server = 3; |
| // This is the server currently hosting the Region, the |
| // server we will send the unassign rpc too. |
| optional ServerName hosting_server = 5; |
| // This parameter is ignored |
| optional bool force = 4 [default = false]; |
| optional bool remove_after_unassigning = 6 [default = false]; |
| // Current attempt index used for expotential backoff when stuck |
| optional int32 attempt = 7; |
| } |
| |
| enum MoveRegionState { |
| MOVE_REGION_PREPARE = 0; |
| MOVE_REGION_UNASSIGN = 1; |
| MOVE_REGION_ASSIGN = 2; |
| } |
| |
| message MoveRegionStateData { |
| optional RegionInfo region_info = 1; |
| required ServerName source_server = 2; |
| // if destination server not specified, its selected with load balancer |
| optional ServerName destination_server = 3; |
| } |
| |
| enum GCRegionState { |
| GC_REGION_PREPARE = 1; |
| GC_REGION_ARCHIVE = 2; |
| GC_REGION_PURGE_METADATA = 3; |
| } |
| |
| message GCRegionStateData { |
| required RegionInfo region_info = 1; |
| } |
| |
| // NOTE: This message is used by GCMergedRegionStateProcedure |
| // AND GCMultipleMergedRegionStateProcedure. |
| enum GCMergedRegionsState { |
| GC_MERGED_REGIONS_PREPARE = 1; |
| GC_MERGED_REGIONS_PURGE = 2; |
| GC_REGION_EDIT_METADATA = 3; |
| } |
| |
| message GCMergedRegionsStateData { |
| // Use GCMultipleMergedRegionsStateData instead. |
| option deprecated = true; |
| required RegionInfo parent_a = 1; |
| required RegionInfo parent_b = 2; |
| required RegionInfo merged_child = 3; |
| } |
| |
| message GCMultipleMergedRegionsStateData { |
| repeated RegionInfo parents = 1; |
| required RegionInfo merged_child = 2; |
| } |
| |
| enum PeerModificationState { |
| PRE_PEER_MODIFICATION = 1; |
| UPDATE_PEER_STORAGE = 2; |
| REFRESH_PEER_ON_RS = 3; |
| SERIAL_PEER_REOPEN_REGIONS = 4; |
| SERIAL_PEER_UPDATE_LAST_PUSHED_SEQ_ID = 5; |
| SERIAL_PEER_SET_PEER_ENABLED = 6; |
| SERIAL_PEER_ENABLE_PEER_REFRESH_PEER_ON_RS = 7; |
| POST_PEER_MODIFICATION = 8; |
| } |
| |
| enum PeerSyncReplicationStateTransitionState { |
| PRE_PEER_SYNC_REPLICATION_STATE_TRANSITION = 1; |
| SET_PEER_NEW_SYNC_REPLICATION_STATE = 2; |
| REFRESH_PEER_SYNC_REPLICATION_STATE_ON_RS_BEGIN = 3; |
| REOPEN_ALL_REGIONS_IN_PEER = 4; |
| SYNC_REPLICATION_UPDATE_LAST_PUSHED_SEQ_ID_FOR_SERIAL_PEER = 5; |
| REPLAY_REMOTE_WAL_IN_PEER = 6; |
| REMOVE_ALL_REPLICATION_QUEUES_IN_PEER = 7; |
| TRANSIT_PEER_NEW_SYNC_REPLICATION_STATE = 8; |
| REFRESH_PEER_SYNC_REPLICATION_STATE_ON_RS_END = 9; |
| SYNC_REPLICATION_SET_PEER_ENABLED = 10; |
| SYNC_REPLICATION_ENABLE_PEER_REFRESH_PEER_ON_RS = 11; |
| CREATE_DIR_FOR_REMOTE_WAL = 12; |
| POST_PEER_SYNC_REPLICATION_STATE_TRANSITION = 13; |
| } |
| |
| message PeerModificationStateData { |
| required string peer_id = 1; |
| } |
| |
| enum PeerModificationType { |
| ADD_PEER = 1; |
| REMOVE_PEER = 2; |
| ENABLE_PEER = 3; |
| DISABLE_PEER = 4; |
| UPDATE_PEER_CONFIG = 5; |
| TRANSIT_SYNC_REPLICATION_STATE = 6; |
| } |
| |
| message RefreshPeerStateData { |
| required string peer_id = 1; |
| required PeerModificationType type = 2; |
| required ServerName target_server = 3; |
| /** We need multiple stages for sync replication state transition **/ |
| optional uint32 stage = 4 [default = 0]; |
| } |
| |
| message RefreshPeerParameter { |
| required string peer_id = 1; |
| required PeerModificationType type = 2; |
| required ServerName target_server = 3; |
| /** We need multiple stages for sync replication state transition **/ |
| optional uint32 stage = 4 [default = 0];; |
| } |
| |
| message PeerProcedureStateData { |
| required string peer_id = 1; |
| } |
| |
| message AddPeerStateData { |
| required ReplicationPeer peer_config = 1; |
| required bool enabled = 2; |
| } |
| |
| message UpdatePeerConfigStateData { |
| required ReplicationPeer peer_config = 1; |
| optional ReplicationPeer old_peer_config = 2; |
| required bool enabled = 3; |
| } |
| |
| message RemovePeerStateData { |
| optional ReplicationPeer peer_config = 1; |
| repeated int64 ongoing_assign_replication_queues_proc_ids = 2; |
| } |
| |
| message EnablePeerStateData { |
| } |
| |
| message DisablePeerStateData { |
| } |
| |
| enum ReopenTableRegionsState { |
| REOPEN_TABLE_REGIONS_GET_REGIONS = 1; |
| REOPEN_TABLE_REGIONS_REOPEN_REGIONS = 2; |
| REOPEN_TABLE_REGIONS_CONFIRM_REOPENED = 3; |
| } |
| |
| message ReopenTableRegionsStateData { |
| required TableName table_name = 1; |
| repeated RegionLocation region = 2; |
| repeated bytes region_names = 3; |
| } |
| |
| enum InitMetaState { |
| INIT_META_WRITE_FS_LAYOUT = 1; |
| INIT_META_ASSIGN_META = 2; |
| INIT_META_CREATE_NAMESPACES = 3; |
| } |
| |
| message InitMetaStateData { |
| } |
| |
| message TransitPeerSyncReplicationStateStateData { |
| /** Could be null if we fail in pre check, so optional */ |
| optional SyncReplicationState fromState = 1; |
| required SyncReplicationState toState = 2; |
| } |
| |
| enum RecoverStandbyState { |
| RENAME_SYNC_REPLICATION_WALS_DIR = 1; |
| REGISTER_PEER_TO_WORKER_STORAGE = 2; |
| DISPATCH_WALS = 3; |
| UNREGISTER_PEER_FROM_WORKER_STORAGE = 4; |
| SNAPSHOT_SYNC_REPLICATION_WALS_DIR = 5; |
| } |
| |
| enum SyncReplicationReplayWALState { |
| ASSIGN_WORKER = 1; |
| DISPATCH_WALS_TO_WORKER = 2; |
| RELEASE_WORKER = 3; |
| } |
| |
| message RecoverStandbyStateData { |
| required bool serial = 1; |
| } |
| |
| message SyncReplicationReplayWALStateData { |
| required string peer_id = 1; |
| repeated string wal = 2; |
| optional ServerName worker = 3; |
| } |
| |
| message SyncReplicationReplayWALRemoteStateData { |
| required string peer_id = 1; |
| repeated string wal = 2; |
| required ServerName target_server = 3; |
| } |
| |
| message ReplaySyncReplicationWALParameter { |
| required string peer_id = 1; |
| repeated string wal = 2; |
| } |
| |
| enum RegionStateTransitionState { |
| REGION_STATE_TRANSITION_GET_ASSIGN_CANDIDATE = 1; |
| REGION_STATE_TRANSITION_OPEN = 2; |
| REGION_STATE_TRANSITION_CONFIRM_OPENED = 3; |
| REGION_STATE_TRANSITION_CLOSE = 4; |
| REGION_STATE_TRANSITION_CONFIRM_CLOSED = 5; |
| } |
| |
| enum RegionTransitionType { |
| ASSIGN = 1; |
| UNASSIGN = 2; |
| MOVE = 3; |
| REOPEN = 4; |
| } |
| |
| message RegionStateTransitionStateData { |
| required RegionTransitionType type = 1; |
| optional ServerName assign_candidate = 2; |
| required bool force_new_plan = 3; |
| optional bool is_split = 4 [default = false]; |
| optional bool evict_cache = 5 [default = false]; |
| } |
| |
| enum RegionRemoteProcedureBaseState { |
| REGION_REMOTE_PROCEDURE_DISPATCH = 1; |
| REGION_REMOTE_PROCEDURE_REPORT_SUCCEED = 2; |
| REGION_REMOTE_PROCEDURE_DISPATCH_FAIL = 3; |
| REGION_REMOTE_PROCEDURE_SERVER_CRASH = 4; |
| } |
| |
| message RegionRemoteProcedureBaseStateData { |
| required RegionInfo region = 1; |
| required ServerName target_server = 2; |
| // state is actually 'required' but we can't set it as 'required' here else it breaks old |
| // Messages; see HBASE-22074. |
| optional RegionRemoteProcedureBaseState state = 3; |
| optional RegionStateTransition.TransitionCode transition_code = 4; |
| optional int64 seq_id = 5; |
| } |
| |
| message OpenRegionProcedureStateData { |
| } |
| |
| message CloseRegionProcedureStateData { |
| optional ServerName assign_candidate = 1; |
| optional bool evict_cache = 2 [default = false]; |
| } |
| |
| enum SwitchRpcThrottleState { |
| UPDATE_SWITCH_RPC_THROTTLE_STORAGE = 1; |
| SWITCH_RPC_THROTTLE_ON_RS = 2; |
| POST_SWITCH_RPC_THROTTLE = 3; |
| } |
| |
| message SwitchRpcThrottleStateData { |
| required bool rpc_throttle_enabled = 1; |
| } |
| |
| message SwitchRpcThrottleRemoteStateData { |
| required ServerName target_server = 1; |
| required bool rpc_throttle_enabled = 2; |
| } |
| |
| message SplitWALParameter { |
| required string wal_path = 1; |
| } |
| |
| |
| message SplitWALData{ |
| required string wal_path = 1; |
| required ServerName crashed_server=2; |
| optional ServerName worker = 3; |
| } |
| |
| message SplitWALRemoteData{ |
| required string wal_path = 1; |
| required ServerName crashed_server=2; |
| required ServerName worker = 3; |
| } |
| |
| enum SplitWALState{ |
| ACQUIRE_SPLIT_WAL_WORKER = 1; |
| DISPATCH_WAL_TO_WORKER = 2; |
| RELEASE_SPLIT_WORKER = 3; |
| } |
| |
| message ClaimReplicationQueuesStateData { |
| required ServerName crashed_server = 1; |
| } |
| |
| message ClaimReplicationQueueRemoteStateData { |
| required ServerName crashed_server = 1; |
| required string queue = 2; |
| required ServerName target_server = 3; |
| optional ServerName source_server = 4; |
| } |
| |
| message ClaimReplicationQueueRemoteParameter { |
| required ServerName crashed_server = 1; |
| required string queue = 2; |
| optional ServerName source_server = 3; |
| } |
| |
| enum ModifyTableDescriptorState { |
| MODIFY_TABLE_DESCRIPTOR_PREPARE = 1; |
| MODIFY_TABLE_DESCRIPTOR_UPDATE = 2; |
| } |
| |
| message ModifyTableDescriptorStateData { |
| required TableName table_name = 1; |
| optional TableSchema modified_table_schema = 2; |
| } |
| |
| enum ModifyStoreFileTrackerState { |
| MODIFY_STORE_FILE_TRACKER_FINISH_PREVIOUS_MIGRATION = 1; |
| MODIFY_STORE_FILE_TRACKER_START_MIGRATION = 2; |
| MODIFY_STORE_FILE_TRACKER_FINISH_MIGRATION = 3; |
| } |
| |
| message ModifyStoreFileTrackerStateData { |
| required TableName table_name = 1; |
| required string dst_sft = 2; |
| } |
| |
| message ModifyColumnFamilyStoreFileTrackerStateData { |
| required bytes family = 1; |
| } |
| |
| enum AssignReplicationQueuesState { |
| ASSIGN_REPLICATION_QUEUES_ADD_MISSING_QUEUES = 1; |
| ASSIGN_REPLICATION_QUEUES_CLAIM = 2; |
| ASSIGN_REPLICATION_QUEUES_REMOVE_QUEUES = 3; |
| } |
| |
| message AssignReplicationQueuesStateData { |
| required ServerName crashed_server = 1; |
| } |
| |
| enum MigrateReplicationQueueFromZkToTableState { |
| MIGRATE_REPLICATION_QUEUE_FROM_ZK_TO_TABLE_DISABLE_CLEANER = 1; |
| MIGRATE_REPLICATION_QUEUE_FROM_ZK_TO_TABLE_PREPARE = 2; |
| MIGRATE_REPLICATION_QUEUE_FROM_ZK_TO_TABLE_DISABLE_PEER = 3; |
| MIGRATE_REPLICATION_QUEUE_FROM_ZK_TO_TABLE_MIGRATE = 4; |
| MIGRATE_REPLICATION_QUEUE_FROM_ZK_TO_TABLE_WAIT_UPGRADING = 5; |
| MIGRATE_REPLICATION_QUEUE_FROM_ZK_TO_TABLE_ENABLE_PEER = 6; |
| MIGRATE_REPLICATION_QUEUE_FROM_ZK_TO_TABLE_ENABLE_CLEANER = 7; |
| } |
| |
| message MigrateReplicationQueueFromZkToTableStateData { |
| repeated string disabled_peer_id = 1; |
| } |
| |
| enum MigrateNamespaceTableProcedureState { |
| MIGRATE_NAMESPACE_TABLE_ADD_FAMILY = 1; |
| MIGRATE_NAMESPACE_TABLE_MIGRATE_DATA = 2; |
| MIGRATE_NAMESPACE_TABLE_DISABLE_TABLE = 3; |
| } |
| |
| message MigrateNamespaceTableProcedureStateData { |
| } |