hbase git commit: HBASE-20630 B: Delete command enhancements

2018-06-13 Thread tedyu
Repository: hbase
Updated Branches:
  refs/heads/master 423a0ab71 -> 9e9db3245


HBASE-20630 B: Delete command enhancements

Signed-off-by: tedyu 


Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/9e9db324
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/9e9db324
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/9e9db324

Branch: refs/heads/master
Commit: 9e9db3245f2d825837f231c004eac99f83829a95
Parents: 423a0ab
Author: Vladimir Rodionov 
Authored: Wed Jun 6 16:49:15 2018 -0700
Committer: tedyu 
Committed: Wed Jun 13 18:46:48 2018 -0700

--
 .../hadoop/hbase/backup/BackupDriver.java   |  9 ++-
 .../hbase/backup/BackupRestoreConstants.java|  7 +-
 .../hbase/backup/impl/BackupCommands.java   | 85 +---
 .../hadoop/hbase/backup/TestBackupDelete.java   | 58 -
 4 files changed, 146 insertions(+), 13 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/9e9db324/hbase-backup/src/main/java/org/apache/hadoop/hbase/backup/BackupDriver.java
--
diff --git 
a/hbase-backup/src/main/java/org/apache/hadoop/hbase/backup/BackupDriver.java 
b/hbase-backup/src/main/java/org/apache/hadoop/hbase/backup/BackupDriver.java
index 8baf2f0..6644d89 100644
--- 
a/hbase-backup/src/main/java/org/apache/hadoop/hbase/backup/BackupDriver.java
+++ 
b/hbase-backup/src/main/java/org/apache/hadoop/hbase/backup/BackupDriver.java
@@ -17,10 +17,14 @@
  */
 package org.apache.hadoop.hbase.backup;
 
+import static 
org.apache.hadoop.hbase.backup.BackupRestoreConstants.OPTION_BACKUP_LIST_DESC;
 import static 
org.apache.hadoop.hbase.backup.BackupRestoreConstants.OPTION_BANDWIDTH;
 import static 
org.apache.hadoop.hbase.backup.BackupRestoreConstants.OPTION_BANDWIDTH_DESC;
 import static 
org.apache.hadoop.hbase.backup.BackupRestoreConstants.OPTION_DEBUG;
 import static 
org.apache.hadoop.hbase.backup.BackupRestoreConstants.OPTION_DEBUG_DESC;
+import static 
org.apache.hadoop.hbase.backup.BackupRestoreConstants.OPTION_KEEP;
+import static 
org.apache.hadoop.hbase.backup.BackupRestoreConstants.OPTION_KEEP_DESC;
+import static 
org.apache.hadoop.hbase.backup.BackupRestoreConstants.OPTION_LIST;
 import static 
org.apache.hadoop.hbase.backup.BackupRestoreConstants.OPTION_PATH;
 import static 
org.apache.hadoop.hbase.backup.BackupRestoreConstants.OPTION_PATH_DESC;
 import static 
org.apache.hadoop.hbase.backup.BackupRestoreConstants.OPTION_RECORD_NUMBER;
@@ -46,14 +50,13 @@ import org.apache.hadoop.hbase.backup.impl.BackupManager;
 import org.apache.hadoop.hbase.util.AbstractHBaseTool;
 import org.apache.hadoop.hbase.util.FSUtils;
 import org.apache.hadoop.util.ToolRunner;
+import org.apache.hbase.thirdparty.org.apache.commons.cli.CommandLine;
 import org.apache.log4j.Level;
 import org.apache.log4j.LogManager;
 import org.apache.yetus.audience.InterfaceAudience;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import org.apache.hbase.thirdparty.org.apache.commons.cli.CommandLine;
-
 /**
  *
  * Command-line entry point for backup operation
@@ -152,10 +155,12 @@ public class BackupDriver extends AbstractHBaseTool {
 addOptNoArg(OPTION_DEBUG, OPTION_DEBUG_DESC);
 addOptWithArg(OPTION_TABLE, OPTION_TABLE_DESC);
 addOptWithArg(OPTION_BANDWIDTH, OPTION_BANDWIDTH_DESC);
+addOptWithArg(OPTION_LIST, OPTION_BACKUP_LIST_DESC);
 addOptWithArg(OPTION_WORKERS, OPTION_WORKERS_DESC);
 addOptWithArg(OPTION_RECORD_NUMBER, OPTION_RECORD_NUMBER_DESC);
 addOptWithArg(OPTION_SET, OPTION_SET_DESC);
 addOptWithArg(OPTION_PATH, OPTION_PATH_DESC);
+addOptWithArg(OPTION_KEEP, OPTION_KEEP_DESC);
 addOptWithArg(OPTION_YARN_QUEUE_NAME, OPTION_YARN_QUEUE_NAME_DESC);
 
   }

http://git-wip-us.apache.org/repos/asf/hbase/blob/9e9db324/hbase-backup/src/main/java/org/apache/hadoop/hbase/backup/BackupRestoreConstants.java
--
diff --git 
a/hbase-backup/src/main/java/org/apache/hadoop/hbase/backup/BackupRestoreConstants.java
 
b/hbase-backup/src/main/java/org/apache/hadoop/hbase/backup/BackupRestoreConstants.java
index eaeef22..16ec3d2 100644
--- 
a/hbase-backup/src/main/java/org/apache/hadoop/hbase/backup/BackupRestoreConstants.java
+++ 
b/hbase-backup/src/main/java/org/apache/hadoop/hbase/backup/BackupRestoreConstants.java
@@ -65,8 +65,9 @@ public interface BackupRestoreConstants {
   String OPTION_TABLE_DESC = "Table name. If specified, only backup images,"
   + " which contain this table will be listed.";
 
-  String OPTION_TABLE_LIST = "l";
+  String OPTION_LIST = "l";
   String OPTION_TABLE_LIST_DESC = "Table name list, comma-separated.";
+  String OPTION_BACKUP_LIST_DESC = "Backup ids list, comma-separated.";
 
   String 

hbase git commit: HBASE-20722 Make RegionServerTracker only depend on children changed event

2018-06-13 Thread zhangduo
Repository: hbase
Updated Branches:
  refs/heads/master ec6643438 -> 423a0ab71


HBASE-20722 Make RegionServerTracker only depend on children changed event


Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/423a0ab7
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/423a0ab7
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/423a0ab7

Branch: refs/heads/master
Commit: 423a0ab71a4e588f3efd2d2ab96a36c16e8b37b1
Parents: ec66434
Author: zhangduo 
Authored: Wed Jun 13 21:11:23 2018 +0800
Committer: zhangduo 
Committed: Thu Jun 14 08:36:37 2018 +0800

--
 .../hadoop/hbase/client/VersionInfoUtil.java|   2 +-
 .../org/apache/hadoop/hbase/master/HMaster.java |  64 +++---
 .../hbase/master/RegionServerTracker.java   | 225 ++-
 .../hadoop/hbase/master/ServerManager.java  |  17 +-
 .../hbase/master/TestAssignmentListener.java|  98 +---
 .../hbase/master/TestClockSkewDetection.java|   2 +-
 .../hbase/master/TestMasterNoCluster.java   |  18 +-
 .../hbase/master/TestShutdownBackupMaster.java  |   2 +-
 8 files changed, 167 insertions(+), 261 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/423a0ab7/hbase-server/src/main/java/org/apache/hadoop/hbase/client/VersionInfoUtil.java
--
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/client/VersionInfoUtil.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/client/VersionInfoUtil.java
index 95984de..cde59eb 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/client/VersionInfoUtil.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/client/VersionInfoUtil.java
@@ -102,7 +102,7 @@ public final class VersionInfoUtil {
* @param versionInfo the VersionInfo object to pack
* @return the version number as int. (e.g. 0x0103004 is 1.3.4)
*/
-  private static int getVersionNumber(final HBaseProtos.VersionInfo 
versionInfo) {
+  public static int getVersionNumber(final HBaseProtos.VersionInfo 
versionInfo) {
 if (versionInfo != null) {
   try {
 final String[] components = getVersionComponents(versionInfo);

http://git-wip-us.apache.org/repos/asf/hbase/blob/423a0ab7/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 f20cc61..883bb4f 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
@@ -72,7 +72,6 @@ import org.apache.hadoop.hbase.NamespaceDescriptor;
 import org.apache.hadoop.hbase.PleaseHoldException;
 import org.apache.hadoop.hbase.ReplicationPeerNotFoundException;
 import org.apache.hadoop.hbase.ScheduledChore;
-import org.apache.hadoop.hbase.ServerMetricsBuilder;
 import org.apache.hadoop.hbase.ServerName;
 import org.apache.hadoop.hbase.TableDescriptors;
 import org.apache.hadoop.hbase.TableName;
@@ -87,6 +86,7 @@ import org.apache.hadoop.hbase.client.Result;
 import org.apache.hadoop.hbase.client.TableDescriptor;
 import org.apache.hadoop.hbase.client.TableDescriptorBuilder;
 import org.apache.hadoop.hbase.client.TableState;
+import org.apache.hadoop.hbase.client.VersionInfoUtil;
 import org.apache.hadoop.hbase.coprocessor.CoprocessorHost;
 import org.apache.hadoop.hbase.exceptions.DeserializationException;
 import org.apache.hadoop.hbase.exceptions.MergeRegionException;
@@ -212,7 +212,6 @@ import 
org.apache.hbase.thirdparty.com.google.common.collect.Maps;
 
 import org.apache.hadoop.hbase.shaded.protobuf.ProtobufUtil;
 import 
org.apache.hadoop.hbase.shaded.protobuf.generated.AdminProtos.GetRegionInfoResponse.CompactionState;
-import 
org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.RegionServerInfo;
 import org.apache.hadoop.hbase.shaded.protobuf.generated.QuotaProtos.Quotas;
 import 
org.apache.hadoop.hbase.shaded.protobuf.generated.QuotaProtos.SpaceViolationPolicy;
 import 
org.apache.hadoop.hbase.shaded.protobuf.generated.SnapshotProtos.SnapshotDescription;
@@ -297,7 +296,7 @@ public class HMaster extends HRegionServer implements 
MasterServices {
   // Manager and zk listener for master election
   private final ActiveMasterManager activeMasterManager;
   // Region server tracker
-  RegionServerTracker regionServerTracker;
+  private RegionServerTracker regionServerTracker;
   // Draining region server tracker
   private DrainingServerTracker drainingServerTracker;
   // Tracker for load balancer state
@@ -725,10 +724,16 @@ public class HMaster extends HRegionServer implements 

hbase git commit: HBASE-20722 Make RegionServerTracker only depend on children changed event

2018-06-13 Thread zhangduo
Repository: hbase
Updated Branches:
  refs/heads/branch-2 075523dd1 -> 161dc7c7f


HBASE-20722 Make RegionServerTracker only depend on children changed event


Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/161dc7c7
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/161dc7c7
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/161dc7c7

Branch: refs/heads/branch-2
Commit: 161dc7c7f3101d62240e291939bd86aeff8895ba
Parents: 075523d
Author: zhangduo 
Authored: Wed Jun 13 21:11:23 2018 +0800
Committer: zhangduo 
Committed: Thu Jun 14 08:38:53 2018 +0800

--
 .../hadoop/hbase/client/VersionInfoUtil.java|   2 +-
 .../org/apache/hadoop/hbase/master/HMaster.java |  62 ++---
 .../hbase/master/RegionServerTracker.java   | 225 ++-
 .../hadoop/hbase/master/ServerManager.java  |  17 +-
 .../hbase/master/TestAssignmentListener.java|  98 +---
 .../hbase/master/TestClockSkewDetection.java|   2 +-
 .../hbase/master/TestMasterNoCluster.java   |  20 +-
 .../hbase/master/TestShutdownBackupMaster.java  |   2 +-
 8 files changed, 167 insertions(+), 261 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/161dc7c7/hbase-server/src/main/java/org/apache/hadoop/hbase/client/VersionInfoUtil.java
--
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/client/VersionInfoUtil.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/client/VersionInfoUtil.java
index 95984de..cde59eb 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/client/VersionInfoUtil.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/client/VersionInfoUtil.java
@@ -102,7 +102,7 @@ public final class VersionInfoUtil {
* @param versionInfo the VersionInfo object to pack
* @return the version number as int. (e.g. 0x0103004 is 1.3.4)
*/
-  private static int getVersionNumber(final HBaseProtos.VersionInfo 
versionInfo) {
+  public static int getVersionNumber(final HBaseProtos.VersionInfo 
versionInfo) {
 if (versionInfo != null) {
   try {
 final String[] components = getVersionComponents(versionInfo);

http://git-wip-us.apache.org/repos/asf/hbase/blob/161dc7c7/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 fcb9989..433944d 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
@@ -72,7 +72,6 @@ import org.apache.hadoop.hbase.NamespaceDescriptor;
 import org.apache.hadoop.hbase.PleaseHoldException;
 import org.apache.hadoop.hbase.ReplicationPeerNotFoundException;
 import org.apache.hadoop.hbase.ScheduledChore;
-import org.apache.hadoop.hbase.ServerMetricsBuilder;
 import org.apache.hadoop.hbase.ServerName;
 import org.apache.hadoop.hbase.TableDescriptors;
 import org.apache.hadoop.hbase.TableName;
@@ -87,6 +86,7 @@ import org.apache.hadoop.hbase.client.Result;
 import org.apache.hadoop.hbase.client.TableDescriptor;
 import org.apache.hadoop.hbase.client.TableDescriptorBuilder;
 import org.apache.hadoop.hbase.client.TableState;
+import org.apache.hadoop.hbase.client.VersionInfoUtil;
 import org.apache.hadoop.hbase.coprocessor.CoprocessorHost;
 import org.apache.hadoop.hbase.exceptions.DeserializationException;
 import org.apache.hadoop.hbase.exceptions.MergeRegionException;
@@ -212,7 +212,6 @@ import 
org.apache.hbase.thirdparty.com.google.common.collect.Maps;
 
 import org.apache.hadoop.hbase.shaded.protobuf.ProtobufUtil;
 import 
org.apache.hadoop.hbase.shaded.protobuf.generated.AdminProtos.GetRegionInfoResponse.CompactionState;
-import 
org.apache.hadoop.hbase.shaded.protobuf.generated.HBaseProtos.RegionServerInfo;
 import org.apache.hadoop.hbase.shaded.protobuf.generated.QuotaProtos.Quotas;
 import 
org.apache.hadoop.hbase.shaded.protobuf.generated.QuotaProtos.SpaceViolationPolicy;
 import 
org.apache.hadoop.hbase.shaded.protobuf.generated.SnapshotProtos.SnapshotDescription;
@@ -297,7 +296,7 @@ public class HMaster extends HRegionServer implements 
MasterServices {
   // Manager and zk listener for master election
   private final ActiveMasterManager activeMasterManager;
   // Region server tracker
-  RegionServerTracker regionServerTracker;
+  private RegionServerTracker regionServerTracker;
   // Draining region server tracker
   private DrainingServerTracker drainingServerTracker;
   // Tracker for load balancer state
@@ -725,9 +724,15 @@ public class HMaster extends HRegionServer implements 

svn commit: r27441 [1/4] - in /dev/hbase/hbase-2.0.1RC0: ./ CHANGES.md RELEASENOTES.md hbase-2.0.1-bin.tar.gz hbase-2.0.1-bin.tar.gz.asc hbase-2.0.1-bin.tar.gz.sha512 hbase-2.0.1-src.tar.gz hbase-2.0.

2018-06-13 Thread stack
Author: stack
Date: Wed Jun 13 21:14:03 2018
New Revision: 27441

Log:
Add 2.0.1RC0

Added:
dev/hbase/hbase-2.0.1RC0/
dev/hbase/hbase-2.0.1RC0/CHANGES.md
dev/hbase/hbase-2.0.1RC0/RELEASENOTES.md
dev/hbase/hbase-2.0.1RC0/hbase-2.0.1-bin.tar.gz   (with props)
dev/hbase/hbase-2.0.1RC0/hbase-2.0.1-bin.tar.gz.asc
dev/hbase/hbase-2.0.1RC0/hbase-2.0.1-bin.tar.gz.sha512
dev/hbase/hbase-2.0.1RC0/hbase-2.0.1-src.tar.gz   (with props)
dev/hbase/hbase-2.0.1RC0/hbase-2.0.1-src.tar.gz.asc
dev/hbase/hbase-2.0.1RC0/hbase-2.0.1-src.tar.gz.sha512



svn commit: r27441 [3/4] - in /dev/hbase/hbase-2.0.1RC0: ./ CHANGES.md RELEASENOTES.md hbase-2.0.1-bin.tar.gz hbase-2.0.1-bin.tar.gz.asc hbase-2.0.1-bin.tar.gz.sha512 hbase-2.0.1-src.tar.gz hbase-2.0.

2018-06-13 Thread stack
Added: dev/hbase/hbase-2.0.1RC0/RELEASENOTES.md
==
--- dev/hbase/hbase-2.0.1RC0/RELEASENOTES.md (added)
+++ dev/hbase/hbase-2.0.1RC0/RELEASENOTES.md Wed Jun 13 21:14:03 2018
@@ -0,0 +1,8441 @@
+# HBASE  2.0.1 Release Notes
+
+
+
+These release notes cover new developer and user-facing incompatibilities, 
important issues, features, and major improvements.
+
+
+---
+
+* [HBASE-20590](https://issues.apache.org/jira/browse/HBASE-20590) | 
*Critical* | **REST Java client is not able to negotiate with the server in the 
secure mode**
+
+Adds a negotiation logic between a secure java REST client and server. After 
this jira the Java REST client will start responding to the Negotiate challenge 
sent by the server. Adds RESTDemoClient which can be used to verify whether the 
secure Java REST client works against secure REST server or not.
+
+
+---
+
+* [HBASE-20634](https://issues.apache.org/jira/browse/HBASE-20634) | 
*Critical* | **Reopen region while server crash can cause the procedure to be 
stuck**
+
+A second attempt at fixing HBASE-20173. Fixes unfinished keeping of server 
state inside AM (ONLINE=\>SPLITTING=\>OFFLINE=\>null). Concurrent unassigns 
look at server state to figure if they should wait on SCP to wake them up or 
not.
+
+
+---
+
+* [HBASE-20592](https://issues.apache.org/jira/browse/HBASE-20592) | *Minor* | 
**Create a tool to verify tables do not have prefix tree encoding**
+
+PreUpgradeValidator tool with DataBlockEncoding validator was added to verify 
cluster is upgradable to HBase 2.
+
+
+---
+
+* [HBASE-20661](https://issues.apache.org/jira/browse/HBASE-20661) | *Major* | 
**Move version from 2.0.0 to 2.0.1-SNAPSHOT in branch-2.0**
+
+Move version from 2.0.0 to 2.0.1-SNAPSHOT in all poms.
+
+
+---
+
+* [HBASE-20544](https://issues.apache.org/jira/browse/HBASE-20544) | *Blocker* 
| **downstream HBaseTestingUtility fails with invalid port**
+
+
+
+HBase now relies on an internal mechanism to determine when it is running a 
local hbase cluster meant for external interaction vs an encapsulated test. 
When created via the `HBaseTestingUtility`, ports for Master and RegionServer 
services and UIs will be set to random ports to allow for multiple parallel 
uses on a single machine. Normally when running a Standalone HBase Deployment 
(as described in the HBase Reference Guide) the ports will be picked according 
to the same defaults used in a full cluster set up. If you wish to instead use 
the random port assignment set `hbase.localcluster.assign.random.ports` to true.
+
+
+---
+
+* [HBASE-20004](https://issues.apache.org/jira/browse/HBASE-20004) | *Minor* | 
**Client is not able to execute REST queries in a secure cluster**
+
+Added 'hbase.rest.http.allow.options.method' configuration property to allow 
user to decide whether Rest Server HTTP should allow OPTIONS method or not. By 
default it is enabled in HBase 2.1.0+ versions and in other versions it is 
disabled.
+Similarly 'hbase.thrift.http.allow.options.method' is added HBase 1.5, 2.1.0 
and 3.0.0 versions. It is disabled by default.
+
+
+---
+
+* [HBASE-20327](https://issues.apache.org/jira/browse/HBASE-20327) | *Minor* | 
**When qualifier is not specified, append and incr operation do not work 
(shell)**
+
+This change will enable users to perform append and increment operation with 
null qualifier via hbase-shell.
+
+
+---
+
+* [HBASE-18842](https://issues.apache.org/jira/browse/HBASE-18842) | *Minor* | 
**The hbase shell clone\_snaphost command returns bad error message**
+
+
+
+When attempting to clone a snapshot but using a namespace that does not exist, 
the HBase shell will now correctly report the exception as caused by the passed 
namespace. Previously, the shell would report that the problem was an unknown 
namespace but it would claim the user provided table name was not found as a 
namespace. Both before and after this change the shell properly used the passed 
namespace to attempt to handle the request.
+
+
+
+
+# HBASE  2.0.0 Release Notes
+
+
+These release notes cover new developer and user-facing incompatibilities, 
important issues, features, and major improvements.
+
+
+---
+
+* [HBASE-20464](https://issues.apache.org/jira/browse/HBASE-20464) | *Major* | 
**Disable IMC**
+
+Change the default so that on creation of new tables, In-Memory Compaction 
BASIC is NOT enabled.
+
+This change is in branch-2.0 only, not in branch-2.
+
+
+---
+
+* [HBASE-20276](https://issues.apache.org/jira/browse/HBASE-20276) | *Blocker* 
| **[shell] Revert shell REPL change and document**
+
+
+The HBase shell now behaves as it did prior to the changes that started in 
HBASE-15965. Namely, some shell commands return values that may be further 
manipulated within the shell's IRB session.
+
+The command line option `--return-values` is no longer acted on by the shell 
since it now always behaves as it did when passed this parameter. Passing the 
option results in a 

svn commit: r27441 [2/4] - in /dev/hbase/hbase-2.0.1RC0: ./ CHANGES.md RELEASENOTES.md hbase-2.0.1-bin.tar.gz hbase-2.0.1-bin.tar.gz.asc hbase-2.0.1-bin.tar.gz.sha512 hbase-2.0.1-src.tar.gz hbase-2.0.

2018-06-13 Thread stack


Added: dev/hbase/hbase-2.0.1RC0/CHANGES.md
==
--- dev/hbase/hbase-2.0.1RC0/CHANGES.md (added)
+++ dev/hbase/hbase-2.0.1RC0/CHANGES.md Wed Jun 13 21:14:03 2018
@@ -0,0 +1,6216 @@
+# HBASE Changelog
+
+## Release 2.0.1 - Unreleased (as of 2018-06-13)
+
+### NEW FEATURES:
+
+| JIRA | Summary | Priority | Component |
+|: |: | :--- |: |
+| [HBASE-20656](https://issues.apache.org/jira/browse/HBASE-20656) | Validate 
pre-2.0 coprocessors against HBase 2.0+ |  Major | tooling |
+| [HBASE-20592](https://issues.apache.org/jira/browse/HBASE-20592) | Create a 
tool to verify tables do not have prefix tree encoding |  Minor | Operability, 
tooling |
+
+
+### IMPROVEMENTS:
+
+| JIRA | Summary | Priority | Component |
+|: |: | :--- |: |
+| [HBASE-20640](https://issues.apache.org/jira/browse/HBASE-20640) | 
TestQuotaGlobalsSettingsBypass missing test category and ClassRule |  Critical 
| test |
+| [HBASE-20548](https://issues.apache.org/jira/browse/HBASE-20548) | Master 
fails to startup on large clusters, refreshing block distribution |  Major | . |
+| [HBASE-20567](https://issues.apache.org/jira/browse/HBASE-20567) | Pass both 
old and new descriptors to pre/post hooks of modify operations for table and 
namespace |  Major | . |
+| [HBASE-20523](https://issues.apache.org/jira/browse/HBASE-20523) | PE tool 
should support configuring client side buffering sizes |  Minor | . |
+| [HBASE-20527](https://issues.apache.org/jira/browse/HBASE-20527) | Remove 
unused code in MetaTableAccessor |  Trivial | . |
+| [HBASE-20507](https://issues.apache.org/jira/browse/HBASE-20507) | Do not 
need to call recoverLease on the broken file when we fail to create a wal 
writer |  Major | wal |
+| [HBASE-20484](https://issues.apache.org/jira/browse/HBASE-20484) | Remove 
the unnecessary autoboxing in FilterListBase |  Trivial | . |
+| [HBASE-20327](https://issues.apache.org/jira/browse/HBASE-20327) | When 
qualifier is not specified, append and incr operation do not work (shell) |  
Minor | shell |
+| [HBASE-20389](https://issues.apache.org/jira/browse/HBASE-20389) | Move 
website building flags into a profile |  Minor | build, website |
+| [HBASE-20379](https://issues.apache.org/jira/browse/HBASE-20379) | 
shadedjars yetus plugin should add a footer link |  Major | test |
+
+
+### BUG FIXES:
+
+| JIRA | Summary | Priority | Component |
+|: |: | :--- |: |
+| [HBASE-19377](https://issues.apache.org/jira/browse/HBASE-19377) | 
Compatibility checker complaining about hash collisions |  Major | community |
+| [HBASE-20689](https://issues.apache.org/jira/browse/HBASE-20689) | Docker 
fails to install rubocop for precommit |  Blocker | build |
+| [HBASE-20698](https://issues.apache.org/jira/browse/HBASE-20698) | Master 
don't record right server version until new started region server call 
regionServerReport method |  Major | proc-v2 |
+| [HBASE-20699](https://issues.apache.org/jira/browse/HBASE-20699) | 
QuotaCache should cancel the QuotaRefresherChore service inside its stop() |  
Major | . |
+| [HBASE-20590](https://issues.apache.org/jira/browse/HBASE-20590) | REST Java 
client is not able to negotiate with the server in the secure mode |  Critical 
| REST, security |
+| [HBASE-20683](https://issues.apache.org/jira/browse/HBASE-20683) | Incorrect 
return value for PreUpgradeValidator |  Critical | . |
+| [HBASE-20684](https://issues.apache.org/jira/browse/HBASE-20684) | 
org.apache.hadoop.hbase.client.Scan#setStopRow javadoc uses incorrect method |  
Trivial | Client, documentation |
+| [HBASE-20670](https://issues.apache.org/jira/browse/HBASE-20670) | NPE in 
HMaster#isInMaintenanceMode |  Minor | . |
+| [HBASE-20634](https://issues.apache.org/jira/browse/HBASE-20634) | Reopen 
region while server crash can cause the procedure to be stuck |  Critical | . |
+| [HBASE-12882](https://issues.apache.org/jira/browse/HBASE-12882) | Log level 
for org.apache.hadoop.hbase package should be configurable |  Major | hbase |
+| [HBASE-20602](https://issues.apache.org/jira/browse/HBASE-20602) | 
hbase.master.quota.observer.ignore property seems to be not taking effect |  
Minor | documentation |
+| [HBASE-20661](https://issues.apache.org/jira/browse/HBASE-20661) | Move 
version from 2.0.0 to 2.0.1-SNAPSHOT in branch-2.0 |  Major | build |
+| [HBASE-20533](https://issues.apache.org/jira/browse/HBASE-20533) | Fix the 
flaky TestAssignmentManagerMetrics |  Major | . |
+| [HBASE-20597](https://issues.apache.org/jira/browse/HBASE-20597) | Use a 
lock to serialize access to a shared reference to ZooKeeperWatcher in 
HBaseReplicationEndpoint |  Minor | Replication |
+| [HBASE-20633](https://issues.apache.org/jira/browse/HBASE-20633) | Dropping 
a table containing a disable violation policy fails to remove the quota upon 
table delete |  Major | . |
+| [HBASE-20645](https://issues.apache.org/jira/browse/HBASE-20645) | Fix 
security\_available method 

svn commit: r27441 [4/4] - in /dev/hbase/hbase-2.0.1RC0: ./ CHANGES.md RELEASENOTES.md hbase-2.0.1-bin.tar.gz hbase-2.0.1-bin.tar.gz.asc hbase-2.0.1-bin.tar.gz.sha512 hbase-2.0.1-src.tar.gz hbase-2.0.

2018-06-13 Thread stack
Added: dev/hbase/hbase-2.0.1RC0/hbase-2.0.1-bin.tar.gz
==
Binary file - no diff available.

Propchange: dev/hbase/hbase-2.0.1RC0/hbase-2.0.1-bin.tar.gz
--
svn:mime-type = application/octet-stream

Added: dev/hbase/hbase-2.0.1RC0/hbase-2.0.1-bin.tar.gz.asc
==
--- dev/hbase/hbase-2.0.1RC0/hbase-2.0.1-bin.tar.gz.asc (added)
+++ dev/hbase/hbase-2.0.1RC0/hbase-2.0.1-bin.tar.gz.asc Wed Jun 13 21:14:03 2018
@@ -0,0 +1,16 @@
+-BEGIN PGP SIGNATURE-
+
+iQIcBAABCAAGBQJbIYMwAAoJEJgWx/yKzJPSqjAQAJNZNb1hCW7Db4OUrsd7/QcZ
+/mIOKty4CK6Q3itU4CL2QgEBnoXl8/aMq/jQKieJEjwq3NCeO4NfK4wWBmC2Zq5n
+Hv0wHVf3O5f1pvJTXiFEW1JYkSk/iGGmgu2SdDzfeMK1WHSa+XYUmYf2ET9OSRrj
+ZOySnmAEXllYkeBYLP37nMJ75BO4bKpO04+sBGmRGCQHILVjm+rpVTdvZDuoeldW
+YrXw+OUXWG+t92b2MDT7goW0hZIqfjuDZ44OCimdoRlDvK6LY2Uh5RnqsOU/B7C0
+5YwwNjVHE5x0Tz8Q6zrN3wg8jskuWHnPS4pAb6XUTsi6CB8Ah5NPLRyrPqQOZVkt
+hTGMQ526II9LGqi/BrypxuxTATKmNF3GO+BMIqq68TD8i1vNhzsncN0qtvqzRw4h
+qRmzhrcmy8P24um8fYFNxVqqaNnCRqVJb46aDflAbdPzucaDw9HcGKdjA97dbA5n
+GvAQQcaVYkVJ5BCTTxA/Rnm5RvYRtdk0qEmeEx1ErR5Ss+hz12ogVGueBhbNcged
+qGp9v0OHsz2V1Z6hLWgYAG48ZUCX3sWHNwI7uVokpE+2hAKb/LJc1UDN25S6OrZd
+jlcw8OgjRaLEGLTRzREYrDuYdjH9VpgvxR+w81klaKAxPs25BR4jfYaRHiBVn23c
+r87rgfW83AUPPhPDgH2p
+=4L0S
+-END PGP SIGNATURE-

Added: dev/hbase/hbase-2.0.1RC0/hbase-2.0.1-bin.tar.gz.sha512
==
--- dev/hbase/hbase-2.0.1RC0/hbase-2.0.1-bin.tar.gz.sha512 (added)
+++ dev/hbase/hbase-2.0.1RC0/hbase-2.0.1-bin.tar.gz.sha512 Wed Jun 13 21:14:03 
2018
@@ -0,0 +1,3 @@
+hbase-2.0.1-bin.tar.gz: B047D81B 0E4E2953 87A8C8A7 E2BE4AD0 E0DE8D05 82476BDE
+947A2046 54F59F8C 464A11AE 163337B8 6F99A30A 1CF023DE
+60E48456 C9D70F98 D244D053 51F8490B

Added: dev/hbase/hbase-2.0.1RC0/hbase-2.0.1-src.tar.gz
==
Binary file - no diff available.

Propchange: dev/hbase/hbase-2.0.1RC0/hbase-2.0.1-src.tar.gz
--
svn:mime-type = application/octet-stream

Added: dev/hbase/hbase-2.0.1RC0/hbase-2.0.1-src.tar.gz.asc
==
--- dev/hbase/hbase-2.0.1RC0/hbase-2.0.1-src.tar.gz.asc (added)
+++ dev/hbase/hbase-2.0.1RC0/hbase-2.0.1-src.tar.gz.asc Wed Jun 13 21:14:03 2018
@@ -0,0 +1,16 @@
+-BEGIN PGP SIGNATURE-
+
+iQIcBAABCAAGBQJbIYMxAAoJEJgWx/yKzJPSWW4P/jj7tOs+gAfVkSjwEWpAQj6P
+l5MCU6K70b6fDugfmE5n83cghHGacDH8r9K9uLQI1Vc+wlai2KwSuYPTNk0917ll
+Tfh/eWwaDSPQKwJutfXb1siAKmJGU+NHoC6NibWydtm4xFSnWasRWPsBVomIgEMM
+PyuFTrXrVdjfBb4ewhJsGaqjN4eIh9vtuYDLxoEfLRxNhpT7f3xk+FkSzjKJbfSf
+xT0Vn/NfsU7BJV+jJjLofm2qRCNotHlmgskDLBcccEIn3MyJ1Edf7oTHGieFUGaD
+iaNxpp6Z3L8d26zpHOkM0MjOghXhXr6K6Mbr/WqzCr8oRN+aGb0YfYS/jBxn6pwE
+PBqZUeLY6lzKjDoKiaTNDkq3Da/MUl/k2GSEAY+VnGKRClxYLC9UOw7AVKX6p8XP
+2/lpNKnSx9LpBYi+5aR4SC4QVHQEf2d/CawNZw0e0B3eRxcx3sjFIMosUXDTYDj9
+4MhvopK2MJ4+WdpL4ZV+v1eE2w7FWB3gbCjBlVCWZFdaWlkRasG+3ckHMxdmESnl
+a9xmrKk08R1HHZakJhjpEbjbhA27oGLPbsmRLZG8ukL8/s82iOZsNNmrb5jQ7nXD
+Ql+WhK5PUaMJG553CXwDG2RqvORWbsi9IaJ7BU8tH7wc3H29bEk63naNzyKCf96c
+0SBsvrIAznmNgzMZi6Jo
+=ukfN
+-END PGP SIGNATURE-

Added: dev/hbase/hbase-2.0.1RC0/hbase-2.0.1-src.tar.gz.sha512
==
--- dev/hbase/hbase-2.0.1RC0/hbase-2.0.1-src.tar.gz.sha512 (added)
+++ dev/hbase/hbase-2.0.1RC0/hbase-2.0.1-src.tar.gz.sha512 Wed Jun 13 21:14:03 
2018
@@ -0,0 +1,3 @@
+hbase-2.0.1-src.tar.gz: 54A1C353 758210F5 4F98A8E5 FB67FE9C 8B1FD32E 733DFC70
+E0D873F3 2E27FD85 5A17D68C B71FE538 96DD31CF C8DF0401
+29BEE194 8DF8FBDD BAB984A9 C6A105C0




[hbase] Git Push Summary

2018-06-13 Thread stack
Repository: hbase
Updated Tags:  refs/tags/2.0.1RC0 [created] 598c2277c


[hbase] Git Push Summary

2018-06-13 Thread elserj
Repository: hbase
Updated Tags:  refs/tags/1.4.5RC1 [created] ca99a9466


svn commit: r27439 - in /release/hbase: 1.3.2.1/ 1.3.2/

2018-06-13 Thread elserj
Author: elserj
Date: Wed Jun 13 19:49:55 2018
New Revision: 27439

Log:
Release 1.3.2.1

Added:
release/hbase/1.3.2.1/
release/hbase/1.3.2.1/hbase-1.3.2.1-bin.tar.gz   (with props)
release/hbase/1.3.2.1/hbase-1.3.2.1-bin.tar.gz.asc
release/hbase/1.3.2.1/hbase-1.3.2.1-bin.tar.gz.md5
release/hbase/1.3.2.1/hbase-1.3.2.1-bin.tar.gz.sha512
release/hbase/1.3.2.1/hbase-1.3.2.1-src.tar.gz   (with props)
release/hbase/1.3.2.1/hbase-1.3.2.1-src.tar.gz.asc
release/hbase/1.3.2.1/hbase-1.3.2.1-src.tar.gz.md5
release/hbase/1.3.2.1/hbase-1.3.2.1-src.tar.gz.sha512
Removed:
release/hbase/1.3.2/

Added: release/hbase/1.3.2.1/hbase-1.3.2.1-bin.tar.gz
==
Binary file - no diff available.

Propchange: release/hbase/1.3.2.1/hbase-1.3.2.1-bin.tar.gz
--
svn:mime-type = application/octet-stream

Added: release/hbase/1.3.2.1/hbase-1.3.2.1-bin.tar.gz.asc
==
--- release/hbase/1.3.2.1/hbase-1.3.2.1-bin.tar.gz.asc (added)
+++ release/hbase/1.3.2.1/hbase-1.3.2.1-bin.tar.gz.asc Wed Jun 13 19:49:55 2018
@@ -0,0 +1,16 @@
+-BEGIN PGP SIGNATURE-
+
+iQIzBAABCAAdFiEEnmKCL0Zo8XsJcq3Zt9XNRUZ31mwFAlsRtvcACgkQt9XNRUZ3
+1myITQ/+IbWXkFo+JueUFw5D9Us3y9y5JCNrQ5yu5qJDdGiX9BamNsJ2aWxGx/Wn
+AnXNnVguTZ3PNYp0ncefmmPWnxbrxyRbbcKuU2cVAQGNlIp9rJQiQ1DR//2C3uk0
+6v+QSnfp7o5tm8RxulubYkz3dBp0lQo78YI+1QY85jTpfkHUwrAnC8uN2ny9/0JC
+g2KfZ8MRlMZ6OYFIuRm4V2TDTY1MXrfoaO9L/X0riiXm0eMebZOWgpkgYRezDRv7
+mES83hDePS7YmdLO6Z8Ms5DH1wRCecrYeZhvQ5GSSVeLLXDkGjhtFpQ0/ckgjDql
+iIhooQTjKnl0m+au06/+ytNSY/8l52toL72WjU5m9F0qSKoKYA5ZpMq3cpQxiyxQ
+Jnp9SJ6Va0cyjBWoj3KoRiSaJpIPhR+3oNj2DDKBzUTPlLDFYNuePoy8SdV3lJYC
+p4gLv7PhmNM91g37ntxkEZhljWynTi4urJBRmmAOqvXutPXWSIpXO9VyNciHk50v
+n8/yToCgqczGSnanoa9/LjFU9fRY8wZJePJ+85c9EwbbDrsA9g0NqSP6Myz8c4wz
+M9ox4BuEbKFXj3A1u54fhvpc+6BJTTNMGgw5VBfNFVEOQbr4OxxPZ9SRt2Q+Uu0v
+DI4c+UTkICgNjfKlgRj/KAOVD3ecy+j2BnL5TPvRuJhtO0zeYAc=
+=i/ap
+-END PGP SIGNATURE-

Added: release/hbase/1.3.2.1/hbase-1.3.2.1-bin.tar.gz.md5
==
--- release/hbase/1.3.2.1/hbase-1.3.2.1-bin.tar.gz.md5 (added)
+++ release/hbase/1.3.2.1/hbase-1.3.2.1-bin.tar.gz.md5 Wed Jun 13 19:49:55 2018
@@ -0,0 +1 @@
+hbase-1.3.2.1-bin.tar.gz: 1D CB 27 E0 B0 56 28 B8  BE C7 41 03 2E B5 D3 31

Added: release/hbase/1.3.2.1/hbase-1.3.2.1-bin.tar.gz.sha512
==
--- release/hbase/1.3.2.1/hbase-1.3.2.1-bin.tar.gz.sha512 (added)
+++ release/hbase/1.3.2.1/hbase-1.3.2.1-bin.tar.gz.sha512 Wed Jun 13 19:49:55 
2018
@@ -0,0 +1,3 @@
+hbase-1.3.2.1-bin.tar.gz: 16EB62DA D4EA40F6 DD8747CF 6A49678E D1A4A53E B3A9E67D
+  C53A89F1 471D1DC5 5147E5CA D1AED8B0 B22A01F5 C1F6F6CA
+  4B4E9562 61CDA9B6 91D94C16 26593AFB

Added: release/hbase/1.3.2.1/hbase-1.3.2.1-src.tar.gz
==
Binary file - no diff available.

Propchange: release/hbase/1.3.2.1/hbase-1.3.2.1-src.tar.gz
--
svn:mime-type = application/octet-stream

Added: release/hbase/1.3.2.1/hbase-1.3.2.1-src.tar.gz.asc
==
--- release/hbase/1.3.2.1/hbase-1.3.2.1-src.tar.gz.asc (added)
+++ release/hbase/1.3.2.1/hbase-1.3.2.1-src.tar.gz.asc Wed Jun 13 19:49:55 2018
@@ -0,0 +1,16 @@
+-BEGIN PGP SIGNATURE-
+
+iQIzBAABCAAdFiEEnmKCL0Zo8XsJcq3Zt9XNRUZ31mwFAlsRtvcACgkQt9XNRUZ3
+1myjeA//Q9WPcu00Dnm8Cy5JQc7M8RnuWHFbMLBmJMDamyBHwbRpCWV0J7qpXTfO
+g5V09BmSUcJ2R5WRkMqAC8EMifTNP/LFhn1//H4HjEFoeYSXUDB81WQAY9/+/2EZ
+u6EkmO1GgkG6WxVIamljyhVZut3sB2IMRUMWxjFLQ/J3q6GxvRMoM90gCOnwTwuD
+aVZiAWFqF3O77yQsnMys7fNr15ymFIBT5YzxMF3W5AI1kY0tDh4i8zilxe2tjz3g
+0VmvAbvTrq1/SPQle4in8TzcwhKOS++EddYx7DzNmZT2CpC07iSoq87DpEGZiGah
+ueMZjYM9+ouKBnGbhmaSd/wjWfQmXf2OXszxmxOXFYmTqy1tjILV7UWB3ejivkcU
+6u/NYYqA3SOZ5T/Q6K+592qAGbtU/zn8nVfQmaTjrAxWQqV8EnFavsI3oas17+jJ
+/qCjyoTmyRPShruVsLOJvizDit6xleV/Y9nZ2lbxRAnxwS2xzm5gR8Xbvcmb8aWK
+FZf7SN2HR6aid5Nyx0IIc9m0qCpLWYUnKbgrQJavhqps19OrLnpGvmVzHcKz/ngA
+9S7U7jTIavk/xDx8G8N1ebCJj7Cl6qwoyYSnfCotBogpF6DSkFR9S0lD9mGPU/oz
+6Iba/yiViStZEKCsEqIjfptc9Ilq4k8ru5foomHx2j9dX/X+M1s=
+=vMR/
+-END PGP SIGNATURE-

Added: release/hbase/1.3.2.1/hbase-1.3.2.1-src.tar.gz.md5
==
--- release/hbase/1.3.2.1/hbase-1.3.2.1-src.tar.gz.md5 (added)
+++ release/hbase/1.3.2.1/hbase-1.3.2.1-src.tar.gz.md5 Wed Jun 13 19:49:55 2018
@@ -0,0 +1 @@
+hbase-1.3.2.1-src.tar.gz: 47 99 46 3C 2B E2 59 9B  5B 8B 2F 16 81 53 6B FE

Added: release/hbase/1.3.2.1/hbase-1.3.2.1-src.tar.gz.sha512

svn commit: r27438 - in /dev/hbase/1.4.5RC1: ./ hbase-1.4.5-bin.tar.gz hbase-1.4.5-bin.tar.gz.asc hbase-1.4.5-bin.tar.gz.sha512 hbase-1.4.5-src.tar.gz hbase-1.4.5-src.tar.gz.asc hbase-1.4.5-src.tar.gz

2018-06-13 Thread elserj
Author: elserj
Date: Wed Jun 13 19:45:24 2018
New Revision: 27438

Log:
1.4.5 rc1

Added:
dev/hbase/1.4.5RC1/
dev/hbase/1.4.5RC1/hbase-1.4.5-bin.tar.gz   (with props)
dev/hbase/1.4.5RC1/hbase-1.4.5-bin.tar.gz.asc
dev/hbase/1.4.5RC1/hbase-1.4.5-bin.tar.gz.sha512
dev/hbase/1.4.5RC1/hbase-1.4.5-src.tar.gz   (with props)
dev/hbase/1.4.5RC1/hbase-1.4.5-src.tar.gz.asc
dev/hbase/1.4.5RC1/hbase-1.4.5-src.tar.gz.sha512

Added: dev/hbase/1.4.5RC1/hbase-1.4.5-bin.tar.gz
==
Binary file - no diff available.

Propchange: dev/hbase/1.4.5RC1/hbase-1.4.5-bin.tar.gz
--
svn:mime-type = application/octet-stream

Added: dev/hbase/1.4.5RC1/hbase-1.4.5-bin.tar.gz.asc
==
--- dev/hbase/1.4.5RC1/hbase-1.4.5-bin.tar.gz.asc (added)
+++ dev/hbase/1.4.5RC1/hbase-1.4.5-bin.tar.gz.asc Wed Jun 13 19:45:24 2018
@@ -0,0 +1,16 @@
+-BEGIN PGP SIGNATURE-
+
+iQIzBAABCAAdFiEEnmKCL0Zo8XsJcq3Zt9XNRUZ31mwFAlshc/0ACgkQt9XNRUZ3
+1mxB8hAAnybk+gsM3y7O4KwbJT1h2XnrrBEUPuOtTsCQ+ln1TEcJ6QDLKc9c6m4R
+vIse78ORZdIFEV8qn3QRwFAvojblCijA1LSjKv6Y+mejc7lB6exqH53z4X/sHUhe
+K/HrtT6P7X/mciRZdXJr1AbtyT9XQJHjLkzHdxAtYOE13nJEtXLHmtniPDF4iry7
+mPhqUkzP/H7EkYp8cgnJKVwJlCaNaLJpHK4UIZeV2zZjymbmCt4HbQb4za1z4qkh
+y9W37XJ9c+Qwq/K7dfhdDqg44JDRJzbMC/GQsqGRQ+yKMLLF5afGuBrKAfaOHQ2y
+Nib6UbTZ/2DTg2dcHZFcp6Ysw5NUI0EodpDDo/8zKcfi2hll0R0lVxiHzVROp6DC
+YCntlaAiSngtzd26DHNijEpLf2LVIrdj1Qdo9N5CHTxMPstBWjirWBKYV9WVd6DX
+w4kEbeHfIf2MCGg7KElPsZucI05ZaMRq22/Nb1cvb28AbAUBtWmcHx0zhg94Zi+t
+C7MmJD0JK5YK4Lqp8qw6V5mU5OWHwWcWy6H73T8EHabZwBRMzTl0ExEmCW+I+CR4
+RAa0wfO37IcSLUB5GTVRmisgCo525UyGvDsW+S/sXdxe3VS/EyD5cXRtmgabz07c
+uMe2bruHCtNhHrLXsKbz2pXKAzDhXTdCqRuihV3XqzdLkldZlXc=
+=dfTQ
+-END PGP SIGNATURE-

Added: dev/hbase/1.4.5RC1/hbase-1.4.5-bin.tar.gz.sha512
==
--- dev/hbase/1.4.5RC1/hbase-1.4.5-bin.tar.gz.sha512 (added)
+++ dev/hbase/1.4.5RC1/hbase-1.4.5-bin.tar.gz.sha512 Wed Jun 13 19:45:24 2018
@@ -0,0 +1,3 @@
+hbase-1.4.5-bin.tar.gz: 1C34A448 DF4E102E 7964C6D8 84C2B1E5 35DD0CAA E67E6B15
+92DB2B10 8A6D3A0F B2D841F7 677EB5C3 8EB6D78F 342CB42F
+8CE90AA6 D62A5362 3C727023 4E8C95EE

Added: dev/hbase/1.4.5RC1/hbase-1.4.5-src.tar.gz
==
Binary file - no diff available.

Propchange: dev/hbase/1.4.5RC1/hbase-1.4.5-src.tar.gz
--
svn:mime-type = application/octet-stream

Added: dev/hbase/1.4.5RC1/hbase-1.4.5-src.tar.gz.asc
==
--- dev/hbase/1.4.5RC1/hbase-1.4.5-src.tar.gz.asc (added)
+++ dev/hbase/1.4.5RC1/hbase-1.4.5-src.tar.gz.asc Wed Jun 13 19:45:24 2018
@@ -0,0 +1,16 @@
+-BEGIN PGP SIGNATURE-
+
+iQIzBAABCAAdFiEEnmKCL0Zo8XsJcq3Zt9XNRUZ31mwFAlshc/0ACgkQt9XNRUZ3
+1mxsbBAAlzRGmxyKzY3aBwq1l76U0yvxM+pC0cgZs7gEm9qnFB49Sh2nuuPm7l4k
+Trp86JmbKMEfo8zK1UP//MZRSp7Ams/EDX3GFogvEiQfTPTnI7ejaClyv5q1EA7m
+h1OFzgMNTHrHVG1GFdZSLy/gYnpFmu48WDA/zAepNU05B857FZJTVa+qAORNZ3xg
+8isW3j+vDdLhxG4Np8hLFDBTnk6AEQcCBFQaq3bnsLpOd+EcnVf0ZA1fx1zs120w
+M9RB1ioUhyLH7q/Oiu3KQghP5M5rVc8HNSVbctm7Kcc3xyRwJc26sl3X+hTmf1/j
+y3YcZoHYK6qOtn6yy8g/+bJaVRnHybmG2lTTlPSheVeVJbEwfOvEHP3ig6Jby4CI
+Q9blHl5thTaGoOlBU2l2LeiEZGIa31eM2G0gEDOIHnmFBup9wsddTy1ECQqNmOvI
+SkSsdy9XCFJ3vsZH0SJoUwwnNUCUAZJ+1pnZp1ukJN+TeYIs4w0Om7IeyboXgceE
+d+r+vkvMxNypjfjegeXLH8P9faDHZePL1cCpsRoBu9FrJzpOp9ObcPdoGEquSqEb
+YnRteaWb+ztls2MjZNyuBNMqP9JblbDYmpS3E783gvB2rCdik7m2xhPAPwDq+eki
+MnAJyfrHBQHn18XSQMlqhN9Gyf5KG1S6W3mYz/cK4T3oaUnhHEw=
+=QQhI
+-END PGP SIGNATURE-

Added: dev/hbase/1.4.5RC1/hbase-1.4.5-src.tar.gz.sha512
==
--- dev/hbase/1.4.5RC1/hbase-1.4.5-src.tar.gz.sha512 (added)
+++ dev/hbase/1.4.5RC1/hbase-1.4.5-src.tar.gz.sha512 Wed Jun 13 19:45:24 2018
@@ -0,0 +1,3 @@
+hbase-1.4.5-src.tar.gz: 61B83966 952D334A FDAE7E3A 11FD8529 90583302 4AC186C4
+2B7BDA11 5CB472A4 34C71466 4DCF90BB 8735F658 20975292
+35319D5C 2287B0DE 64F484C7 42F635D6




[hbase] Git Push Summary

2018-06-13 Thread busbey
Repository: hbase
Updated Tags:  refs/tags/rel/1.2.6.1 [created] 390823dd0


hbase-site git commit: INFRA-10751 Empty commit

2018-06-13 Thread git-site-role
Repository: hbase-site
Updated Branches:
  refs/heads/asf-site bb78f24d2 -> 436b0b15e


INFRA-10751 Empty commit


Project: http://git-wip-us.apache.org/repos/asf/hbase-site/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase-site/commit/436b0b15
Tree: http://git-wip-us.apache.org/repos/asf/hbase-site/tree/436b0b15
Diff: http://git-wip-us.apache.org/repos/asf/hbase-site/diff/436b0b15

Branch: refs/heads/asf-site
Commit: 436b0b15e699bb9b7430791fc1160605141197ee
Parents: bb78f24
Author: jenkins 
Authored: Wed Jun 13 14:49:39 2018 +
Committer: jenkins 
Committed: Wed Jun 13 14:49:39 2018 +

--

--




[2/8] hbase-site git commit: Published site at ec66434380aee62289ccf7b173d765bbe7083718.

2018-06-13 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/bb78f24d/devapidocs/src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.html
--
diff --git 
a/devapidocs/src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.html
 
b/devapidocs/src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.html
index 094b592..5dc41f3 100644
--- 
a/devapidocs/src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.html
+++ 
b/devapidocs/src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.html
@@ -67,840 +67,860 @@
 059import 
org.apache.hadoop.hbase.util.Pair;
 060import 
org.apache.hadoop.hbase.wal.AbstractFSWALProvider;
 061import 
org.apache.yetus.audience.InterfaceAudience;
-062import org.slf4j.Logger;
-063import org.slf4j.LoggerFactory;
-064
-065import 
org.apache.hbase.thirdparty.com.google.common.annotations.VisibleForTesting;
-066import 
org.apache.hbase.thirdparty.com.google.common.util.concurrent.ThreadFactoryBuilder;
-067
-068/**
-069 * This class is responsible to manage 
all the replication sources. There are two classes of
-070 * sources:
-071 * ul
-072 * liNormal sources are 
persistent and one per peer cluster/li
-073 * liOld sources are recovered 
from a failed region server and our only goal is to finish
-074 * replicating the WAL queue it 
had/li
-075 * /ul
-076 * p
-077 * When a region server dies, this class 
uses a watcher to get notified and it tries to grab a lock
-078 * in order to transfer all the queues in 
a local old source.
-079 * p
-080 * Synchronization specification:
-081 * ul
-082 * liNo need synchronized on 
{@link #sources}. {@link #sources} is a ConcurrentHashMap and there
-083 * is a Lock for peer id in {@link 
PeerProcedureHandlerImpl}. So there is no race for peer
-084 * operations./li
-085 * liNeed synchronized on {@link 
#walsById}. There are four methods which modify it,
-086 * {@link #addPeer(String)}, {@link 
#removePeer(String)},
-087 * {@link #cleanOldLogs(NavigableSet, 
String, boolean, String)} and {@link #preLogRoll(Path)}.
-088 * {@link #walsById} is a 
ConcurrentHashMap and there is a Lock for peer id in
-089 * {@link PeerProcedureHandlerImpl}. So 
there is no race between {@link #addPeer(String)} and
-090 * {@link #removePeer(String)}. {@link 
#cleanOldLogs(NavigableSet, String, boolean, String)} is
-091 * called by {@link 
ReplicationSourceInterface}. So no race with {@link #addPeer(String)}.
-092 * {@link #removePeer(String)} will 
terminate the {@link ReplicationSourceInterface} firstly, then
-093 * remove the wals from {@link 
#walsById}. So no race with {@link #removePeer(String)}. The only
-094 * case need synchronized is {@link 
#cleanOldLogs(NavigableSet, String, boolean, String)} and
-095 * {@link 
#preLogRoll(Path)}./li
-096 * liNo need synchronized on 
{@link #walsByIdRecoveredQueues}. There are three methods which
-097 * modify it, {@link #removePeer(String)} 
,
-098 * {@link #cleanOldLogs(NavigableSet, 
String, boolean, String)} and
-099 * {@link 
ReplicationSourceManager.NodeFailoverWorker#run()}.
-100 * {@link #cleanOldLogs(NavigableSet, 
String, boolean, String)} is called by
-101 * {@link ReplicationSourceInterface}. 
{@link #removePeer(String)} will terminate the
-102 * {@link ReplicationSourceInterface} 
firstly, then remove the wals from
-103 * {@link #walsByIdRecoveredQueues}. And 
{@link ReplicationSourceManager.NodeFailoverWorker#run()}
-104 * will add the wals to {@link 
#walsByIdRecoveredQueues} firstly, then start up a
-105 * {@link ReplicationSourceInterface}. So 
there is no race here. For
-106 * {@link 
ReplicationSourceManager.NodeFailoverWorker#run()} and {@link 
#removePeer(String)}, there
-107 * is already synchronized on {@link 
#oldsources}. So no need synchronized on
-108 * {@link 
#walsByIdRecoveredQueues}./li
-109 * liNeed synchronized on {@link 
#latestPaths} to avoid the new open source miss new log./li
-110 * liNeed synchronized on {@link 
#oldsources} to avoid adding recovered source for the
-111 * to-be-removed peer./li
-112 * /ul
-113 */
-114@InterfaceAudience.Private
-115public class ReplicationSourceManager 
implements ReplicationListener {
-116  private static final Logger LOG = 
LoggerFactory.getLogger(ReplicationSourceManager.class);
-117  // all the sources that read this RS's 
logs and every peer only has one replication source
-118  private final ConcurrentMapString, 
ReplicationSourceInterface sources;
-119  // List of all the sources we got from 
died RSs
-120  private final 
ListReplicationSourceInterface oldsources;
-121  private final ReplicationQueueStorage 
queueStorage;
-122  private final ReplicationTracker 
replicationTracker;
-123  private final ReplicationPeers 
replicationPeers;
-124  // UUID for this cluster
-125  private final UUID clusterId;
-126  // All about stopping
-127  private final Server 

[3/8] hbase-site git commit: Published site at ec66434380aee62289ccf7b173d765bbe7083718.

2018-06-13 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/bb78f24d/devapidocs/src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.ReplicationQueueOperation.html
--
diff --git 
a/devapidocs/src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.ReplicationQueueOperation.html
 
b/devapidocs/src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.ReplicationQueueOperation.html
index 094b592..5dc41f3 100644
--- 
a/devapidocs/src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.ReplicationQueueOperation.html
+++ 
b/devapidocs/src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.ReplicationQueueOperation.html
@@ -67,840 +67,860 @@
 059import 
org.apache.hadoop.hbase.util.Pair;
 060import 
org.apache.hadoop.hbase.wal.AbstractFSWALProvider;
 061import 
org.apache.yetus.audience.InterfaceAudience;
-062import org.slf4j.Logger;
-063import org.slf4j.LoggerFactory;
-064
-065import 
org.apache.hbase.thirdparty.com.google.common.annotations.VisibleForTesting;
-066import 
org.apache.hbase.thirdparty.com.google.common.util.concurrent.ThreadFactoryBuilder;
-067
-068/**
-069 * This class is responsible to manage 
all the replication sources. There are two classes of
-070 * sources:
-071 * ul
-072 * liNormal sources are 
persistent and one per peer cluster/li
-073 * liOld sources are recovered 
from a failed region server and our only goal is to finish
-074 * replicating the WAL queue it 
had/li
-075 * /ul
-076 * p
-077 * When a region server dies, this class 
uses a watcher to get notified and it tries to grab a lock
-078 * in order to transfer all the queues in 
a local old source.
-079 * p
-080 * Synchronization specification:
-081 * ul
-082 * liNo need synchronized on 
{@link #sources}. {@link #sources} is a ConcurrentHashMap and there
-083 * is a Lock for peer id in {@link 
PeerProcedureHandlerImpl}. So there is no race for peer
-084 * operations./li
-085 * liNeed synchronized on {@link 
#walsById}. There are four methods which modify it,
-086 * {@link #addPeer(String)}, {@link 
#removePeer(String)},
-087 * {@link #cleanOldLogs(NavigableSet, 
String, boolean, String)} and {@link #preLogRoll(Path)}.
-088 * {@link #walsById} is a 
ConcurrentHashMap and there is a Lock for peer id in
-089 * {@link PeerProcedureHandlerImpl}. So 
there is no race between {@link #addPeer(String)} and
-090 * {@link #removePeer(String)}. {@link 
#cleanOldLogs(NavigableSet, String, boolean, String)} is
-091 * called by {@link 
ReplicationSourceInterface}. So no race with {@link #addPeer(String)}.
-092 * {@link #removePeer(String)} will 
terminate the {@link ReplicationSourceInterface} firstly, then
-093 * remove the wals from {@link 
#walsById}. So no race with {@link #removePeer(String)}. The only
-094 * case need synchronized is {@link 
#cleanOldLogs(NavigableSet, String, boolean, String)} and
-095 * {@link 
#preLogRoll(Path)}./li
-096 * liNo need synchronized on 
{@link #walsByIdRecoveredQueues}. There are three methods which
-097 * modify it, {@link #removePeer(String)} 
,
-098 * {@link #cleanOldLogs(NavigableSet, 
String, boolean, String)} and
-099 * {@link 
ReplicationSourceManager.NodeFailoverWorker#run()}.
-100 * {@link #cleanOldLogs(NavigableSet, 
String, boolean, String)} is called by
-101 * {@link ReplicationSourceInterface}. 
{@link #removePeer(String)} will terminate the
-102 * {@link ReplicationSourceInterface} 
firstly, then remove the wals from
-103 * {@link #walsByIdRecoveredQueues}. And 
{@link ReplicationSourceManager.NodeFailoverWorker#run()}
-104 * will add the wals to {@link 
#walsByIdRecoveredQueues} firstly, then start up a
-105 * {@link ReplicationSourceInterface}. So 
there is no race here. For
-106 * {@link 
ReplicationSourceManager.NodeFailoverWorker#run()} and {@link 
#removePeer(String)}, there
-107 * is already synchronized on {@link 
#oldsources}. So no need synchronized on
-108 * {@link 
#walsByIdRecoveredQueues}./li
-109 * liNeed synchronized on {@link 
#latestPaths} to avoid the new open source miss new log./li
-110 * liNeed synchronized on {@link 
#oldsources} to avoid adding recovered source for the
-111 * to-be-removed peer./li
-112 * /ul
-113 */
-114@InterfaceAudience.Private
-115public class ReplicationSourceManager 
implements ReplicationListener {
-116  private static final Logger LOG = 
LoggerFactory.getLogger(ReplicationSourceManager.class);
-117  // all the sources that read this RS's 
logs and every peer only has one replication source
-118  private final ConcurrentMapString, 
ReplicationSourceInterface sources;
-119  // List of all the sources we got from 
died RSs
-120  private final 
ListReplicationSourceInterface oldsources;
-121  private final ReplicationQueueStorage 
queueStorage;
-122  private final ReplicationTracker 
replicationTracker;
-123  private final ReplicationPeers 

[7/8] hbase-site git commit: Published site at ec66434380aee62289ccf7b173d765bbe7083718.

2018-06-13 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/bb78f24d/devapidocs/org/apache/hadoop/hbase/replication/regionserver/ReplicationSource.html
--
diff --git 
a/devapidocs/org/apache/hadoop/hbase/replication/regionserver/ReplicationSource.html
 
b/devapidocs/org/apache/hadoop/hbase/replication/regionserver/ReplicationSource.html
index 098a00c..8ad7a76 100644
--- 
a/devapidocs/org/apache/hadoop/hbase/replication/regionserver/ReplicationSource.html
+++ 
b/devapidocs/org/apache/hadoop/hbase/replication/regionserver/ReplicationSource.html
@@ -1204,7 +1204,7 @@ implements 
 
 getQueueId
-publichttps://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true;
 title="class or interface in java.lang">StringgetQueueId()
+publichttps://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true;
 title="class or interface in java.lang">StringgetQueueId()
 Description copied from 
interface:ReplicationSourceInterface
 Get the queue id that the source is replicating to
 
@@ -1221,7 +1221,7 @@ implements 
 
 getPeerId
-publichttps://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true;
 title="class or interface in java.lang">StringgetPeerId()
+publichttps://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true;
 title="class or interface in java.lang">StringgetPeerId()
 Description copied from 
interface:ReplicationSourceInterface
 Get the id that the source is replicating to.
 
@@ -1238,7 +1238,7 @@ implements 
 
 getCurrentPath
-publicorg.apache.hadoop.fs.PathgetCurrentPath()
+publicorg.apache.hadoop.fs.PathgetCurrentPath()
 Description copied from 
interface:ReplicationSourceInterface
 Get the current log that's replicated
 
@@ -1255,7 +1255,7 @@ implements 
 
 isSourceActive
-publicbooleanisSourceActive()
+publicbooleanisSourceActive()
 
 Specified by:
 isSourceActivein
 interfaceReplicationSourceInterface
@@ -1270,7 +1270,7 @@ implements 
 
 getStats
-publichttps://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true;
 title="class or interface in java.lang">StringgetStats()
+publichttps://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true;
 title="class or interface in java.lang">StringgetStats()
 Description copied from 
interface:ReplicationSourceInterface
 Get a string representation of the current statistics
  for this source
@@ -1288,7 +1288,7 @@ implements 
 
 getSourceMetrics
-publicMetricsSourcegetSourceMetrics()
+publicMetricsSourcegetSourceMetrics()
 
 Specified by:
 getSourceMetricsin
 interfaceReplicationSourceInterface
@@ -1303,7 +1303,7 @@ implements 
 
 postShipEdits
-publicvoidpostShipEdits(https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true;
 title="class or interface in java.util">ListWAL.Entryentries,
+publicvoidpostShipEdits(https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true;
 title="class or interface in java.util">ListWAL.Entryentries,
   intbatchSize)
 Description copied from 
interface:ReplicationSourceInterface
 Call this after the shipper thread ship some entries to 
peer cluster.
@@ -1322,7 +1322,7 @@ implements 
 
 getWALFileLengthProvider
-publicWALFileLengthProvidergetWALFileLengthProvider()
+publicWALFileLengthProvidergetWALFileLengthProvider()
 
 Specified by:
 getWALFileLengthProviderin
 interfaceReplicationSourceInterface
@@ -1337,7 +1337,7 @@ implements 
 
 getServerWALsBelongTo
-publicServerNamegetServerWALsBelongTo()
+publicServerNamegetServerWALsBelongTo()
 Description copied from 
interface:ReplicationSourceInterface
 The queue of WALs only belong to one region server. This 
will return the server name which all
  WALs belong to.
@@ -1355,7 +1355,7 @@ implements 
 
 getServer
-ServergetServer()
+ServergetServer()
 
 
 
@@ -1364,7 +1364,7 @@ implements 
 
 getQueueStorage
-ReplicationQueueStoragegetQueueStorage()
+ReplicationQueueStoragegetQueueStorage()
 
 
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/bb78f24d/devapidocs/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.NodeFailoverWorker.html
--
diff --git 
a/devapidocs/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.NodeFailoverWorker.html
 
b/devapidocs/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.NodeFailoverWorker.html
index af0be80..befc208 100644
--- 
a/devapidocs/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.NodeFailoverWorker.html
+++ 
b/devapidocs/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.NodeFailoverWorker.html
@@ -122,7 +122,7 @@ var activeTableTab = "activeTableTab";
 
 
 
-class ReplicationSourceManager.NodeFailoverWorker
+class ReplicationSourceManager.NodeFailoverWorker
 extends 

[6/8] hbase-site git commit: Published site at ec66434380aee62289ccf7b173d765bbe7083718.

2018-06-13 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/bb78f24d/devapidocs/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.html
--
diff --git 
a/devapidocs/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.html
 
b/devapidocs/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.html
index be50be5..a601aa3 100644
--- 
a/devapidocs/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.html
+++ 
b/devapidocs/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.html
@@ -18,7 +18,7 @@
 catch(err) {
 }
 //-->
-var methods = 
{"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":10,"i20":10,"i21":10,"i22":10,"i23":10,"i24":10,"i25":10,"i26":10,"i27":10,"i28":10,"i29":10,"i30":10,"i31":10,"i32":10,"i33":10,"i34":10,"i35":10,"i36":10};
+var methods = 
{"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":10,"i20":10,"i21":10,"i22":10,"i23":10,"i24":10,"i25":10,"i26":10,"i27":10,"i28":10,"i29":10,"i30":10,"i31":10,"i32":10,"i33":10,"i34":10,"i35":10,"i36":10,"i37":10};
 var tabs = {65535:["t0","All Methods"],2:["t2","Instance 
Methods"],8:["t4","Concrete Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
@@ -114,7 +114,7 @@ var activeTableTab = "activeTableTab";
 
 
 @InterfaceAudience.Private
-public class ReplicationSourceManager
+public class ReplicationSourceManager
 extends https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true;
 title="class or interface in java.lang">Object
 implements ReplicationListener
 This class is responsible to manage all the replication 
sources. There are two classes of
@@ -476,12 +476,19 @@ implements 
+private void
+interruptOrAbortWhenFail(ReplicationSourceManager.ReplicationQueueOperationop)
+Refresh replication source will terminate the old source 
first, then the source thread will be
+ interrupted.
+
+
+
 void
 join()
 Terminate the replication on this region server
 
 
-
+
 void
 logPositionAndCleanOldLogs(https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true;
 title="class or interface in java.lang">StringqueueId,
   booleanqueueRecovered,
@@ -489,50 +496,50 @@ implements This method will log the current position to storage.
 
 
-
+
 void
 postLogRoll(org.apache.hadoop.fs.PathnewLog)
 
-
+
 void
 preLogRoll(org.apache.hadoop.fs.PathnewLog)
 
-
+
 void
 refreshSources(https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true;
 title="class or interface in java.lang">StringpeerId)
 Close the previous replication sources of this peer id and 
open new sources to trigger the new
  replication state changes or new replication config changes.
 
 
-
+
 void
 regionServerRemoved(https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true;
 title="class or interface in java.lang">Stringregionserver)
 A region server has been removed from the local 
cluster
 
 
-
+
 void
 removePeer(https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true;
 title="class or interface in java.lang">StringpeerId)
 1.
 
 
-
+
 (package private) void
 removeRecoveredSource(ReplicationSourceInterfacesrc)
 Clear the metrics and related replication queue of the 
specified old source
 
 
-
+
 (package private) void
 removeSource(ReplicationSourceInterfacesrc)
 Clear the metrics and related replication queue of the 
specified old source
 
 
-
+
 private void
 throwIOExceptionWhenFail(ReplicationSourceManager.ReplicationQueueOperationop)
 
-
+
 private void
 transferQueues(ServerNamedeadRS)
 Transfer all the queues of the specified to this region 
server.
@@ -566,7 +573,7 @@ implements 
 
 LOG
-private static finalorg.slf4j.Logger LOG
+private static finalorg.slf4j.Logger LOG
 
 
 
@@ -575,7 +582,7 @@ implements 
 
 sources
-private finalhttps://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ConcurrentMap.html?is-external=true;
 title="class or interface in java.util.concurrent">ConcurrentMaphttps://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true;
 title="class or interface in java.lang">String,ReplicationSourceInterface
 sources
+private finalhttps://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ConcurrentMap.html?is-external=true;
 title="class or interface in java.util.concurrent">ConcurrentMaphttps://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true;
 title="class or interface in java.lang">String,ReplicationSourceInterface
 sources
 
 
 
@@ -584,7 +591,7 @@ implements 
 
 oldsources
-private finalhttps://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true;
 

[1/8] hbase-site git commit: Published site at ec66434380aee62289ccf7b173d765bbe7083718.

2018-06-13 Thread git-site-role
Repository: hbase-site
Updated Branches:
  refs/heads/asf-site ddf69c75f -> bb78f24d2


http://git-wip-us.apache.org/repos/asf/hbase-site/blob/bb78f24d/devapidocs/src-html/org/apache/hadoop/hbase/zookeeper/ZKWatcher.html
--
diff --git 
a/devapidocs/src-html/org/apache/hadoop/hbase/zookeeper/ZKWatcher.html 
b/devapidocs/src-html/org/apache/hadoop/hbase/zookeeper/ZKWatcher.html
index bbbd959..0d9db4e 100644
--- a/devapidocs/src-html/org/apache/hadoop/hbase/zookeeper/ZKWatcher.html
+++ b/devapidocs/src-html/org/apache/hadoop/hbase/zookeeper/ZKWatcher.html
@@ -615,53 +615,55 @@
 607  public void 
interruptedException(InterruptedException ie) throws KeeperException {
 608interruptedExceptionNoThrow(ie, 
true);
 609// Throw a system error exception to 
let upper level handle it
-610throw new 
KeeperException.SystemErrorException();
-611  }
-612
-613  /**
-614   * Log the InterruptedException and 
interrupt current thread
-615   * @param ie The IterruptedException to 
log
-616   * @param throwLater Whether we will 
throw the exception latter
-617   */
-618  public void 
interruptedExceptionNoThrow(InterruptedException ie, boolean throwLater) {
-619LOG.debug(prefix("Received 
InterruptedException, will interrupt current thread"
-620+ (throwLater ? " and rethrow a 
SystemErrorException" : "")),
-621  ie);
-622// At least preserve interrupt.
-623Thread.currentThread().interrupt();
-624  }
-625
-626  /**
-627   * Close the connection to ZooKeeper.
-628   *
-629   */
-630  @Override
-631  public void close() {
-632try {
-633  recoverableZooKeeper.close();
-634} catch (InterruptedException e) {
-635  
Thread.currentThread().interrupt();
-636}
-637  }
-638
-639  public Configuration getConfiguration() 
{
-640return conf;
-641  }
-642
-643  @Override
-644  public void abort(String why, Throwable 
e) {
-645if (this.abortable != null) {
-646  this.abortable.abort(why, e);
-647} else {
-648  this.aborted = true;
-649}
-650  }
-651
-652  @Override
-653  public boolean isAborted() {
-654return this.abortable == null? 
this.aborted: this.abortable.isAborted();
-655  }
-656}
+610KeeperException keeperException = new 
KeeperException.SystemErrorException();
+611keeperException.initCause(ie);
+612throw keeperException;
+613  }
+614
+615  /**
+616   * Log the InterruptedException and 
interrupt current thread
+617   * @param ie The IterruptedException to 
log
+618   * @param throwLater Whether we will 
throw the exception latter
+619   */
+620  public void 
interruptedExceptionNoThrow(InterruptedException ie, boolean throwLater) {
+621LOG.debug(prefix("Received 
InterruptedException, will interrupt current thread"
+622+ (throwLater ? " and rethrow a 
SystemErrorException" : "")),
+623  ie);
+624// At least preserve interrupt.
+625Thread.currentThread().interrupt();
+626  }
+627
+628  /**
+629   * Close the connection to ZooKeeper.
+630   *
+631   */
+632  @Override
+633  public void close() {
+634try {
+635  recoverableZooKeeper.close();
+636} catch (InterruptedException e) {
+637  
Thread.currentThread().interrupt();
+638}
+639  }
+640
+641  public Configuration getConfiguration() 
{
+642return conf;
+643  }
+644
+645  @Override
+646  public void abort(String why, Throwable 
e) {
+647if (this.abortable != null) {
+648  this.abortable.abort(why, e);
+649} else {
+650  this.aborted = true;
+651}
+652  }
+653
+654  @Override
+655  public boolean isAborted() {
+656return this.abortable == null? 
this.aborted: this.abortable.isAborted();
+657  }
+658}
 
 
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/bb78f24d/downloads.html
--
diff --git a/downloads.html b/downloads.html
index 6752774..f1c834c 100644
--- a/downloads.html
+++ b/downloads.html
@@ -7,7 +7,7 @@
   
 
 
-
+
 
 Apache HBase  Apache HBase Downloads
 
@@ -366,7 +366,7 @@ under the License. -->
 https://www.apache.org/;>The Apache Software 
Foundation.
 All rights reserved.  
 
-  Last Published: 
2018-06-12
+  Last Published: 
2018-06-13
 
 
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/bb78f24d/export_control.html
--
diff --git a/export_control.html b/export_control.html
index a123018..94b223a 100644
--- a/export_control.html
+++ b/export_control.html
@@ -7,7 +7,7 @@
   
 
 
-
+
 
 Apache HBase  
   Export Control
@@ -331,7 +331,7 @@ for more details.
 https://www.apache.org/;>The Apache Software 
Foundation.
 All rights reserved.  
 
-  

[8/8] hbase-site git commit: Published site at ec66434380aee62289ccf7b173d765bbe7083718.

2018-06-13 Thread git-site-role
Published site at ec66434380aee62289ccf7b173d765bbe7083718.


Project: http://git-wip-us.apache.org/repos/asf/hbase-site/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase-site/commit/bb78f24d
Tree: http://git-wip-us.apache.org/repos/asf/hbase-site/tree/bb78f24d
Diff: http://git-wip-us.apache.org/repos/asf/hbase-site/diff/bb78f24d

Branch: refs/heads/asf-site
Commit: bb78f24d29de5c1f0b0f5c9b72a6b1167e317d64
Parents: ddf69c7
Author: jenkins 
Authored: Wed Jun 13 14:49:24 2018 +
Committer: jenkins 
Committed: Wed Jun 13 14:49:24 2018 +

--
 acid-semantics.html |4 +-
 apache_hbase_reference_guide.pdf|4 +-
 book.html   |2 +-
 bulk-loads.html |4 +-
 checkstyle-aggregate.html   |   12 +-
 coc.html|4 +-
 dependencies.html   |4 +-
 dependency-convergence.html |4 +-
 dependency-info.html|4 +-
 dependency-management.html  |4 +-
 devapidocs/constant-values.html |6 +-
 devapidocs/index-all.html   |5 +
 .../hadoop/hbase/backup/package-tree.html   |2 +-
 .../hadoop/hbase/client/package-tree.html   |   24 +-
 .../hadoop/hbase/executor/package-tree.html |2 +-
 .../hadoop/hbase/filter/package-tree.html   |   10 +-
 .../hadoop/hbase/io/hfile/package-tree.html |2 +-
 .../apache/hadoop/hbase/ipc/package-tree.html   |2 +-
 .../hadoop/hbase/mapreduce/package-tree.html|2 +-
 .../hbase/master/balancer/package-tree.html |2 +-
 .../hadoop/hbase/master/package-tree.html   |4 +-
 .../hbase/master/procedure/package-tree.html|4 +-
 .../org/apache/hadoop/hbase/package-tree.html   |   12 +-
 .../hadoop/hbase/procedure2/package-tree.html   |4 +-
 .../hadoop/hbase/quotas/package-tree.html   |6 +-
 .../hadoop/hbase/regionserver/package-tree.html |   18 +-
 .../regionserver/querymatcher/package-tree.html |2 +-
 .../hbase/regionserver/wal/package-tree.html|2 +-
 .../ReplicationSource.LogsComparator.html   |8 +-
 .../regionserver/ReplicationSource.html |   22 +-
 ...icationSourceManager.NodeFailoverWorker.html |   12 +-
 ...SourceManager.ReplicationQueueOperation.html |4 +-
 .../regionserver/ReplicationSourceManager.html  |  158 +-
 ...SourceManager.ReplicationQueueOperation.html |7 +
 .../replication/regionserver/package-tree.html  |2 +-
 .../hadoop/hbase/rest/model/package-tree.html   |2 +-
 .../hbase/security/access/package-tree.html |2 +-
 .../hadoop/hbase/security/package-tree.html |4 +-
 .../hadoop/hbase/thrift/package-tree.html   |2 +-
 .../apache/hadoop/hbase/util/package-tree.html  |8 +-
 .../hadoop/hbase/zookeeper/ZKWatcher.html   |   10 +-
 .../org/apache/hadoop/hbase/Version.html|6 +-
 .../ReplicationSource.LogsComparator.html   |  260 +--
 .../regionserver/ReplicationSource.html |  260 +--
 ...icationSourceManager.NodeFailoverWorker.html | 1676 +-
 ...SourceManager.ReplicationQueueOperation.html | 1676 +-
 .../regionserver/ReplicationSourceManager.html  | 1676 +-
 .../hadoop/hbase/zookeeper/ZKWatcher.html   |   96 +-
 downloads.html  |4 +-
 export_control.html |4 +-
 index.html  |4 +-
 integration.html|4 +-
 issue-tracking.html |4 +-
 license.html|4 +-
 mail-lists.html |4 +-
 metrics.html|4 +-
 old_news.html   |4 +-
 plugin-management.html  |4 +-
 plugins.html|4 +-
 poweredbyhbase.html |4 +-
 project-info.html   |4 +-
 project-reports.html|4 +-
 project-summary.html|4 +-
 pseudo-distributed.html |4 +-
 replication.html|4 +-
 resources.html  |4 +-
 source-repository.html  |4 +-
 sponsors.html   |4 +-
 supportingprojects.html |4 +-
 team-list.html  |4 +-
 70 files changed, 3133 insertions(+), 3001 deletions(-)
--



[4/8] hbase-site git commit: Published site at ec66434380aee62289ccf7b173d765bbe7083718.

2018-06-13 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/bb78f24d/devapidocs/src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.NodeFailoverWorker.html
--
diff --git 
a/devapidocs/src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.NodeFailoverWorker.html
 
b/devapidocs/src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.NodeFailoverWorker.html
index 094b592..5dc41f3 100644
--- 
a/devapidocs/src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.NodeFailoverWorker.html
+++ 
b/devapidocs/src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.NodeFailoverWorker.html
@@ -67,840 +67,860 @@
 059import 
org.apache.hadoop.hbase.util.Pair;
 060import 
org.apache.hadoop.hbase.wal.AbstractFSWALProvider;
 061import 
org.apache.yetus.audience.InterfaceAudience;
-062import org.slf4j.Logger;
-063import org.slf4j.LoggerFactory;
-064
-065import 
org.apache.hbase.thirdparty.com.google.common.annotations.VisibleForTesting;
-066import 
org.apache.hbase.thirdparty.com.google.common.util.concurrent.ThreadFactoryBuilder;
-067
-068/**
-069 * This class is responsible to manage 
all the replication sources. There are two classes of
-070 * sources:
-071 * ul
-072 * liNormal sources are 
persistent and one per peer cluster/li
-073 * liOld sources are recovered 
from a failed region server and our only goal is to finish
-074 * replicating the WAL queue it 
had/li
-075 * /ul
-076 * p
-077 * When a region server dies, this class 
uses a watcher to get notified and it tries to grab a lock
-078 * in order to transfer all the queues in 
a local old source.
-079 * p
-080 * Synchronization specification:
-081 * ul
-082 * liNo need synchronized on 
{@link #sources}. {@link #sources} is a ConcurrentHashMap and there
-083 * is a Lock for peer id in {@link 
PeerProcedureHandlerImpl}. So there is no race for peer
-084 * operations./li
-085 * liNeed synchronized on {@link 
#walsById}. There are four methods which modify it,
-086 * {@link #addPeer(String)}, {@link 
#removePeer(String)},
-087 * {@link #cleanOldLogs(NavigableSet, 
String, boolean, String)} and {@link #preLogRoll(Path)}.
-088 * {@link #walsById} is a 
ConcurrentHashMap and there is a Lock for peer id in
-089 * {@link PeerProcedureHandlerImpl}. So 
there is no race between {@link #addPeer(String)} and
-090 * {@link #removePeer(String)}. {@link 
#cleanOldLogs(NavigableSet, String, boolean, String)} is
-091 * called by {@link 
ReplicationSourceInterface}. So no race with {@link #addPeer(String)}.
-092 * {@link #removePeer(String)} will 
terminate the {@link ReplicationSourceInterface} firstly, then
-093 * remove the wals from {@link 
#walsById}. So no race with {@link #removePeer(String)}. The only
-094 * case need synchronized is {@link 
#cleanOldLogs(NavigableSet, String, boolean, String)} and
-095 * {@link 
#preLogRoll(Path)}./li
-096 * liNo need synchronized on 
{@link #walsByIdRecoveredQueues}. There are three methods which
-097 * modify it, {@link #removePeer(String)} 
,
-098 * {@link #cleanOldLogs(NavigableSet, 
String, boolean, String)} and
-099 * {@link 
ReplicationSourceManager.NodeFailoverWorker#run()}.
-100 * {@link #cleanOldLogs(NavigableSet, 
String, boolean, String)} is called by
-101 * {@link ReplicationSourceInterface}. 
{@link #removePeer(String)} will terminate the
-102 * {@link ReplicationSourceInterface} 
firstly, then remove the wals from
-103 * {@link #walsByIdRecoveredQueues}. And 
{@link ReplicationSourceManager.NodeFailoverWorker#run()}
-104 * will add the wals to {@link 
#walsByIdRecoveredQueues} firstly, then start up a
-105 * {@link ReplicationSourceInterface}. So 
there is no race here. For
-106 * {@link 
ReplicationSourceManager.NodeFailoverWorker#run()} and {@link 
#removePeer(String)}, there
-107 * is already synchronized on {@link 
#oldsources}. So no need synchronized on
-108 * {@link 
#walsByIdRecoveredQueues}./li
-109 * liNeed synchronized on {@link 
#latestPaths} to avoid the new open source miss new log./li
-110 * liNeed synchronized on {@link 
#oldsources} to avoid adding recovered source for the
-111 * to-be-removed peer./li
-112 * /ul
-113 */
-114@InterfaceAudience.Private
-115public class ReplicationSourceManager 
implements ReplicationListener {
-116  private static final Logger LOG = 
LoggerFactory.getLogger(ReplicationSourceManager.class);
-117  // all the sources that read this RS's 
logs and every peer only has one replication source
-118  private final ConcurrentMapString, 
ReplicationSourceInterface sources;
-119  // List of all the sources we got from 
died RSs
-120  private final 
ListReplicationSourceInterface oldsources;
-121  private final ReplicationQueueStorage 
queueStorage;
-122  private final ReplicationTracker 
replicationTracker;
-123  private final ReplicationPeers 
replicationPeers;
-124  // UUID for this 

[5/8] hbase-site git commit: Published site at ec66434380aee62289ccf7b173d765bbe7083718.

2018-06-13 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/bb78f24d/devapidocs/org/apache/hadoop/hbase/util/package-tree.html
--
diff --git a/devapidocs/org/apache/hadoop/hbase/util/package-tree.html 
b/devapidocs/org/apache/hadoop/hbase/util/package-tree.html
index 596cffe..7ee6a13 100644
--- a/devapidocs/org/apache/hadoop/hbase/util/package-tree.html
+++ b/devapidocs/org/apache/hadoop/hbase/util/package-tree.html
@@ -532,14 +532,14 @@
 
 java.lang.https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true;
 title="class or interface in java.lang">EnumE (implements java.lang.https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true;
 title="class or interface in java.lang">ComparableT, java.io.https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true;
 title="class or interface in java.io">Serializable)
 
+org.apache.hadoop.hbase.util.PoolMap.PoolType
 org.apache.hadoop.hbase.util.Bytes.LexicographicalComparerHolder.UnsafeComparer
 (implements org.apache.hadoop.hbase.util.Bytes.ComparerT)
-org.apache.hadoop.hbase.util.HBaseFsck.ErrorReporter.ERROR_CODE
+org.apache.hadoop.hbase.util.Bytes.LexicographicalComparerHolder.PureJavaComparer
 (implements org.apache.hadoop.hbase.util.Bytes.ComparerT)
 org.apache.hadoop.hbase.util.PrettyPrinter.Unit
+org.apache.hadoop.hbase.util.HBaseFsck.ErrorReporter.ERROR_CODE
+org.apache.hadoop.hbase.util.ChecksumType
 org.apache.hadoop.hbase.util.Order
 org.apache.hadoop.hbase.util.IdReadWriteLock.ReferenceType
-org.apache.hadoop.hbase.util.ChecksumType
-org.apache.hadoop.hbase.util.PoolMap.PoolType
-org.apache.hadoop.hbase.util.Bytes.LexicographicalComparerHolder.PureJavaComparer
 (implements org.apache.hadoop.hbase.util.Bytes.ComparerT)
 
 
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/bb78f24d/devapidocs/org/apache/hadoop/hbase/zookeeper/ZKWatcher.html
--
diff --git a/devapidocs/org/apache/hadoop/hbase/zookeeper/ZKWatcher.html 
b/devapidocs/org/apache/hadoop/hbase/zookeeper/ZKWatcher.html
index c4df8e7..62a3538 100644
--- a/devapidocs/org/apache/hadoop/hbase/zookeeper/ZKWatcher.html
+++ b/devapidocs/org/apache/hadoop/hbase/zookeeper/ZKWatcher.html
@@ -1017,7 +1017,7 @@ implements org.apache.zookeeper.Watcher, 
 
 interruptedExceptionNoThrow
-publicvoidinterruptedExceptionNoThrow(https://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true;
 title="class or interface in java.lang">InterruptedExceptionie,
+publicvoidinterruptedExceptionNoThrow(https://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true;
 title="class or interface in java.lang">InterruptedExceptionie,
 booleanthrowLater)
 Log the InterruptedException and interrupt current 
thread
 
@@ -1033,7 +1033,7 @@ implements org.apache.zookeeper.Watcher, 
 
 close
-publicvoidclose()
+publicvoidclose()
 Close the connection to ZooKeeper.
 
 Specified by:
@@ -1049,7 +1049,7 @@ implements org.apache.zookeeper.Watcher, 
 
 getConfiguration
-publicorg.apache.hadoop.conf.ConfigurationgetConfiguration()
+publicorg.apache.hadoop.conf.ConfigurationgetConfiguration()
 
 
 
@@ -1058,7 +1058,7 @@ implements org.apache.zookeeper.Watcher, 
 
 abort
-publicvoidabort(https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true;
 title="class or interface in java.lang">Stringwhy,
+publicvoidabort(https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true;
 title="class or interface in java.lang">Stringwhy,
   https://docs.oracle.com/javase/8/docs/api/java/lang/Throwable.html?is-external=true;
 title="class or interface in java.lang">Throwablee)
 Description copied from 
interface:Abortable
 Abort the server or client.
@@ -1077,7 +1077,7 @@ implements org.apache.zookeeper.Watcher, 
 
 isAborted
-publicbooleanisAborted()
+publicbooleanisAborted()
 Description copied from 
interface:Abortable
 Check if the server or client was aborted.
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/bb78f24d/devapidocs/src-html/org/apache/hadoop/hbase/Version.html
--
diff --git a/devapidocs/src-html/org/apache/hadoop/hbase/Version.html 
b/devapidocs/src-html/org/apache/hadoop/hbase/Version.html
index 220ff10..45aaf8a 100644
--- a/devapidocs/src-html/org/apache/hadoop/hbase/Version.html
+++ b/devapidocs/src-html/org/apache/hadoop/hbase/Version.html
@@ -16,11 +16,11 @@
 008@InterfaceAudience.Private
 009public class Version {
 010  public static final String version = 
"3.0.0-SNAPSHOT";
-011  public static final String revision = 
"edf60b965be903f205ec689b59c55229e0cb1dbf";
+011  public static final String revision = 
"ec66434380aee62289ccf7b173d765bbe7083718";
 012  public static final String user = 

hbase git commit: HBASE-20561 The way we stop a ReplicationSource may cause the RS down

2018-06-13 Thread zghao
Repository: hbase
Updated Branches:
  refs/heads/branch-2 0a6aec498 -> 075523dd1


HBASE-20561 The way we stop a ReplicationSource may cause the RS down


Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/075523dd
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/075523dd
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/075523dd

Branch: refs/heads/branch-2
Commit: 075523dd1eabb027f3268f51a4aa0f17113e58d3
Parents: 0a6aec4
Author: Guanghao Zhang 
Authored: Tue Jun 12 22:19:39 2018 +0800
Committer: Guanghao Zhang 
Committed: Wed Jun 13 18:05:27 2018 +0800

--
 .../regionserver/ReplicationSource.java | 24 +++--
 .../regionserver/ReplicationSourceManager.java  | 28 +---
 .../hadoop/hbase/zookeeper/ZKWatcher.java   |  4 ++-
 3 files changed, 49 insertions(+), 7 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/075523dd/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSource.java
--
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSource.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSource.java
index d21d83c..b63712b 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSource.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSource.java
@@ -499,9 +499,29 @@ public class ReplicationSource implements 
ReplicationSourceInterface {
 Collection workers = workerThreads.values();
 for (ReplicationSourceShipper worker : workers) {
   worker.stopWorker();
-  worker.entryReader.interrupt();
-  worker.interrupt();
+  worker.entryReader.setReaderRunning(false);
 }
+
+for (ReplicationSourceShipper worker : workers) {
+  if (worker.isAlive() || worker.entryReader.isAlive()) {
+try {
+  // Wait worker to stop
+  Thread.sleep(this.sleepForRetries);
+} catch (InterruptedException e) {
+  LOG.info("Interrupted while waiting " + worker.getName() + " to 
stop");
+  Thread.currentThread().interrupt();
+}
+// If worker still is alive after waiting, interrupt it
+if (worker.isAlive()) {
+  worker.interrupt();
+}
+// If entry reader is alive after waiting, interrupt it
+if (worker.entryReader.isAlive()) {
+  worker.entryReader.interrupt();
+}
+  }
+}
+
 if (this.replicationEndpoint != null) {
   this.replicationEndpoint.stop();
 }

http://git-wip-us.apache.org/repos/asf/hbase/blob/075523dd/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.java
--
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.java
index 9b4a22c..a370867 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.java
@@ -59,6 +59,7 @@ import org.apache.hadoop.hbase.replication.ReplicationTracker;
 import org.apache.hadoop.hbase.util.Pair;
 import org.apache.hadoop.hbase.wal.AbstractFSWALProvider;
 import org.apache.yetus.audience.InterfaceAudience;
+import org.apache.zookeeper.KeeperException;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -449,6 +450,24 @@ public class ReplicationSourceManager implements 
ReplicationListener {
 void exec() throws ReplicationException;
   }
 
+  /**
+   * Refresh replication source will terminate the old source first, then the 
source thread will be
+   * interrupted. Need to handle it instead of abort the region server.
+   */
+  private void interruptOrAbortWhenFail(ReplicationQueueOperation op) {
+try {
+  op.exec();
+} catch (ReplicationException e) {
+  if (e.getCause() != null && e.getCause() instanceof 
KeeperException.SystemErrorException
+  && e.getCause().getCause() != null && e.getCause()
+  .getCause() instanceof InterruptedException) {
+throw new RuntimeException(
+"Thread is interrupted, the replication source may be terminated");
+  }
+  server.abort("Failed to operate on replication queue", e);
+}
+  }
+
   private void abortWhenFail(ReplicationQueueOperation op) {
 try {
   op.exec();
@@ -484,8 +503,9 @@ public class 

hbase git commit: HBASE-20561 The way we stop a ReplicationSource may cause the RS down

2018-06-13 Thread zghao
Repository: hbase
Updated Branches:
  refs/heads/master 8648af07d -> ec6643438


HBASE-20561 The way we stop a ReplicationSource may cause the RS down


Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/ec664343
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/ec664343
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/ec664343

Branch: refs/heads/master
Commit: ec66434380aee62289ccf7b173d765bbe7083718
Parents: 8648af0
Author: Guanghao Zhang 
Authored: Tue Jun 12 22:19:39 2018 +0800
Committer: Guanghao Zhang 
Committed: Wed Jun 13 17:58:59 2018 +0800

--
 .../regionserver/ReplicationSource.java | 24 +++--
 .../regionserver/ReplicationSourceManager.java  | 28 +---
 .../hadoop/hbase/zookeeper/ZKWatcher.java   |  4 ++-
 3 files changed, 49 insertions(+), 7 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/ec664343/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSource.java
--
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSource.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSource.java
index d21d83c..b63712b 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSource.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSource.java
@@ -499,9 +499,29 @@ public class ReplicationSource implements 
ReplicationSourceInterface {
 Collection workers = workerThreads.values();
 for (ReplicationSourceShipper worker : workers) {
   worker.stopWorker();
-  worker.entryReader.interrupt();
-  worker.interrupt();
+  worker.entryReader.setReaderRunning(false);
 }
+
+for (ReplicationSourceShipper worker : workers) {
+  if (worker.isAlive() || worker.entryReader.isAlive()) {
+try {
+  // Wait worker to stop
+  Thread.sleep(this.sleepForRetries);
+} catch (InterruptedException e) {
+  LOG.info("Interrupted while waiting " + worker.getName() + " to 
stop");
+  Thread.currentThread().interrupt();
+}
+// If worker still is alive after waiting, interrupt it
+if (worker.isAlive()) {
+  worker.interrupt();
+}
+// If entry reader is alive after waiting, interrupt it
+if (worker.entryReader.isAlive()) {
+  worker.entryReader.interrupt();
+}
+  }
+}
+
 if (this.replicationEndpoint != null) {
   this.replicationEndpoint.stop();
 }

http://git-wip-us.apache.org/repos/asf/hbase/blob/ec664343/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.java
--
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.java
index 9b4a22c..a370867 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.java
@@ -59,6 +59,7 @@ import org.apache.hadoop.hbase.replication.ReplicationTracker;
 import org.apache.hadoop.hbase.util.Pair;
 import org.apache.hadoop.hbase.wal.AbstractFSWALProvider;
 import org.apache.yetus.audience.InterfaceAudience;
+import org.apache.zookeeper.KeeperException;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -449,6 +450,24 @@ public class ReplicationSourceManager implements 
ReplicationListener {
 void exec() throws ReplicationException;
   }
 
+  /**
+   * Refresh replication source will terminate the old source first, then the 
source thread will be
+   * interrupted. Need to handle it instead of abort the region server.
+   */
+  private void interruptOrAbortWhenFail(ReplicationQueueOperation op) {
+try {
+  op.exec();
+} catch (ReplicationException e) {
+  if (e.getCause() != null && e.getCause() instanceof 
KeeperException.SystemErrorException
+  && e.getCause().getCause() != null && e.getCause()
+  .getCause() instanceof InterruptedException) {
+throw new RuntimeException(
+"Thread is interrupted, the replication source may be terminated");
+  }
+  server.abort("Failed to operate on replication queue", e);
+}
+  }
+
   private void abortWhenFail(ReplicationQueueOperation op) {
 try {
   op.exec();
@@ -484,8 +503,9 @@ public class