You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by te...@apache.org on 2016/09/28 13:51:58 UTC
hbase git commit: HBASE-16656 BackupID must include backup set name
(Vladimir Rodionov)
Repository: hbase
Updated Branches:
refs/heads/HBASE-7912 9952b134f -> c3a960f2e
HBASE-16656 BackupID must include backup set name (Vladimir Rodionov)
Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/c3a960f2
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/c3a960f2
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/c3a960f2
Branch: refs/heads/HBASE-7912
Commit: c3a960f2ecec3b0b0fd8f6584d53d075699dcfdc
Parents: 9952b13
Author: tedyu <yu...@gmail.com>
Authored: Wed Sep 28 06:51:49 2016 -0700
Committer: tedyu <yu...@gmail.com>
Committed: Wed Sep 28 06:51:49 2016 -0700
----------------------------------------------------------------------
.../hadoop/hbase/backup/BackupRequest.java | 9 +
.../hbase/backup/impl/BackupCommands.java | 6 +-
.../hbase/backup/impl/BackupManifest.java | 14 +-
.../hbase/backup/util/BackupClientUtil.java | 12 +-
.../apache/hadoop/hbase/client/HBaseAdmin.java | 3 +-
.../hadoop/hbase/protobuf/RequestConverter.java | 5 +-
.../hbase/protobuf/generated/MasterProtos.java | 550 ++++++++++++-------
hbase-protocol/src/main/protobuf/Master.proto | 5 +-
.../org/apache/hadoop/hbase/master/HMaster.java | 6 +-
.../hadoop/hbase/master/MasterRpcServices.java | 4 +-
.../hadoop/hbase/master/MasterServices.java | 2 +
.../hadoop/hbase/backup/TestFullBackupSet.java | 6 +-
.../backup/TestFullBackupSetRestoreSet.java | 6 +-
.../hadoop/hbase/master/TestCatalogJanitor.java | 2 +-
14 files changed, 414 insertions(+), 216 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/hbase/blob/c3a960f2/hbase-client/src/main/java/org/apache/hadoop/hbase/backup/BackupRequest.java
----------------------------------------------------------------------
diff --git a/hbase-client/src/main/java/org/apache/hadoop/hbase/backup/BackupRequest.java b/hbase-client/src/main/java/org/apache/hadoop/hbase/backup/BackupRequest.java
index bbf421c..d141239 100644
--- a/hbase-client/src/main/java/org/apache/hadoop/hbase/backup/BackupRequest.java
+++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/backup/BackupRequest.java
@@ -36,6 +36,7 @@ public final class BackupRequest {
private String targetRootDir;
private int workers = -1;
private long bandwidth = -1L;
+ private String backupSetName;
public BackupRequest() {
}
@@ -79,4 +80,12 @@ public final class BackupRequest {
public long getBandwidth() {
return this.bandwidth;
}
+
+ public String getBackupSetName() {
+ return backupSetName;
+ }
+
+ public void setBackupSetName(String backupSetName) {
+ this.backupSetName = backupSetName;
+ }
}
http://git-wip-us.apache.org/repos/asf/hbase/blob/c3a960f2/hbase-client/src/main/java/org/apache/hadoop/hbase/backup/impl/BackupCommands.java
----------------------------------------------------------------------
diff --git a/hbase-client/src/main/java/org/apache/hadoop/hbase/backup/impl/BackupCommands.java b/hbase-client/src/main/java/org/apache/hadoop/hbase/backup/impl/BackupCommands.java
index 6d93a7c..06ff419 100644
--- a/hbase-client/src/main/java/org/apache/hadoop/hbase/backup/impl/BackupCommands.java
+++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/backup/impl/BackupCommands.java
@@ -200,8 +200,9 @@ public final class BackupCommands {
Configuration conf = getConf() != null? getConf(): HBaseConfiguration.create();
// Check backup set
+ String setName = null;
if (cmdline.hasOption("set")) {
- String setName = cmdline.getOptionValue("set");
+ setName = cmdline.getOptionValue("set");
tables = getTablesForSet(setName, conf);
if (tables == null) {
@@ -221,7 +222,8 @@ public final class BackupCommands {
BackupRequest request = new BackupRequest();
request.setBackupType(BackupType.valueOf(args[1].toUpperCase()))
.setTableList(tables != null?Lists.newArrayList(BackupClientUtil.parseTableNames(tables)): null)
- .setTargetRootDir(args[2]).setWorkers(workers).setBandwidth(bandwidth);
+ .setTargetRootDir(args[2]).setWorkers(workers).setBandwidth(bandwidth)
+ .setBackupSetName(setName);
String backupId = backupAdmin.backupTables(request);
System.out.println("Backup session "+ backupId+" finished. Status: SUCCESS");
} catch (IOException e) {
http://git-wip-us.apache.org/repos/asf/hbase/blob/c3a960f2/hbase-client/src/main/java/org/apache/hadoop/hbase/backup/impl/BackupManifest.java
----------------------------------------------------------------------
diff --git a/hbase-client/src/main/java/org/apache/hadoop/hbase/backup/impl/BackupManifest.java b/hbase-client/src/main/java/org/apache/hadoop/hbase/backup/impl/BackupManifest.java
index 19236b6..d10713d 100644
--- a/hbase-client/src/main/java/org/apache/hadoop/hbase/backup/impl/BackupManifest.java
+++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/backup/impl/BackupManifest.java
@@ -223,9 +223,17 @@ public class BackupManifest {
public int compareTo(BackupImage other) {
String thisBackupId = this.getBackupId();
String otherBackupId = other.getBackupId();
- Long thisTS = new Long(thisBackupId.substring(thisBackupId.lastIndexOf("_") + 1));
- Long otherTS = new Long(otherBackupId.substring(otherBackupId.lastIndexOf("_") + 1));
- return thisTS.compareTo(otherTS);
+ int index1 = thisBackupId.lastIndexOf("_");
+ int index2 = otherBackupId.lastIndexOf("_");
+ String name1 = thisBackupId.substring(0, index1);
+ String name2 = otherBackupId.substring(0, index2);
+ if(name1.equals(name2)) {
+ Long thisTS = new Long(thisBackupId.substring(index1 + 1));
+ Long otherTS = new Long(otherBackupId.substring(index2 + 1));
+ return thisTS.compareTo(otherTS);
+ } else {
+ return name1.compareTo(name2);
+ }
}
}
http://git-wip-us.apache.org/repos/asf/hbase/blob/c3a960f2/hbase-client/src/main/java/org/apache/hadoop/hbase/backup/util/BackupClientUtil.java
----------------------------------------------------------------------
diff --git a/hbase-client/src/main/java/org/apache/hadoop/hbase/backup/util/BackupClientUtil.java b/hbase-client/src/main/java/org/apache/hadoop/hbase/backup/util/BackupClientUtil.java
index 5255434..4f22164 100644
--- a/hbase-client/src/main/java/org/apache/hadoop/hbase/backup/util/BackupClientUtil.java
+++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/backup/util/BackupClientUtil.java
@@ -369,9 +369,13 @@ public final class BackupClientUtil {
while (it.hasNext()) {
LocatedFileStatus lfs = it.next();
if (!lfs.isDirectory()) continue;
- if (!isBackupDirectory(lfs)) continue;
String backupId = lfs.getPath().getName();
- infos.add(loadBackupInfo(backupRootPath, backupId, fs));
+ try {
+ BackupInfo info = loadBackupInfo(backupRootPath, backupId, fs);
+ infos.add(info);
+ } catch(IOException e) {
+ LOG.error("Can not load backup info from: "+ lfs.getPath(), e);
+ }
}
// Sort
Collections.sort(infos, new Comparator<BackupInfo>() {
@@ -414,10 +418,6 @@ public final class BackupClientUtil {
}
}
- private static boolean isBackupDirectory(LocatedFileStatus lfs) {
- return lfs.getPath().getName().startsWith(BackupRestoreConstants.BACKUPID_PREFIX);
- }
-
public static BackupInfo loadBackupInfo(Path backupRootPath, String backupId, FileSystem fs)
throws IOException {
Path backupPath = new Path(backupRootPath, backupId);
http://git-wip-us.apache.org/repos/asf/hbase/blob/c3a960f2/hbase-client/src/main/java/org/apache/hadoop/hbase/client/HBaseAdmin.java
----------------------------------------------------------------------
diff --git a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/HBaseAdmin.java b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/HBaseAdmin.java
index 6702bbc..aa4b3f6 100644
--- a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/HBaseAdmin.java
+++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/HBaseAdmin.java
@@ -1586,7 +1586,8 @@ public class HBaseAdmin implements Admin {
public BackupTablesResponse call(int callTimeout) throws ServiceException {
BackupTablesRequest request = RequestConverter.buildBackupTablesRequest(
userRequest.getBackupType(), userRequest.getTableList(), userRequest.getTargetRootDir(),
- userRequest.getWorkers(), userRequest.getBandwidth(), ng.getNonceGroup(),ng.newNonce());
+ userRequest.getWorkers(), userRequest.getBandwidth(),
+ userRequest.getBackupSetName(), ng.getNonceGroup(),ng.newNonce());
return master.backupTables(null, request);
}
}, (int) backupWaitTimeout);
http://git-wip-us.apache.org/repos/asf/hbase/blob/c3a960f2/hbase-client/src/main/java/org/apache/hadoop/hbase/protobuf/RequestConverter.java
----------------------------------------------------------------------
diff --git a/hbase-client/src/main/java/org/apache/hadoop/hbase/protobuf/RequestConverter.java b/hbase-client/src/main/java/org/apache/hadoop/hbase/protobuf/RequestConverter.java
index 031ad54..0d1700e 100644
--- a/hbase-client/src/main/java/org/apache/hadoop/hbase/protobuf/RequestConverter.java
+++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/protobuf/RequestConverter.java
@@ -1273,12 +1273,15 @@ public final class RequestConverter {
public static BackupTablesRequest buildBackupTablesRequest(
final BackupType type, List<TableName> tableList, String targetRootDir, final int workers,
- final long bandwidth, final long nonceGroup, final long nonce) {
+ final long bandwidth, String setName, final long nonceGroup, final long nonce) {
BackupTablesRequest.Builder builder = BackupTablesRequest.newBuilder();
builder.setType(ProtobufUtil.toProtoBackupType(type));
builder.setTargetRootDir(targetRootDir);
builder.setWorkers(workers);
builder.setBandwidth(bandwidth);
+ if(setName != null) {
+ builder.setBackupSetName(setName);
+ }
if (tableList != null) {
for (TableName table : tableList) {
builder.addTables(ProtobufUtil.toProtoTableName(table));
http://git-wip-us.apache.org/repos/asf/hbase/blob/c3a960f2/hbase-protocol/src/main/java/org/apache/hadoop/hbase/protobuf/generated/MasterProtos.java
----------------------------------------------------------------------
diff --git a/hbase-protocol/src/main/java/org/apache/hadoop/hbase/protobuf/generated/MasterProtos.java b/hbase-protocol/src/main/java/org/apache/hadoop/hbase/protobuf/generated/MasterProtos.java
index f276b7a..4562a7c 100644
--- a/hbase-protocol/src/main/java/org/apache/hadoop/hbase/protobuf/generated/MasterProtos.java
+++ b/hbase-protocol/src/main/java/org/apache/hadoop/hbase/protobuf/generated/MasterProtos.java
@@ -59370,23 +59370,38 @@ public final class MasterProtos {
*/
long getBandwidth();
- // optional uint64 nonce_group = 6 [default = 0];
+ // optional string backup_set_name = 6;
/**
- * <code>optional uint64 nonce_group = 6 [default = 0];</code>
+ * <code>optional string backup_set_name = 6;</code>
+ */
+ boolean hasBackupSetName();
+ /**
+ * <code>optional string backup_set_name = 6;</code>
+ */
+ java.lang.String getBackupSetName();
+ /**
+ * <code>optional string backup_set_name = 6;</code>
+ */
+ com.google.protobuf.ByteString
+ getBackupSetNameBytes();
+
+ // optional uint64 nonce_group = 7 [default = 0];
+ /**
+ * <code>optional uint64 nonce_group = 7 [default = 0];</code>
*/
boolean hasNonceGroup();
/**
- * <code>optional uint64 nonce_group = 6 [default = 0];</code>
+ * <code>optional uint64 nonce_group = 7 [default = 0];</code>
*/
long getNonceGroup();
- // optional uint64 nonce = 7 [default = 0];
+ // optional uint64 nonce = 8 [default = 0];
/**
- * <code>optional uint64 nonce = 7 [default = 0];</code>
+ * <code>optional uint64 nonce = 8 [default = 0];</code>
*/
boolean hasNonce();
/**
- * <code>optional uint64 nonce = 7 [default = 0];</code>
+ * <code>optional uint64 nonce = 8 [default = 0];</code>
*/
long getNonce();
}
@@ -59475,13 +59490,18 @@ public final class MasterProtos {
bandwidth_ = input.readInt64();
break;
}
- case 48: {
+ case 50: {
bitField0_ |= 0x00000010;
- nonceGroup_ = input.readUInt64();
+ backupSetName_ = input.readBytes();
break;
}
case 56: {
bitField0_ |= 0x00000020;
+ nonceGroup_ = input.readUInt64();
+ break;
+ }
+ case 64: {
+ bitField0_ |= 0x00000040;
nonce_ = input.readUInt64();
break;
}
@@ -59655,33 +59675,76 @@ public final class MasterProtos {
return bandwidth_;
}
- // optional uint64 nonce_group = 6 [default = 0];
- public static final int NONCE_GROUP_FIELD_NUMBER = 6;
+ // optional string backup_set_name = 6;
+ public static final int BACKUP_SET_NAME_FIELD_NUMBER = 6;
+ private java.lang.Object backupSetName_;
+ /**
+ * <code>optional string backup_set_name = 6;</code>
+ */
+ public boolean hasBackupSetName() {
+ return ((bitField0_ & 0x00000010) == 0x00000010);
+ }
+ /**
+ * <code>optional string backup_set_name = 6;</code>
+ */
+ public java.lang.String getBackupSetName() {
+ java.lang.Object ref = backupSetName_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs =
+ (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ if (bs.isValidUtf8()) {
+ backupSetName_ = s;
+ }
+ return s;
+ }
+ }
+ /**
+ * <code>optional string backup_set_name = 6;</code>
+ */
+ public com.google.protobuf.ByteString
+ getBackupSetNameBytes() {
+ java.lang.Object ref = backupSetName_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ backupSetName_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ // optional uint64 nonce_group = 7 [default = 0];
+ public static final int NONCE_GROUP_FIELD_NUMBER = 7;
private long nonceGroup_;
/**
- * <code>optional uint64 nonce_group = 6 [default = 0];</code>
+ * <code>optional uint64 nonce_group = 7 [default = 0];</code>
*/
public boolean hasNonceGroup() {
- return ((bitField0_ & 0x00000010) == 0x00000010);
+ return ((bitField0_ & 0x00000020) == 0x00000020);
}
/**
- * <code>optional uint64 nonce_group = 6 [default = 0];</code>
+ * <code>optional uint64 nonce_group = 7 [default = 0];</code>
*/
public long getNonceGroup() {
return nonceGroup_;
}
- // optional uint64 nonce = 7 [default = 0];
- public static final int NONCE_FIELD_NUMBER = 7;
+ // optional uint64 nonce = 8 [default = 0];
+ public static final int NONCE_FIELD_NUMBER = 8;
private long nonce_;
/**
- * <code>optional uint64 nonce = 7 [default = 0];</code>
+ * <code>optional uint64 nonce = 8 [default = 0];</code>
*/
public boolean hasNonce() {
- return ((bitField0_ & 0x00000020) == 0x00000020);
+ return ((bitField0_ & 0x00000040) == 0x00000040);
}
/**
- * <code>optional uint64 nonce = 7 [default = 0];</code>
+ * <code>optional uint64 nonce = 8 [default = 0];</code>
*/
public long getNonce() {
return nonce_;
@@ -59693,6 +59756,7 @@ public final class MasterProtos {
targetRootDir_ = "";
workers_ = 0L;
bandwidth_ = 0L;
+ backupSetName_ = "";
nonceGroup_ = 0L;
nonce_ = 0L;
}
@@ -59738,10 +59802,13 @@ public final class MasterProtos {
output.writeInt64(5, bandwidth_);
}
if (((bitField0_ & 0x00000010) == 0x00000010)) {
- output.writeUInt64(6, nonceGroup_);
+ output.writeBytes(6, getBackupSetNameBytes());
}
if (((bitField0_ & 0x00000020) == 0x00000020)) {
- output.writeUInt64(7, nonce_);
+ output.writeUInt64(7, nonceGroup_);
+ }
+ if (((bitField0_ & 0x00000040) == 0x00000040)) {
+ output.writeUInt64(8, nonce_);
}
getUnknownFields().writeTo(output);
}
@@ -59774,11 +59841,15 @@ public final class MasterProtos {
}
if (((bitField0_ & 0x00000010) == 0x00000010)) {
size += com.google.protobuf.CodedOutputStream
- .computeUInt64Size(6, nonceGroup_);
+ .computeBytesSize(6, getBackupSetNameBytes());
}
if (((bitField0_ & 0x00000020) == 0x00000020)) {
size += com.google.protobuf.CodedOutputStream
- .computeUInt64Size(7, nonce_);
+ .computeUInt64Size(7, nonceGroup_);
+ }
+ if (((bitField0_ & 0x00000040) == 0x00000040)) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeUInt64Size(8, nonce_);
}
size += getUnknownFields().getSerializedSize();
memoizedSerializedSize = size;
@@ -59825,6 +59896,11 @@ public final class MasterProtos {
result = result && (getBandwidth()
== other.getBandwidth());
}
+ result = result && (hasBackupSetName() == other.hasBackupSetName());
+ if (hasBackupSetName()) {
+ result = result && getBackupSetName()
+ .equals(other.getBackupSetName());
+ }
result = result && (hasNonceGroup() == other.hasNonceGroup());
if (hasNonceGroup()) {
result = result && (getNonceGroup()
@@ -59868,6 +59944,10 @@ public final class MasterProtos {
hash = (37 * hash) + BANDWIDTH_FIELD_NUMBER;
hash = (53 * hash) + hashLong(getBandwidth());
}
+ if (hasBackupSetName()) {
+ hash = (37 * hash) + BACKUP_SET_NAME_FIELD_NUMBER;
+ hash = (53 * hash) + getBackupSetName().hashCode();
+ }
if (hasNonceGroup()) {
hash = (37 * hash) + NONCE_GROUP_FIELD_NUMBER;
hash = (53 * hash) + hashLong(getNonceGroup());
@@ -60000,10 +60080,12 @@ public final class MasterProtos {
bitField0_ = (bitField0_ & ~0x00000008);
bandwidth_ = 0L;
bitField0_ = (bitField0_ & ~0x00000010);
- nonceGroup_ = 0L;
+ backupSetName_ = "";
bitField0_ = (bitField0_ & ~0x00000020);
- nonce_ = 0L;
+ nonceGroup_ = 0L;
bitField0_ = (bitField0_ & ~0x00000040);
+ nonce_ = 0L;
+ bitField0_ = (bitField0_ & ~0x00000080);
return this;
}
@@ -60060,10 +60142,14 @@ public final class MasterProtos {
if (((from_bitField0_ & 0x00000020) == 0x00000020)) {
to_bitField0_ |= 0x00000010;
}
- result.nonceGroup_ = nonceGroup_;
+ result.backupSetName_ = backupSetName_;
if (((from_bitField0_ & 0x00000040) == 0x00000040)) {
to_bitField0_ |= 0x00000020;
}
+ result.nonceGroup_ = nonceGroup_;
+ if (((from_bitField0_ & 0x00000080) == 0x00000080)) {
+ to_bitField0_ |= 0x00000040;
+ }
result.nonce_ = nonce_;
result.bitField0_ = to_bitField0_;
onBuilt();
@@ -60121,6 +60207,11 @@ public final class MasterProtos {
if (other.hasBandwidth()) {
setBandwidth(other.getBandwidth());
}
+ if (other.hasBackupSetName()) {
+ bitField0_ |= 0x00000020;
+ backupSetName_ = other.backupSetName_;
+ onChanged();
+ }
if (other.hasNonceGroup()) {
setNonceGroup(other.getNonceGroup());
}
@@ -60584,67 +60675,141 @@ public final class MasterProtos {
return this;
}
- // optional uint64 nonce_group = 6 [default = 0];
+ // optional string backup_set_name = 6;
+ private java.lang.Object backupSetName_ = "";
+ /**
+ * <code>optional string backup_set_name = 6;</code>
+ */
+ public boolean hasBackupSetName() {
+ return ((bitField0_ & 0x00000020) == 0x00000020);
+ }
+ /**
+ * <code>optional string backup_set_name = 6;</code>
+ */
+ public java.lang.String getBackupSetName() {
+ java.lang.Object ref = backupSetName_;
+ if (!(ref instanceof java.lang.String)) {
+ java.lang.String s = ((com.google.protobuf.ByteString) ref)
+ .toStringUtf8();
+ backupSetName_ = s;
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ * <code>optional string backup_set_name = 6;</code>
+ */
+ public com.google.protobuf.ByteString
+ getBackupSetNameBytes() {
+ java.lang.Object ref = backupSetName_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ backupSetName_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ * <code>optional string backup_set_name = 6;</code>
+ */
+ public Builder setBackupSetName(
+ java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ bitField0_ |= 0x00000020;
+ backupSetName_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ * <code>optional string backup_set_name = 6;</code>
+ */
+ public Builder clearBackupSetName() {
+ bitField0_ = (bitField0_ & ~0x00000020);
+ backupSetName_ = getDefaultInstance().getBackupSetName();
+ onChanged();
+ return this;
+ }
+ /**
+ * <code>optional string backup_set_name = 6;</code>
+ */
+ public Builder setBackupSetNameBytes(
+ com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ bitField0_ |= 0x00000020;
+ backupSetName_ = value;
+ onChanged();
+ return this;
+ }
+
+ // optional uint64 nonce_group = 7 [default = 0];
private long nonceGroup_ ;
/**
- * <code>optional uint64 nonce_group = 6 [default = 0];</code>
+ * <code>optional uint64 nonce_group = 7 [default = 0];</code>
*/
public boolean hasNonceGroup() {
- return ((bitField0_ & 0x00000020) == 0x00000020);
+ return ((bitField0_ & 0x00000040) == 0x00000040);
}
/**
- * <code>optional uint64 nonce_group = 6 [default = 0];</code>
+ * <code>optional uint64 nonce_group = 7 [default = 0];</code>
*/
public long getNonceGroup() {
return nonceGroup_;
}
/**
- * <code>optional uint64 nonce_group = 6 [default = 0];</code>
+ * <code>optional uint64 nonce_group = 7 [default = 0];</code>
*/
public Builder setNonceGroup(long value) {
- bitField0_ |= 0x00000020;
+ bitField0_ |= 0x00000040;
nonceGroup_ = value;
onChanged();
return this;
}
/**
- * <code>optional uint64 nonce_group = 6 [default = 0];</code>
+ * <code>optional uint64 nonce_group = 7 [default = 0];</code>
*/
public Builder clearNonceGroup() {
- bitField0_ = (bitField0_ & ~0x00000020);
+ bitField0_ = (bitField0_ & ~0x00000040);
nonceGroup_ = 0L;
onChanged();
return this;
}
- // optional uint64 nonce = 7 [default = 0];
+ // optional uint64 nonce = 8 [default = 0];
private long nonce_ ;
/**
- * <code>optional uint64 nonce = 7 [default = 0];</code>
+ * <code>optional uint64 nonce = 8 [default = 0];</code>
*/
public boolean hasNonce() {
- return ((bitField0_ & 0x00000040) == 0x00000040);
+ return ((bitField0_ & 0x00000080) == 0x00000080);
}
/**
- * <code>optional uint64 nonce = 7 [default = 0];</code>
+ * <code>optional uint64 nonce = 8 [default = 0];</code>
*/
public long getNonce() {
return nonce_;
}
/**
- * <code>optional uint64 nonce = 7 [default = 0];</code>
+ * <code>optional uint64 nonce = 8 [default = 0];</code>
*/
public Builder setNonce(long value) {
- bitField0_ |= 0x00000040;
+ bitField0_ |= 0x00000080;
nonce_ = value;
onChanged();
return this;
}
/**
- * <code>optional uint64 nonce = 7 [default = 0];</code>
+ * <code>optional uint64 nonce = 8 [default = 0];</code>
*/
public Builder clearNonce() {
- bitField0_ = (bitField0_ & ~0x00000040);
+ bitField0_ = (bitField0_ & ~0x00000080);
nonce_ = 0L;
onChanged();
return this;
@@ -69149,159 +69314,160 @@ public final class MasterProtos {
"sponse.Capability\"\202\001\n\nCapability\022\031\n\025SIMP" +
"LE_AUTHENTICATION\020\000\022\031\n\025SECURE_AUTHENTICA",
"TION\020\001\022\021\n\rAUTHORIZATION\020\002\022\026\n\022CELL_AUTHOR" +
- "IZATION\020\003\022\023\n\017CELL_VISIBILITY\020\004\"\305\001\n\023Backu" +
+ "IZATION\020\003\022\023\n\017CELL_VISIBILITY\020\004\"\336\001\n\023Backu" +
"pTablesRequest\022\"\n\004type\030\001 \002(\0162\024.hbase.pb." +
"BackupType\022#\n\006tables\030\002 \003(\0132\023.hbase.pb.Ta" +
"bleName\022\027\n\017target_root_dir\030\003 \002(\t\022\017\n\007work" +
- "ers\030\004 \001(\003\022\021\n\tbandwidth\030\005 \001(\003\022\026\n\013nonce_gr" +
- "oup\030\006 \001(\004:\0010\022\020\n\005nonce\030\007 \001(\004:\0010\":\n\024Backup" +
- "TablesResponse\022\017\n\007proc_id\030\001 \001(\004\022\021\n\tbacku" +
- "p_id\030\002 \001(\t\"\357\001\n\024RestoreTablesRequest\022\021\n\tb" +
- "ackup_id\030\001 \002(\t\022#\n\006tables\030\002 \003(\0132\023.hbase.p",
- "b.TableName\022*\n\rtarget_tables\030\003 \003(\0132\023.hba" +
- "se.pb.TableName\022\027\n\017backup_root_dir\030\004 \002(\t" +
- "\022\035\n\025dependency_check_only\030\005 \001(\010\022\021\n\toverw" +
- "rite\030\006 \001(\010\022\026\n\013nonce_group\030\007 \001(\004:\0010\022\020\n\005no" +
- "nce\030\010 \001(\004:\0010\"(\n\025RestoreTablesResponse\022\017\n" +
- "\007proc_id\030\001 \001(\004*(\n\020MasterSwitchType\022\t\n\005SP" +
- "LIT\020\000\022\t\n\005MERGE\020\001*8\n\022RestoreTablesState\022\016" +
- "\n\nVALIDATION\020\001\022\022\n\016RESTORE_IMAGES\020\0022\364)\n\rM" +
- "asterService\022e\n\024GetSchemaAlterStatus\022%.h" +
- "base.pb.GetSchemaAlterStatusRequest\032&.hb",
- "ase.pb.GetSchemaAlterStatusResponse\022b\n\023G" +
- "etTableDescriptors\022$.hbase.pb.GetTableDe" +
- "scriptorsRequest\032%.hbase.pb.GetTableDesc" +
- "riptorsResponse\022P\n\rGetTableNames\022\036.hbase" +
- ".pb.GetTableNamesRequest\032\037.hbase.pb.GetT" +
- "ableNamesResponse\022Y\n\020GetClusterStatus\022!." +
- "hbase.pb.GetClusterStatusRequest\032\".hbase" +
- ".pb.GetClusterStatusResponse\022V\n\017IsMaster" +
- "Running\022 .hbase.pb.IsMasterRunningReques" +
- "t\032!.hbase.pb.IsMasterRunningResponse\022D\n\t",
- "AddColumn\022\032.hbase.pb.AddColumnRequest\032\033." +
- "hbase.pb.AddColumnResponse\022M\n\014DeleteColu" +
- "mn\022\035.hbase.pb.DeleteColumnRequest\032\036.hbas" +
- "e.pb.DeleteColumnResponse\022M\n\014ModifyColum" +
- "n\022\035.hbase.pb.ModifyColumnRequest\032\036.hbase" +
- ".pb.ModifyColumnResponse\022G\n\nMoveRegion\022\033" +
- ".hbase.pb.MoveRegionRequest\032\034.hbase.pb.M" +
- "oveRegionResponse\022k\n\026DispatchMergingRegi" +
- "ons\022\'.hbase.pb.DispatchMergingRegionsReq" +
- "uest\032(.hbase.pb.DispatchMergingRegionsRe",
- "sponse\022M\n\014AssignRegion\022\035.hbase.pb.Assign" +
- "RegionRequest\032\036.hbase.pb.AssignRegionRes" +
- "ponse\022S\n\016UnassignRegion\022\037.hbase.pb.Unass" +
- "ignRegionRequest\032 .hbase.pb.UnassignRegi" +
- "onResponse\022P\n\rOfflineRegion\022\036.hbase.pb.O" +
- "fflineRegionRequest\032\037.hbase.pb.OfflineRe" +
- "gionResponse\022J\n\013DeleteTable\022\034.hbase.pb.D" +
- "eleteTableRequest\032\035.hbase.pb.DeleteTable" +
- "Response\022P\n\rtruncateTable\022\036.hbase.pb.Tru" +
- "ncateTableRequest\032\037.hbase.pb.TruncateTab",
- "leResponse\022J\n\013EnableTable\022\034.hbase.pb.Ena" +
- "bleTableRequest\032\035.hbase.pb.EnableTableRe" +
- "sponse\022M\n\014DisableTable\022\035.hbase.pb.Disabl" +
- "eTableRequest\032\036.hbase.pb.DisableTableRes" +
- "ponse\022J\n\013ModifyTable\022\034.hbase.pb.ModifyTa" +
- "bleRequest\032\035.hbase.pb.ModifyTableRespons" +
- "e\022J\n\013CreateTable\022\034.hbase.pb.CreateTableR" +
- "equest\032\035.hbase.pb.CreateTableResponse\022A\n" +
- "\010Shutdown\022\031.hbase.pb.ShutdownRequest\032\032.h" +
- "base.pb.ShutdownResponse\022G\n\nStopMaster\022\033",
- ".hbase.pb.StopMasterRequest\032\034.hbase.pb.S" +
- "topMasterResponse\022>\n\007Balance\022\030.hbase.pb." +
- "BalanceRequest\032\031.hbase.pb.BalanceRespons" +
- "e\022_\n\022SetBalancerRunning\022#.hbase.pb.SetBa" +
- "lancerRunningRequest\032$.hbase.pb.SetBalan" +
- "cerRunningResponse\022\\\n\021IsBalancerEnabled\022" +
- "\".hbase.pb.IsBalancerEnabledRequest\032#.hb" +
- "ase.pb.IsBalancerEnabledResponse\022k\n\026SetS" +
- "plitOrMergeEnabled\022\'.hbase.pb.SetSplitOr" +
- "MergeEnabledRequest\032(.hbase.pb.SetSplitO",
- "rMergeEnabledResponse\022h\n\025IsSplitOrMergeE" +
- "nabled\022&.hbase.pb.IsSplitOrMergeEnabledR" +
- "equest\032\'.hbase.pb.IsSplitOrMergeEnabledR" +
- "esponse\022D\n\tNormalize\022\032.hbase.pb.Normaliz" +
- "eRequest\032\033.hbase.pb.NormalizeResponse\022e\n" +
- "\024SetNormalizerRunning\022%.hbase.pb.SetNorm" +
- "alizerRunningRequest\032&.hbase.pb.SetNorma" +
- "lizerRunningResponse\022b\n\023IsNormalizerEnab" +
- "led\022$.hbase.pb.IsNormalizerEnabledReques" +
- "t\032%.hbase.pb.IsNormalizerEnabledResponse",
- "\022S\n\016RunCatalogScan\022\037.hbase.pb.RunCatalog" +
- "ScanRequest\032 .hbase.pb.RunCatalogScanRes" +
- "ponse\022e\n\024EnableCatalogJanitor\022%.hbase.pb" +
- ".EnableCatalogJanitorRequest\032&.hbase.pb." +
- "EnableCatalogJanitorResponse\022n\n\027IsCatalo" +
- "gJanitorEnabled\022(.hbase.pb.IsCatalogJani" +
- "torEnabledRequest\032).hbase.pb.IsCatalogJa" +
- "nitorEnabledResponse\022^\n\021ExecMasterServic" +
- "e\022#.hbase.pb.CoprocessorServiceRequest\032$" +
- ".hbase.pb.CoprocessorServiceResponse\022A\n\010",
- "Snapshot\022\031.hbase.pb.SnapshotRequest\032\032.hb" +
- "ase.pb.SnapshotResponse\022h\n\025GetCompletedS" +
- "napshots\022&.hbase.pb.GetCompletedSnapshot" +
- "sRequest\032\'.hbase.pb.GetCompletedSnapshot" +
- "sResponse\022S\n\016DeleteSnapshot\022\037.hbase.pb.D" +
- "eleteSnapshotRequest\032 .hbase.pb.DeleteSn" +
- "apshotResponse\022S\n\016IsSnapshotDone\022\037.hbase" +
- ".pb.IsSnapshotDoneRequest\032 .hbase.pb.IsS" +
- "napshotDoneResponse\022V\n\017RestoreSnapshot\022 " +
- ".hbase.pb.RestoreSnapshotRequest\032!.hbase",
- ".pb.RestoreSnapshotResponse\022h\n\025IsRestore" +
- "SnapshotDone\022&.hbase.pb.IsRestoreSnapsho" +
- "tDoneRequest\032\'.hbase.pb.IsRestoreSnapsho" +
- "tDoneResponse\022P\n\rExecProcedure\022\036.hbase.p" +
- "b.ExecProcedureRequest\032\037.hbase.pb.ExecPr" +
- "ocedureResponse\022W\n\024ExecProcedureWithRet\022" +
- "\036.hbase.pb.ExecProcedureRequest\032\037.hbase." +
- "pb.ExecProcedureResponse\022V\n\017IsProcedureD" +
- "one\022 .hbase.pb.IsProcedureDoneRequest\032!." +
- "hbase.pb.IsProcedureDoneResponse\022V\n\017Modi",
- "fyNamespace\022 .hbase.pb.ModifyNamespaceRe" +
- "quest\032!.hbase.pb.ModifyNamespaceResponse" +
- "\022V\n\017CreateNamespace\022 .hbase.pb.CreateNam" +
- "espaceRequest\032!.hbase.pb.CreateNamespace" +
- "Response\022V\n\017DeleteNamespace\022 .hbase.pb.D" +
- "eleteNamespaceRequest\032!.hbase.pb.DeleteN" +
- "amespaceResponse\022k\n\026GetNamespaceDescript" +
- "or\022\'.hbase.pb.GetNamespaceDescriptorRequ" +
- "est\032(.hbase.pb.GetNamespaceDescriptorRes" +
- "ponse\022q\n\030ListNamespaceDescriptors\022).hbas",
- "e.pb.ListNamespaceDescriptorsRequest\032*.h" +
- "base.pb.ListNamespaceDescriptorsResponse" +
- "\022\206\001\n\037ListTableDescriptorsByNamespace\0220.h" +
- "base.pb.ListTableDescriptorsByNamespaceR" +
- "equest\0321.hbase.pb.ListTableDescriptorsBy" +
- "NamespaceResponse\022t\n\031ListTableNamesByNam" +
- "espace\022*.hbase.pb.ListTableNamesByNamesp" +
- "aceRequest\032+.hbase.pb.ListTableNamesByNa" +
- "mespaceResponse\022P\n\rGetTableState\022\036.hbase" +
- ".pb.GetTableStateRequest\032\037.hbase.pb.GetT",
- "ableStateResponse\022A\n\010SetQuota\022\031.hbase.pb" +
- ".SetQuotaRequest\032\032.hbase.pb.SetQuotaResp" +
- "onse\022x\n\037getLastMajorCompactionTimestamp\022" +
- ").hbase.pb.MajorCompactionTimestampReque" +
- "st\032*.hbase.pb.MajorCompactionTimestampRe" +
- "sponse\022\212\001\n(getLastMajorCompactionTimesta" +
- "mpForRegion\0222.hbase.pb.MajorCompactionTi" +
- "mestampForRegionRequest\032*.hbase.pb.Major" +
- "CompactionTimestampResponse\022_\n\022getProced" +
- "ureResult\022#.hbase.pb.GetProcedureResultR",
- "equest\032$.hbase.pb.GetProcedureResultResp" +
- "onse\022h\n\027getSecurityCapabilities\022%.hbase." +
- "pb.SecurityCapabilitiesRequest\032&.hbase.p" +
- "b.SecurityCapabilitiesResponse\022S\n\016AbortP" +
- "rocedure\022\037.hbase.pb.AbortProcedureReques" +
- "t\032 .hbase.pb.AbortProcedureResponse\022S\n\016L" +
- "istProcedures\022\037.hbase.pb.ListProceduresR" +
- "equest\032 .hbase.pb.ListProceduresResponse" +
- "\022M\n\014backupTables\022\035.hbase.pb.BackupTables" +
- "Request\032\036.hbase.pb.BackupTablesResponse\022",
- "P\n\rrestoreTables\022\036.hbase.pb.RestoreTable" +
- "sRequest\032\037.hbase.pb.RestoreTablesRespons" +
- "eBB\n*org.apache.hadoop.hbase.protobuf.ge" +
- "neratedB\014MasterProtosH\001\210\001\001\240\001\001"
+ "ers\030\004 \001(\003\022\021\n\tbandwidth\030\005 \001(\003\022\027\n\017backup_s" +
+ "et_name\030\006 \001(\t\022\026\n\013nonce_group\030\007 \001(\004:\0010\022\020\n" +
+ "\005nonce\030\010 \001(\004:\0010\":\n\024BackupTablesResponse\022" +
+ "\017\n\007proc_id\030\001 \001(\004\022\021\n\tbackup_id\030\002 \001(\t\"\357\001\n\024" +
+ "RestoreTablesRequest\022\021\n\tbackup_id\030\001 \002(\t\022",
+ "#\n\006tables\030\002 \003(\0132\023.hbase.pb.TableName\022*\n\r" +
+ "target_tables\030\003 \003(\0132\023.hbase.pb.TableName" +
+ "\022\027\n\017backup_root_dir\030\004 \002(\t\022\035\n\025dependency_" +
+ "check_only\030\005 \001(\010\022\021\n\toverwrite\030\006 \001(\010\022\026\n\013n" +
+ "once_group\030\007 \001(\004:\0010\022\020\n\005nonce\030\010 \001(\004:\0010\"(\n" +
+ "\025RestoreTablesResponse\022\017\n\007proc_id\030\001 \001(\004*" +
+ "(\n\020MasterSwitchType\022\t\n\005SPLIT\020\000\022\t\n\005MERGE\020" +
+ "\001*8\n\022RestoreTablesState\022\016\n\nVALIDATION\020\001\022" +
+ "\022\n\016RESTORE_IMAGES\020\0022\364)\n\rMasterService\022e\n" +
+ "\024GetSchemaAlterStatus\022%.hbase.pb.GetSche",
+ "maAlterStatusRequest\032&.hbase.pb.GetSchem" +
+ "aAlterStatusResponse\022b\n\023GetTableDescript" +
+ "ors\022$.hbase.pb.GetTableDescriptorsReques" +
+ "t\032%.hbase.pb.GetTableDescriptorsResponse" +
+ "\022P\n\rGetTableNames\022\036.hbase.pb.GetTableNam" +
+ "esRequest\032\037.hbase.pb.GetTableNamesRespon" +
+ "se\022Y\n\020GetClusterStatus\022!.hbase.pb.GetClu" +
+ "sterStatusRequest\032\".hbase.pb.GetClusterS" +
+ "tatusResponse\022V\n\017IsMasterRunning\022 .hbase" +
+ ".pb.IsMasterRunningRequest\032!.hbase.pb.Is",
+ "MasterRunningResponse\022D\n\tAddColumn\022\032.hba" +
+ "se.pb.AddColumnRequest\032\033.hbase.pb.AddCol" +
+ "umnResponse\022M\n\014DeleteColumn\022\035.hbase.pb.D" +
+ "eleteColumnRequest\032\036.hbase.pb.DeleteColu" +
+ "mnResponse\022M\n\014ModifyColumn\022\035.hbase.pb.Mo" +
+ "difyColumnRequest\032\036.hbase.pb.ModifyColum" +
+ "nResponse\022G\n\nMoveRegion\022\033.hbase.pb.MoveR" +
+ "egionRequest\032\034.hbase.pb.MoveRegionRespon" +
+ "se\022k\n\026DispatchMergingRegions\022\'.hbase.pb." +
+ "DispatchMergingRegionsRequest\032(.hbase.pb",
+ ".DispatchMergingRegionsResponse\022M\n\014Assig" +
+ "nRegion\022\035.hbase.pb.AssignRegionRequest\032\036" +
+ ".hbase.pb.AssignRegionResponse\022S\n\016Unassi" +
+ "gnRegion\022\037.hbase.pb.UnassignRegionReques" +
+ "t\032 .hbase.pb.UnassignRegionResponse\022P\n\rO" +
+ "fflineRegion\022\036.hbase.pb.OfflineRegionReq" +
+ "uest\032\037.hbase.pb.OfflineRegionResponse\022J\n" +
+ "\013DeleteTable\022\034.hbase.pb.DeleteTableReque" +
+ "st\032\035.hbase.pb.DeleteTableResponse\022P\n\rtru" +
+ "ncateTable\022\036.hbase.pb.TruncateTableReque",
+ "st\032\037.hbase.pb.TruncateTableResponse\022J\n\013E" +
+ "nableTable\022\034.hbase.pb.EnableTableRequest" +
+ "\032\035.hbase.pb.EnableTableResponse\022M\n\014Disab" +
+ "leTable\022\035.hbase.pb.DisableTableRequest\032\036" +
+ ".hbase.pb.DisableTableResponse\022J\n\013Modify" +
+ "Table\022\034.hbase.pb.ModifyTableRequest\032\035.hb" +
+ "ase.pb.ModifyTableResponse\022J\n\013CreateTabl" +
+ "e\022\034.hbase.pb.CreateTableRequest\032\035.hbase." +
+ "pb.CreateTableResponse\022A\n\010Shutdown\022\031.hba" +
+ "se.pb.ShutdownRequest\032\032.hbase.pb.Shutdow",
+ "nResponse\022G\n\nStopMaster\022\033.hbase.pb.StopM" +
+ "asterRequest\032\034.hbase.pb.StopMasterRespon" +
+ "se\022>\n\007Balance\022\030.hbase.pb.BalanceRequest\032" +
+ "\031.hbase.pb.BalanceResponse\022_\n\022SetBalance" +
+ "rRunning\022#.hbase.pb.SetBalancerRunningRe" +
+ "quest\032$.hbase.pb.SetBalancerRunningRespo" +
+ "nse\022\\\n\021IsBalancerEnabled\022\".hbase.pb.IsBa" +
+ "lancerEnabledRequest\032#.hbase.pb.IsBalanc" +
+ "erEnabledResponse\022k\n\026SetSplitOrMergeEnab" +
+ "led\022\'.hbase.pb.SetSplitOrMergeEnabledReq",
+ "uest\032(.hbase.pb.SetSplitOrMergeEnabledRe" +
+ "sponse\022h\n\025IsSplitOrMergeEnabled\022&.hbase." +
+ "pb.IsSplitOrMergeEnabledRequest\032\'.hbase." +
+ "pb.IsSplitOrMergeEnabledResponse\022D\n\tNorm" +
+ "alize\022\032.hbase.pb.NormalizeRequest\032\033.hbas" +
+ "e.pb.NormalizeResponse\022e\n\024SetNormalizerR" +
+ "unning\022%.hbase.pb.SetNormalizerRunningRe" +
+ "quest\032&.hbase.pb.SetNormalizerRunningRes" +
+ "ponse\022b\n\023IsNormalizerEnabled\022$.hbase.pb." +
+ "IsNormalizerEnabledRequest\032%.hbase.pb.Is",
+ "NormalizerEnabledResponse\022S\n\016RunCatalogS" +
+ "can\022\037.hbase.pb.RunCatalogScanRequest\032 .h" +
+ "base.pb.RunCatalogScanResponse\022e\n\024Enable" +
+ "CatalogJanitor\022%.hbase.pb.EnableCatalogJ" +
+ "anitorRequest\032&.hbase.pb.EnableCatalogJa" +
+ "nitorResponse\022n\n\027IsCatalogJanitorEnabled" +
+ "\022(.hbase.pb.IsCatalogJanitorEnabledReque" +
+ "st\032).hbase.pb.IsCatalogJanitorEnabledRes" +
+ "ponse\022^\n\021ExecMasterService\022#.hbase.pb.Co" +
+ "processorServiceRequest\032$.hbase.pb.Copro",
+ "cessorServiceResponse\022A\n\010Snapshot\022\031.hbas" +
+ "e.pb.SnapshotRequest\032\032.hbase.pb.Snapshot" +
+ "Response\022h\n\025GetCompletedSnapshots\022&.hbas" +
+ "e.pb.GetCompletedSnapshotsRequest\032\'.hbas" +
+ "e.pb.GetCompletedSnapshotsResponse\022S\n\016De" +
+ "leteSnapshot\022\037.hbase.pb.DeleteSnapshotRe" +
+ "quest\032 .hbase.pb.DeleteSnapshotResponse\022" +
+ "S\n\016IsSnapshotDone\022\037.hbase.pb.IsSnapshotD" +
+ "oneRequest\032 .hbase.pb.IsSnapshotDoneResp" +
+ "onse\022V\n\017RestoreSnapshot\022 .hbase.pb.Resto",
+ "reSnapshotRequest\032!.hbase.pb.RestoreSnap" +
+ "shotResponse\022h\n\025IsRestoreSnapshotDone\022&." +
+ "hbase.pb.IsRestoreSnapshotDoneRequest\032\'." +
+ "hbase.pb.IsRestoreSnapshotDoneResponse\022P" +
+ "\n\rExecProcedure\022\036.hbase.pb.ExecProcedure" +
+ "Request\032\037.hbase.pb.ExecProcedureResponse" +
+ "\022W\n\024ExecProcedureWithRet\022\036.hbase.pb.Exec" +
+ "ProcedureRequest\032\037.hbase.pb.ExecProcedur" +
+ "eResponse\022V\n\017IsProcedureDone\022 .hbase.pb." +
+ "IsProcedureDoneRequest\032!.hbase.pb.IsProc",
+ "edureDoneResponse\022V\n\017ModifyNamespace\022 .h" +
+ "base.pb.ModifyNamespaceRequest\032!.hbase.p" +
+ "b.ModifyNamespaceResponse\022V\n\017CreateNames" +
+ "pace\022 .hbase.pb.CreateNamespaceRequest\032!" +
+ ".hbase.pb.CreateNamespaceResponse\022V\n\017Del" +
+ "eteNamespace\022 .hbase.pb.DeleteNamespaceR" +
+ "equest\032!.hbase.pb.DeleteNamespaceRespons" +
+ "e\022k\n\026GetNamespaceDescriptor\022\'.hbase.pb.G" +
+ "etNamespaceDescriptorRequest\032(.hbase.pb." +
+ "GetNamespaceDescriptorResponse\022q\n\030ListNa",
+ "mespaceDescriptors\022).hbase.pb.ListNamesp" +
+ "aceDescriptorsRequest\032*.hbase.pb.ListNam" +
+ "espaceDescriptorsResponse\022\206\001\n\037ListTableD" +
+ "escriptorsByNamespace\0220.hbase.pb.ListTab" +
+ "leDescriptorsByNamespaceRequest\0321.hbase." +
+ "pb.ListTableDescriptorsByNamespaceRespon" +
+ "se\022t\n\031ListTableNamesByNamespace\022*.hbase." +
+ "pb.ListTableNamesByNamespaceRequest\032+.hb" +
+ "ase.pb.ListTableNamesByNamespaceResponse" +
+ "\022P\n\rGetTableState\022\036.hbase.pb.GetTableSta",
+ "teRequest\032\037.hbase.pb.GetTableStateRespon" +
+ "se\022A\n\010SetQuota\022\031.hbase.pb.SetQuotaReques" +
+ "t\032\032.hbase.pb.SetQuotaResponse\022x\n\037getLast" +
+ "MajorCompactionTimestamp\022).hbase.pb.Majo" +
+ "rCompactionTimestampRequest\032*.hbase.pb.M" +
+ "ajorCompactionTimestampResponse\022\212\001\n(getL" +
+ "astMajorCompactionTimestampForRegion\0222.h" +
+ "base.pb.MajorCompactionTimestampForRegio" +
+ "nRequest\032*.hbase.pb.MajorCompactionTimes" +
+ "tampResponse\022_\n\022getProcedureResult\022#.hba",
+ "se.pb.GetProcedureResultRequest\032$.hbase." +
+ "pb.GetProcedureResultResponse\022h\n\027getSecu" +
+ "rityCapabilities\022%.hbase.pb.SecurityCapa" +
+ "bilitiesRequest\032&.hbase.pb.SecurityCapab" +
+ "ilitiesResponse\022S\n\016AbortProcedure\022\037.hbas" +
+ "e.pb.AbortProcedureRequest\032 .hbase.pb.Ab" +
+ "ortProcedureResponse\022S\n\016ListProcedures\022\037" +
+ ".hbase.pb.ListProceduresRequest\032 .hbase." +
+ "pb.ListProceduresResponse\022M\n\014backupTable" +
+ "s\022\035.hbase.pb.BackupTablesRequest\032\036.hbase",
+ ".pb.BackupTablesResponse\022P\n\rrestoreTable" +
+ "s\022\036.hbase.pb.RestoreTablesRequest\032\037.hbas" +
+ "e.pb.RestoreTablesResponseBB\n*org.apache" +
+ ".hadoop.hbase.protobuf.generatedB\014Master" +
+ "ProtosH\001\210\001\001\240\001\001"
};
com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner =
new com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner() {
@@ -69967,7 +70133,7 @@ public final class MasterProtos {
internal_static_hbase_pb_BackupTablesRequest_fieldAccessorTable = new
com.google.protobuf.GeneratedMessage.FieldAccessorTable(
internal_static_hbase_pb_BackupTablesRequest_descriptor,
- new java.lang.String[] { "Type", "Tables", "TargetRootDir", "Workers", "Bandwidth", "NonceGroup", "Nonce", });
+ new java.lang.String[] { "Type", "Tables", "TargetRootDir", "Workers", "Bandwidth", "BackupSetName", "NonceGroup", "Nonce", });
internal_static_hbase_pb_BackupTablesResponse_descriptor =
getDescriptor().getMessageTypes().get(110);
internal_static_hbase_pb_BackupTablesResponse_fieldAccessorTable = new
http://git-wip-us.apache.org/repos/asf/hbase/blob/c3a960f2/hbase-protocol/src/main/protobuf/Master.proto
----------------------------------------------------------------------
diff --git a/hbase-protocol/src/main/protobuf/Master.proto b/hbase-protocol/src/main/protobuf/Master.proto
index b20d0bd..13dbd28 100644
--- a/hbase-protocol/src/main/protobuf/Master.proto
+++ b/hbase-protocol/src/main/protobuf/Master.proto
@@ -547,8 +547,9 @@ message BackupTablesRequest {
required string target_root_dir = 3;
optional int64 workers = 4;
optional int64 bandwidth = 5;
- optional uint64 nonce_group = 6 [default = 0];
- optional uint64 nonce = 7 [default = 0];
+ optional string backup_set_name = 6;
+ optional uint64 nonce_group = 7 [default = 0];
+ optional uint64 nonce = 8 [default = 0];
}
message BackupTablesResponse {
http://git-wip-us.apache.org/repos/asf/hbase/blob/c3a960f2/hbase-server/src/main/java/org/apache/hadoop/hbase/master/HMaster.java
----------------------------------------------------------------------
diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/HMaster.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/HMaster.java
index 8c794c1..a02f011 100644
--- a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/HMaster.java
+++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/HMaster.java
@@ -2620,9 +2620,11 @@ public class HMaster extends HRegionServer implements MasterServices {
@Override
public Pair<Long, String> backupTables(final BackupType type,
List<TableName> tableList, final String targetRootDir, final int workers,
- final long bandwidth, final long nonceGroup, final long nonce) throws IOException {
+ final long bandwidth, final String setName,
+ final long nonceGroup, final long nonce) throws IOException {
long procId;
- String backupId = BackupRestoreConstants.BACKUPID_PREFIX +
+ String backupId = (setName == null || setName.length() == 0?
+ BackupRestoreConstants.BACKUPID_PREFIX: setName + "_") +
EnvironmentEdgeManager.currentTime();
if (type == BackupType.INCREMENTAL) {
Set<TableName> incrTableSet = null;
http://git-wip-us.apache.org/repos/asf/hbase/blob/c3a960f2/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MasterRpcServices.java
----------------------------------------------------------------------
diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MasterRpcServices.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MasterRpcServices.java
index 187b037..8025a67 100644
--- a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MasterRpcServices.java
+++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MasterRpcServices.java
@@ -1064,8 +1064,8 @@ public class MasterRpcServices extends RSRpcServices
}
Pair<Long, String> pair = master.backupTables(
BackupType.valueOf(request.getType().name()), tablesList, request.getTargetRootDir(),
- (int)request.getWorkers(), request.getBandwidth(), request.getNonceGroup(),
- request.getNonce());
+ (int)request.getWorkers(), request.getBandwidth(), request.getBackupSetName(),
+ request.getNonceGroup(), request.getNonce());
return response.setProcId(pair.getFirst()).setBackupId(pair.getSecond()).build();
} catch (IOException e) {
throw new ServiceException(e);
http://git-wip-us.apache.org/repos/asf/hbase/blob/c3a960f2/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MasterServices.java
----------------------------------------------------------------------
diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MasterServices.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MasterServices.java
index 3ed8a6a..d147ce2 100644
--- a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MasterServices.java
+++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MasterServices.java
@@ -188,6 +188,7 @@ public interface MasterServices extends Server {
* @param targetRootDir root dir for saving the backup
* @param workers number of paralle workers. -1 - system defined
* @param bandwidth bandwidth per worker in MB per sec. -1 - unlimited
+ * @param setName - backup set name
* @param nonceGroup nonce group
* @param nonce nonce
* @return pair of procedure Id and backupId
@@ -199,6 +200,7 @@ public interface MasterServices extends Server {
final String targetRootDir,
final int workers,
final long bandwidth,
+ final String setName,
final long nonceGroup,
final long nonce) throws IOException;
http://git-wip-us.apache.org/repos/asf/hbase/blob/c3a960f2/hbase-server/src/test/java/org/apache/hadoop/hbase/backup/TestFullBackupSet.java
----------------------------------------------------------------------
diff --git a/hbase-server/src/test/java/org/apache/hadoop/hbase/backup/TestFullBackupSet.java b/hbase-server/src/test/java/org/apache/hadoop/hbase/backup/TestFullBackupSet.java
index 67ec4a2..db9da3b 100644
--- a/hbase-server/src/test/java/org/apache/hadoop/hbase/backup/TestFullBackupSet.java
+++ b/hbase-server/src/test/java/org/apache/hadoop/hbase/backup/TestFullBackupSet.java
@@ -18,9 +18,10 @@
package org.apache.hadoop.hbase.backup;
-import static org.junit.Assert.*;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertTrue;
-import java.util.ArrayList;
import java.util.List;
import org.apache.commons.logging.Log;
@@ -66,6 +67,7 @@ public class TestFullBackupSet extends TestBackupBase {
assertTrue(backups.size() == 1);
String backupId = backups.get(0).getBackupId();
assertTrue(checkSucceeded(backupId));
+ assertTrue(backupId.startsWith(name));
LOG.info("backup complete");
http://git-wip-us.apache.org/repos/asf/hbase/blob/c3a960f2/hbase-server/src/test/java/org/apache/hadoop/hbase/backup/TestFullBackupSetRestoreSet.java
----------------------------------------------------------------------
diff --git a/hbase-server/src/test/java/org/apache/hadoop/hbase/backup/TestFullBackupSetRestoreSet.java b/hbase-server/src/test/java/org/apache/hadoop/hbase/backup/TestFullBackupSetRestoreSet.java
index 3369bbf..4a14061 100644
--- a/hbase-server/src/test/java/org/apache/hadoop/hbase/backup/TestFullBackupSetRestoreSet.java
+++ b/hbase-server/src/test/java/org/apache/hadoop/hbase/backup/TestFullBackupSetRestoreSet.java
@@ -18,9 +18,10 @@
package org.apache.hadoop.hbase.backup;
-import static org.junit.Assert.*;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertTrue;
-import java.util.ArrayList;
import java.util.List;
import org.apache.commons.logging.Log;
@@ -61,6 +62,7 @@ public class TestFullBackupSetRestoreSet extends TestBackupBase {
assertTrue(backups.size() == 1);
String backupId = backups.get(0).getBackupId();
assertTrue(checkSucceeded(backupId));
+ assertTrue(backupId.startsWith(name));
LOG.info("backup complete");
http://git-wip-us.apache.org/repos/asf/hbase/blob/c3a960f2/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestCatalogJanitor.java
----------------------------------------------------------------------
diff --git a/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestCatalogJanitor.java b/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestCatalogJanitor.java
index f0612f4..2a8e3c9 100644
--- a/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestCatalogJanitor.java
+++ b/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestCatalogJanitor.java
@@ -436,7 +436,7 @@ public class TestCatalogJanitor {
final BackupType type,
final List<TableName> tableList,
final String targetRootDir, final int workers,
- final long bandwidth,
+ final long bandwidth, final String setName,
final long nonceGroup, final long nonce) throws IOException {
return null;
}