2 * Licensed to the Apache Software Foundation (ASF) under one
3 * or more contributor license agreements. See the NOTICE file
4 * distributed with this work for additional information
5 * regarding copyright ownership. The ASF licenses this file
6 * to you under the Apache License, Version 2.0 (the
7 * "License"); you may not use this file except in compliance
8 * with the License. You may obtain a copy of the License at
10 * http://www.apache.org/licenses/LICENSE-2.0
12 * Unless required by applicable law or agreed to in writing, software
13 * distributed under the License is distributed on an "AS IS" BASIS,
14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 * See the License for the specific language governing permissions and
16 * limitations under the License.
21 option java_package = "org.apache.hadoop.hbase.shaded.protobuf.generated";
22 option java_outer_classname = "SnapshotProtos";
23 option java_generic_services = true;
24 option java_generate_equals_and_hash = true;
25 option optimize_for = SPEED;
27 import "AccessControl.proto";
32 * Description of the snapshot to take
34 message SnapshotDescription {
35 required string name = 1;
36 optional string table = 2; // not needed for delete, but checked for in taking snapshot
37 optional int64 creation_time = 3 [default = 0];
43 optional Type type = 4 [default = FLUSH];
44 optional int32 version = 5;
45 optional string owner = 6;
46 optional UsersAndPermissions users_and_permissions = 7;
47 optional int64 ttl = 8 [default = 0];
50 message SnapshotFileInfo {
56 required Type type = 1;
58 optional string hfile = 3;
60 optional string wal_server = 4;
61 optional string wal_name = 5;
64 message SnapshotRegionManifest {
65 optional int32 version = 1;
67 required RegionInfo region_info = 2;
68 repeated FamilyFiles family_files = 3;
71 required string name = 1;
72 optional Reference reference = 2;
74 // TODO: Add checksums or other fields to verify the file
75 optional uint64 file_size = 3;
79 required bytes family_name = 1;
80 repeated StoreFile store_files = 2;
84 message SnapshotDataManifest {
85 required TableSchema table_schema = 1;
86 repeated SnapshotRegionManifest region_manifests = 2;