You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by zh...@apache.org on 2018/02/26 14:35:44 UTC
hbase git commit: HBASE-20083 Fix findbugs error for ReplicationSyncUp
Repository: hbase
Updated Branches:
refs/heads/master 8c74d177f -> 2beda62a1
HBASE-20083 Fix findbugs error for ReplicationSyncUp
Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/2beda62a
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/2beda62a
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/2beda62a
Branch: refs/heads/master
Commit: 2beda62a10f0828eb10cec28b0ba53246cd0b671
Parents: 8c74d17
Author: zhangduo <zh...@apache.org>
Authored: Mon Feb 26 16:37:58 2018 +0800
Committer: zhangduo <zh...@apache.org>
Committed: Mon Feb 26 22:13:13 2018 +0800
----------------------------------------------------------------------
.../regionserver/ReplicationSyncUp.java | 59 ++++++--------------
.../replication/TestReplicationSyncUpTool.java | 6 +-
2 files changed, 19 insertions(+), 46 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/hbase/blob/2beda62a/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSyncUp.java
----------------------------------------------------------------------
diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSyncUp.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSyncUp.java
index 283eb96..c2862de 100644
--- a/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSyncUp.java
+++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSyncUp.java
@@ -49,35 +49,18 @@ import org.apache.hadoop.util.ToolRunner;
*/
public class ReplicationSyncUp extends Configured implements Tool {
- private static Configuration conf;
-
private static final long SLEEP_TIME = 10000;
- // although the tool is designed to be run on command line
- // this api is provided for executing the tool through another app
- public static void setConfigure(Configuration config) {
- conf = config;
- }
-
/**
* Main program
- * @param args
- * @throws Exception
*/
public static void main(String[] args) throws Exception {
- if (conf == null) conf = HBaseConfiguration.create();
- int ret = ToolRunner.run(conf, new ReplicationSyncUp(), args);
+ int ret = ToolRunner.run(HBaseConfiguration.create(), new ReplicationSyncUp(), args);
System.exit(ret);
}
@Override
public int run(String[] args) throws Exception {
- Replication replication;
- ReplicationSourceManager manager;
- FileSystem fs;
- Path oldLogDir, logDir, walRootDir;
- ZKWatcher zkw;
-
Abortable abortable = new Abortable() {
@Override
public void abort(String why, Throwable e) {
@@ -88,23 +71,19 @@ public class ReplicationSyncUp extends Configured implements Tool {
return false;
}
};
-
- zkw =
- new ZKWatcher(conf, "syncupReplication" + System.currentTimeMillis(), abortable,
- true);
-
- walRootDir = FSUtils.getWALRootDir(conf);
- fs = FSUtils.getWALFileSystem(conf);
- oldLogDir = new Path(walRootDir, HConstants.HREGION_OLDLOGDIR_NAME);
- logDir = new Path(walRootDir, HConstants.HREGION_LOGDIR_NAME);
-
- System.out.println("Start Replication Server start");
- replication = new Replication();
- replication.initialize(new DummyServer(zkw), fs, logDir, oldLogDir, null);
- manager = replication.getReplicationManager();
- manager.init().get();
-
- try {
+ Configuration conf = getConf();
+ try (ZKWatcher zkw =
+ new ZKWatcher(conf, "syncupReplication" + System.currentTimeMillis(), abortable, true)) {
+ Path walRootDir = FSUtils.getWALRootDir(conf);
+ FileSystem fs = FSUtils.getWALFileSystem(conf);
+ Path oldLogDir = new Path(walRootDir, HConstants.HREGION_OLDLOGDIR_NAME);
+ Path logDir = new Path(walRootDir, HConstants.HREGION_LOGDIR_NAME);
+
+ System.out.println("Start Replication Server start");
+ Replication replication = new Replication();
+ replication.initialize(new DummyServer(zkw), fs, logDir, oldLogDir, null);
+ ReplicationSourceManager manager = replication.getReplicationManager();
+ manager.init().get();
while (manager.activeFailoverTaskCount() > 0) {
Thread.sleep(SLEEP_TIME);
}
@@ -114,15 +93,12 @@ public class ReplicationSyncUp extends Configured implements Tool {
manager.join();
} catch (InterruptedException e) {
System.err.println("didn't wait long enough:" + e);
- return (-1);
- } finally {
- zkw.close();
+ return -1;
}
-
return 0;
}
- static class DummyServer implements Server {
+ class DummyServer implements Server {
String hostname;
ZKWatcher zkw;
@@ -138,7 +114,7 @@ public class ReplicationSyncUp extends Configured implements Tool {
@Override
public Configuration getConfiguration() {
- return conf;
+ return getConf();
}
@Override
@@ -191,7 +167,6 @@ public class ReplicationSyncUp extends Configured implements Tool {
@Override
public ClusterConnection getClusterConnection() {
- // TODO Auto-generated method stub
return null;
}
http://git-wip-us.apache.org/repos/asf/hbase/blob/2beda62a/hbase-server/src/test/java/org/apache/hadoop/hbase/replication/TestReplicationSyncUpTool.java
----------------------------------------------------------------------
diff --git a/hbase-server/src/test/java/org/apache/hadoop/hbase/replication/TestReplicationSyncUpTool.java b/hbase-server/src/test/java/org/apache/hadoop/hbase/replication/TestReplicationSyncUpTool.java
index 19aeac1..6c487ad 100644
--- a/hbase-server/src/test/java/org/apache/hadoop/hbase/replication/TestReplicationSyncUpTool.java
+++ b/hbase-server/src/test/java/org/apache/hadoop/hbase/replication/TestReplicationSyncUpTool.java
@@ -38,6 +38,7 @@ import org.apache.hadoop.hbase.replication.regionserver.ReplicationSyncUp;
import org.apache.hadoop.hbase.testclassification.LargeTests;
import org.apache.hadoop.hbase.testclassification.ReplicationTests;
import org.apache.hadoop.hbase.util.Bytes;
+import org.apache.hadoop.util.ToolRunner;
import org.junit.Before;
import org.junit.ClassRule;
import org.junit.Test;
@@ -420,9 +421,6 @@ public class TestReplicationSyncUpTool extends TestReplicationBase {
}
protected void syncUp(HBaseTestingUtility ut) throws Exception {
- ReplicationSyncUp.setConfigure(ut.getConfiguration());
- String[] arguments = new String[] { null };
- new ReplicationSyncUp().run(arguments);
+ ToolRunner.run(ut.getConfiguration(), new ReplicationSyncUp(), new String[0]);
}
-
}