Details
-
Bug
-
Status: Open
-
Major
-
Resolution: Unresolved
-
None
-
None
-
None
Description
Because of an API change in Hadoop 3 alpha 2, HadoopTimelineMetricsSink will fail to load with the following error:
2017-02-22 15:05:45,577 ERROR namenode.NameNode (NameNode.java:main(1709)) - Failed to start namenode. java.lang.AbstractMethodError: org.apache.hadoop.metrics2.sink.timeline.HadoopTimelineMetricsSink.init(Lorg/apache/commons/configuration2/SubsetConfiguration;)V at org.apache.hadoop.metrics2.impl.MetricsConfig.getPlugin(MetricsConfig.java:208) at org.apache.hadoop.metrics2.impl.MetricsSystemImpl.newSink(MetricsSystemImpl.java:531) at org.apache.hadoop.metrics2.impl.MetricsSystemImpl.configureSinks(MetricsSystemImpl.java:503) at org.apache.hadoop.metrics2.impl.MetricsSystemImpl.configure(MetricsSystemImpl.java:479) at org.apache.hadoop.metrics2.impl.MetricsSystemImpl.start(MetricsSystemImpl.java:188) at org.apache.hadoop.metrics2.impl.MetricsSystemImpl.init(MetricsSystemImpl.java:163) at org.apache.hadoop.metrics2.lib.DefaultMetricsSystem.init(DefaultMetricsSystem.java:62) at org.apache.hadoop.metrics2.lib.DefaultMetricsSystem.initialize(DefaultMetricsSystem.java:58) at org.apache.hadoop.hdfs.server.namenode.NameNode.createNameNode(NameNode.java:1635) at org.apache.hadoop.hdfs.server.namenode.NameNode.main(NameNode.java:1704) 2017-02-22 15:05:45,578 INFO util.ExitUtil (ExitUtil.java:terminate(124)) - Exiting with status 1
The Hadoop API MetricsPlugin.init() has a parameter that changed from org.apache.commons.configuration.SubsetConfiguration to org.apache.commons.configuration2.SubsetConfiguration.
See HADOOP-13660 for details of the API change.
Credit: the bug was found by Daniel Pol.
Attachments
Issue Links
- relates to
-
HADOOP-13660 Upgrade commons-configuration version to 2.1
- Resolved