hbase-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From ndimi...@apache.org
Subject hbase git commit: HBASE-13564 Master MBeans are not published
Date Tue, 28 Apr 2015 04:37:17 GMT
Repository: hbase
Updated Branches:
  refs/heads/branch-1.0 d73b57d7c -> f5021e430


HBASE-13564 Master MBeans are not published


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

Branch: refs/heads/branch-1.0
Commit: f5021e43006c91ee7b61f015f2537e48649d9853
Parents: d73b57d
Author: Ashish Singhi <ashish.singhi@huawei.com>
Authored: Sat Apr 25 16:43:27 2015 +0530
Committer: Nick Dimiduk <ndimiduk@apache.org>
Committed: Mon Apr 27 21:36:04 2015 -0700

----------------------------------------------------------------------
 .../java/org/apache/hadoop/hbase/JMXListener.java   | 16 ++++++++++++----
 .../org/apache/hadoop/hbase/TestJMXListener.java    |  3 +++
 src/main/asciidoc/_chapters/configuration.adoc      |  5 ++---
 3 files changed, 17 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hbase/blob/f5021e43/hbase-server/src/main/java/org/apache/hadoop/hbase/JMXListener.java
----------------------------------------------------------------------
diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/JMXListener.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/JMXListener.java
index 6a115ba..6d22142 100644
--- a/hbase-server/src/main/java/org/apache/hadoop/hbase/JMXListener.java
+++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/JMXListener.java
@@ -51,7 +51,8 @@ public class JMXListener implements Coprocessor {
   public static final Log LOG = LogFactory.getLog(JMXListener.class);
   public static final String RMI_REGISTRY_PORT_CONF_KEY = ".rmi.registry.port";
   public static final String RMI_CONNECTOR_PORT_CONF_KEY = ".rmi.connector.port";
-  public static final int defRMIRegistryPort = 10102;
+  public static final int defMasterRMIRegistryPort = 10101;
+  public static final int defRegionserverRMIRegistryPort = 10102;
 
   /**
    * workaround for HBASE-11146
@@ -163,11 +164,17 @@ public class JMXListener implements Coprocessor {
     Configuration conf = env.getConfiguration();
 
     if (env instanceof MasterCoprocessorEnvironment) {
-      LOG.error("JMXListener should not be loaded in Master Environment!");
+      // running on Master
+      rmiRegistryPort =
+          conf.getInt("master" + RMI_REGISTRY_PORT_CONF_KEY, defMasterRMIRegistryPort);
+      rmiConnectorPort = conf.getInt("master" + RMI_CONNECTOR_PORT_CONF_KEY, rmiRegistryPort);
+      LOG.info("Master rmiRegistryPort:" + rmiRegistryPort + ",Master rmiConnectorPort:"
+          + rmiConnectorPort);
     } else if (env instanceof RegionServerCoprocessorEnvironment) {
-      // running on RegionServer --since 0.99 HMaster is also a HRegionServer
+      // running on RegionServer
       rmiRegistryPort =
-        conf.getInt("regionserver" + RMI_REGISTRY_PORT_CONF_KEY, defRMIRegistryPort);
+        conf.getInt("regionserver" + RMI_REGISTRY_PORT_CONF_KEY,
+        defRegionserverRMIRegistryPort);
       rmiConnectorPort =
         conf.getInt("regionserver" + RMI_CONNECTOR_PORT_CONF_KEY, rmiRegistryPort);
       LOG.info("RegionServer rmiRegistryPort:" + rmiRegistryPort
@@ -175,6 +182,7 @@ public class JMXListener implements Coprocessor {
 
     } else if (env instanceof RegionCoprocessorEnvironment) {
       LOG.error("JMXListener should not be loaded in Region Environment!");
+      return;
     }
 
     synchronized(JMXListener.class) {

http://git-wip-us.apache.org/repos/asf/hbase/blob/f5021e43/hbase-server/src/test/java/org/apache/hadoop/hbase/TestJMXListener.java
----------------------------------------------------------------------
diff --git a/hbase-server/src/test/java/org/apache/hadoop/hbase/TestJMXListener.java b/hbase-server/src/test/java/org/apache/hadoop/hbase/TestJMXListener.java
index af602a5..510c954 100644
--- a/hbase-server/src/test/java/org/apache/hadoop/hbase/TestJMXListener.java
+++ b/hbase-server/src/test/java/org/apache/hadoop/hbase/TestJMXListener.java
@@ -52,6 +52,9 @@ public class TestJMXListener {
     conf.set(CoprocessorHost.REGIONSERVER_COPROCESSOR_CONF_KEY,
       JMXListener.class.getName());
     conf.setInt("regionserver.rmi.registry.port", connectorPort);
+    
+    conf.set(CoprocessorHost.MASTER_COPROCESSOR_CONF_KEY, JMXListener.class.getName());
+    conf.setInt("master.rmi.registry.port", connectorPort - 1);
 
     UTIL.startMiniCluster();
   }

http://git-wip-us.apache.org/repos/asf/hbase/blob/f5021e43/src/main/asciidoc/_chapters/configuration.adoc
----------------------------------------------------------------------
diff --git a/src/main/asciidoc/_chapters/configuration.adoc b/src/main/asciidoc/_chapters/configuration.adoc
index ed00a49..2b09664 100644
--- a/src/main/asciidoc/_chapters/configuration.adoc
+++ b/src/main/asciidoc/_chapters/configuration.adoc
@@ -994,8 +994,7 @@ To enable it in 0.99 or above, add below property in _hbase-site.xml_:
 NOTE: DO NOT set `com.sun.management.jmxremote.port` for Java VM at the same time.
 
 Currently it supports Master and RegionServer Java VM.
-The reason why you only configure coprocessor for 'regionserver' is that, starting from HBase
0.99, a Master IS also a RegionServer.
-(See link:https://issues.apache.org/jira/browse/HBASE-10569[HBASE-10569] for more information.)
By default, the JMX listens on TCP port 10102, you can further configure the port using below
properties:
+By default, the JMX listens on TCP port 10102, you can further configure the port using below
properties:
 
 [source,xml]
 ----
@@ -1062,7 +1061,7 @@ Finally start `jconsole` on the client using the key store:
 jconsole -J-Djavax.net.ssl.trustStore=/home/tianq/jconsoleKeyStore
 ----
 
-NOTE: for HBase 0.98, To enable the HBase JMX implementation on Master, you also need to
add below property in _hbase-site.xml_: 
+NOTE: To enable the HBase JMX implementation on Master, you also need to add below property
in _hbase-site.xml_: 
 
 [source,xml]
 ----


Mime
View raw message