Index: CHANGES.txt =================================================================== --- CHANGES.txt (revision 979826) +++ CHANGES.txt (revision 980639) @@ -1,5 +1,5 @@ HBase Change Log -Release 0.90 - Unreleased +Release 0.89.2010726 INCOMPATIBLE CHANGES HBASE-1822 Remove the deprecated APIs HBASE-1848 Fixup shell for HBASE-1822 @@ -457,6 +457,7 @@ HBASE-2815 not able to run the test suite in background because TestShell gets suspended on tty output (Alexey Kovyrin via Stack) HBASE-2852 Bloom filter NPE (pranav via jgray) + HBASE-2890 Initialize RPC JMX metrics on startup (Gary Helmling via Stack) IMPROVEMENTS HBASE-1760 Cleanup TODOs in HTable Index: src/main/java/org/apache/hadoop/hbase/ipc/HBaseRpcMetrics.java =================================================================== --- src/main/java/org/apache/hadoop/hbase/ipc/HBaseRpcMetrics.java (revision 979826) +++ src/main/java/org/apache/hadoop/hbase/ipc/HBaseRpcMetrics.java (revision 980639) @@ -29,6 +29,8 @@ import org.apache.hadoop.metrics.util.MetricsRegistry; import org.apache.hadoop.metrics.util.MetricsTimeVaryingRate; +import java.lang.reflect.Method; + /** * * This class is for maintaining the various RPC statistics @@ -57,6 +59,9 @@ context.registerUpdater(this); + initMethods(HMasterInterface.class); + initMethods(HMasterRegionInterface.class); + initMethods(HRegionInterface.class); rpcStatistics = new HBaseRPCStatistics(this.registry, hostName, port); } @@ -73,6 +78,12 @@ //public Map metricsList = Collections.synchronizedMap(new HashMap()); + private void initMethods(Class protocol) { + for (Method m : protocol.getDeclaredMethods()) { + if (get(m.getName()) == null) + create(m.getName()); + } + } private MetricsTimeVaryingRate get(String key) { return (MetricsTimeVaryingRate) registry.get(key);