Details
-
Bug
-
Status: Resolved
-
Minor
-
Resolution: Fixed
-
None
Description
PullServerAuxService was implemented from some parts of MR's ShuffleHandler. Its metrics id seems to conflict each other. So, both AuxiliaryServices cannot work at the same time. When you start nodemanagers of Yarn with both AuxiliaryServices, you will see the following errors in nodemanagers' logs.
2013-03-05 19:44:53,213 FATAL org.apache.hadoop.yarn.server.nodemanager.NodeManager: Error starting NodeManager java.lang.RuntimeException: java.lang.reflect.InvocationTargetException at org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:128) at org.apache.hadoop.yarn.server.nodemanager.containermanager.AuxServices.init(AuxServices.java:96) at org.apache.hadoop.yarn.service.CompositeService.init(CompositeService.java:58) at org.apache.hadoop.yarn.server.nodemanager.containermanager.ContainerManagerImpl.init(ContainerManagerImpl.java:179) at org.apache.hadoop.yarn.service.CompositeService.init(CompositeService.java:58) at org.apache.hadoop.yarn.server.nodemanager.NodeManager.init(NodeManager.java:165) at org.apache.hadoop.yarn.server.nodemanager.NodeManager.initAndStartNodeManager(NodeManager.java:274) at org.apache.hadoop.yarn.server.nodemanager.NodeManager.main(NodeManager.java:291) Caused by: java.lang.reflect.InvocationTargetException at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:525) at org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:126) ... 7 more Caused by: org.apache.hadoop.metrics2.MetricsException: Metrics source ShuffleMetrics 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.MetricsSystem.register(MetricsSystem.java:54) at tajo.pullserver.PullServerAuxService.<init>(PullServerAuxService.java:152) at tajo.pullserver.PullServerAuxService.<init>(PullServerAuxService.java:157) ... 12 more