Repository: hbase
Updated Branches:
  refs/heads/branch-1 c590ebba0 -> aae12e847


HBASE-20109 Add Admin#getMaster API to branch-1

Signed-off-by: Chia-Ping Tsai <chia7...@gmail.com>


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

Branch: refs/heads/branch-1
Commit: aae12e8470a0232b0e43010dfadcbdffcaff0339
Parents: c590ebb
Author: Andrew Purtell <apurt...@apache.org>
Authored: Fri Mar 2 11:39:43 2018 -0800
Committer: Andrew Purtell <apurt...@apache.org>
Committed: Fri Mar 2 11:39:43 2018 -0800

----------------------------------------------------------------------
 .../java/org/apache/hadoop/hbase/client/Admin.java |  6 ++++++
 .../org/apache/hadoop/hbase/client/HBaseAdmin.java | 17 ++++++++++++++++-
 2 files changed, 22 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hbase/blob/aae12e84/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Admin.java
----------------------------------------------------------------------
diff --git 
a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Admin.java 
b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Admin.java
index 4aadd30..8f5e150 100644
--- a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Admin.java
+++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Admin.java
@@ -1545,6 +1545,12 @@ public interface Admin extends Abortable, Closeable {
   void updateConfiguration() throws IOException;
 
   /**
+   * @return current master server name
+   * @throws IOException if a remote or network exception occurs
+   */
+  ServerName getMaster() throws IOException;
+
+  /**
    * Get the info port of the current master if one is available.
    * @return master info port
    * @throws IOException

http://git-wip-us.apache.org/repos/asf/hbase/blob/aae12e84/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 507c6fb..d68add6 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
@@ -4542,9 +4542,24 @@ public class HBaseAdmin implements Admin {
     }
   }
 
+  /**
+   * @return current master server name
+   * @throws IOException if a remote or network exception occurs
+   */
+  @Override
+  public ServerName getMaster() throws IOException {
+    ConnectionManager.HConnectionImplementation connection =
+        (ConnectionManager.HConnectionImplementation)this.connection;
+    ZooKeeperKeepAliveConnection zkw = 
connection.getKeepAliveZooKeeperWatcher();
+    try {
+      return MasterAddressTracker.getMasterAddress(zkw);
+    } catch (Exception e) {
+      throw new IOException("Failed to get master address from 
MasterAddressTracker", e);
+    }
+  }
+
   @Override
   public int getMasterInfoPort() throws IOException {
-    // TODO: Fix!  Reaching into internal implementation!!!!
     ConnectionManager.HConnectionImplementation connection =
         (ConnectionManager.HConnectionImplementation)this.connection;
     ZooKeeperKeepAliveConnection zkw = 
connection.getKeepAliveZooKeeperWatcher();

Reply via email to