Description
When I want to initialize a custom MetricsSource implementation which extends class BaseSourceImpl in Mapper or Reducer’s setup stage, an exception will be thrown:
Error: org.apache.hadoop.metrics2.MetricsException: Metrics source JvmMetrics already exists!
at org.apache.hadoop.metrics2.lib.DefaultMetricsSystem.newSourceName(DefaultMetricsSystem.java:126)
at org.apache.hadoop.metrics2.lib.DefaultMetricsSystem.sourceName(DefaultMetricsSystem.java:107)
at org.apache.hadoop.metrics2.impl.MetricsSystemImpl.register(MetricsSystemImpl.java:217)
at org.apache.hadoop.metrics2.source.JvmMetrics.create(JvmMetrics.java:78)
at org.apache.hadoop.hbase.metrics.BaseSourceImpl$DefaultMetricsSystemInitializer.init(BaseSourceImpl.java:51)
at org.apache.hadoop.hbase.metrics.BaseSourceImpl.<init>(BaseSourceImpl.java:74)
at org.apache.hadoop.hbase.mapreduce.IdentityTableReducer.setup(IdentityTableReducer.java:89)
at org.apache.hadoop.mapreduce.Reducer.run(Reducer.java:168)
at org.apache.hadoop.mapred.ReduceTask.runNewReducer(ReduceTask.java:627)
at org.apache.hadoop.mapred.ReduceTask.run(ReduceTask.java:389)
at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:167)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:415)
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1548)
at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:162)
The bug is similar to https://issues.apache.org/jira/browse/MAPREDUCE-3976
Attachments
Attachments
Issue Links
- blocks
-
HBASE-11683 Metrics for MOB
- Closed
- is related to
-
HBASE-19409 HBase client brings down YARN node manager when it tries to register JvmMetrics in the hadoop metrics system
- Resolved