[ https://issues.apache.org/jira/browse/HBASE-6945?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Kumar Ravi updated HBASE-6945: ------------------------------ Status: Patch Available (was: Open) --- curr_hbase/src/test/java/org/apache/hadoop/hbase/ResourceChecker.java 2012-10-04 12:59:14.000000000 -0400 +++ new_hbase/src/test/java/org/apache/hadoop/hbase/ResourceChecker.java 2012-10-08 16:32:00.000000000 -0400 @@ -20,13 +20,11 @@ package org.apache.hadoop.hbase; -import com.sun.management.UnixOperatingSystemMXBean; +import org.apache.hadoop.hbase.util.OSMXBean; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.apache.hadoop.hbase.client.HConnectionTestingUtility; -import java.lang.management.ManagementFactory; -import java.lang.management.OperatingSystemMXBean; import java.util.*; @@ -42,42 +40,33 @@ * On unix, we know how to get the number of open file descriptor */ private static class ResourceAnalyzer { - private static final OperatingSystemMXBean osStats; - private static final UnixOperatingSystemMXBean unixOsStats; public long getThreadsCount() { return Thread.getAllStackTraces().size(); } public long getOpenFileDescriptorCount() { - if (unixOsStats == null) { - return 0; - } else { - return unixOsStats.getOpenFileDescriptorCount(); - } + OSMXBean osMbean = new OSMXBean(); + if (osMbean != null && osMbean.getUnix() == true) { + return osMbean.getOpenFileDescriptorCount(); + } + else + return 0; } public long getMaxFileDescriptorCount() { - if (unixOsStats == null) { - return 0; - } else { - return unixOsStats.getMaxFileDescriptorCount(); + OSMXBean osMbean = new OSMXBean(); + if (osMbean != null && osMbean.getUnix() == true) { + return osMbean.getMaxFileDescriptorCount(); } + else + return 0; } public long getConnectionCount(){ return HConnectionTestingUtility.getConnectionCount(); } - static { - osStats = - ManagementFactory.getOperatingSystemMXBean(); - if (osStats instanceof UnixOperatingSystemMXBean) { - unixOsStats = (UnixOperatingSystemMXBean) osStats; - } else { - unixOsStats = null; - } - } } private static final ResourceAnalyzer rc = new ResourceAnalyzer(); > Compilation errors when using non-Sun JDKs to build HBase-0.94 > -------------------------------------------------------------- > > Key: HBASE-6945 > URL: https://issues.apache.org/jira/browse/HBASE-6945 > Project: HBase > Issue Type: Bug > Components: build > Affects Versions: 0.94.1 > Environment: RHEL 6.3, IBM Java 7 > Reporter: Kumar Ravi > Assignee: Kumar Ravi > Fix For: 0.94.3 > > > When using IBM Java 7 to build HBase-0.94.1, the following comilation error > is seen. > [INFO] ------------------------------------------------------------- > [ERROR] COMPILATION ERROR : > [INFO] ------------------------------------------------------------- > [ERROR] > /home/hadoop/hbase-0.94/src/test/java/org/apache/hadoop/hbase/ResourceChecker.java:[23,25] > error: package com.sun.management does not exist > [ERROR] > /home/hadoop/hbase-0.94/src/test/java/org/apache/hadoop/hbase/ResourceChecker.java:[46,25] > error: cannot find symbol > [ERROR] symbol: class UnixOperatingSystemMXBean > location: class ResourceAnalyzer > /home/hadoop/hbase-0.94/src/test/java/org/apache/hadoop/hbase/ResourceChecker.java:[75,29] > error: cannot find symbol > [ERROR] symbol: class UnixOperatingSystemMXBean > location: class ResourceAnalyzer > /home/hadoop/hbase-0.94/src/test/java/org/apache/hadoop/hbase/ResourceChecker.java:[76,23] > error: cannot find symbol > [INFO] 4 errors > [INFO] ------------------------------------------------------------- > [INFO] > ------------------------------------------------------------------------ > [INFO] BUILD FAILURE > [INFO] > ------------------------------------------------------------------------ > I have a patch available which should work for all JDKs including Sun. > I am in the process of testing this patch. Preliminary tests indicate the > build is working fine with this patch. I will post this patch when I am done > testing. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira