[
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