Mukul Kumar Singh created HDDS-114: -------------------------------------- Summary: Ozone Datanode mbean registration fails for StorageLocation Key: HDDS-114 URL: https://issues.apache.org/jira/browse/HDDS-114 Project: Hadoop Distributed Data Store Issue Type: Bug Components: Ozone Datanode Affects Versions: 0.2.1 Reporter: Mukul Kumar Singh Assignee: Mukul Kumar Singh
mbeans registration fails on Ozone Datanode fails with the following exception. {code} 2018-05-22 22:13:26,733 WARN util.MBeans (MBeans.java:register(109)) - Failed to register MBean "Hadoop:service=OzoneDataNode,name=ContainerLocationManager" javax.management.NotCompliantMBeanException: org.apache.hadoop.ozone.container.common.interfaces.ContainerLocationManagerMXBean: Method org.apache.hadoop.ozone.container.common.interfaces.ContainerLocationManagerMXBean.getLocationReport has parameter or return type that cannot be translated into an open type at com.sun.jmx.mbeanserver.Introspector.throwException(Introspector.java:466) at com.sun.jmx.mbeanserver.MBeanAnalyzer.<init>(MBeanAnalyzer.java:120) at com.sun.jmx.mbeanserver.MBeanAnalyzer.analyzer(MBeanAnalyzer.java:102) at com.sun.jmx.mbeanserver.MXBeanIntrospector.getAnalyzer(MXBeanIntrospector.java:74) at com.sun.jmx.mbeanserver.MBeanIntrospector.getPerInterface(MBeanIntrospector.java:192) at com.sun.jmx.mbeanserver.MBeanSupport.<init>(MBeanSupport.java:138) at com.sun.jmx.mbeanserver.MXBeanSupport.<init>(MXBeanSupport.java:66) at com.sun.jmx.mbeanserver.Introspector.makeDynamicMBean(Introspector.java:202) at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerObject(DefaultMBeanServerInterceptor.java:898) at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(DefaultMBeanServerInterceptor.java:324) at com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(JmxMBeanServer.java:522) at org.apache.hadoop.metrics2.util.MBeans.register(MBeans.java:98) at org.apache.hadoop.metrics2.util.MBeans.register(MBeans.java:72) at org.apache.hadoop.ozone.container.common.impl.ContainerLocationManagerImpl.<init>(ContainerLocationManagerImpl.java:75) at org.apache.hadoop.ozone.container.common.impl.ContainerManagerImpl.init(ContainerManagerImpl.java:202) at org.apache.hadoop.ozone.container.ozoneimpl.OzoneContainer.<init>(OzoneContainer.java:108) at org.apache.hadoop.ozone.container.common.statemachine.DatanodeStateMachine.<init>(DatanodeStateMachine.java:84) at org.apache.hadoop.ozone.HddsDatanodeService.start(HddsDatanodeService.java:98) at org.apache.hadoop.ozone.MiniOzoneClusterImpl$Builder.lambda$build$0(MiniOzoneClusterImpl.java:295) at java.util.ArrayList.forEach(ArrayList.java:1257) at org.apache.hadoop.ozone.MiniOzoneClusterImpl$Builder.build(MiniOzoneClusterImpl.java:295) at org.apache.hadoop.ozone.TestStorageContainerManager.testBlockDeletionTransactions(TestStorageContainerManager.java:202) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47) at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44) at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17) at org.junit.internal.runners.statements.FailOnTimeout$StatementThread.run(FailOnTimeout.java:74) Caused by: java.lang.IllegalArgumentException: Method org.apache.hadoop.ozone.container.common.interfaces.ContainerLocationManagerMXBean.getLocationReport has parameter or return type that cannot be translated into an open type at com.sun.jmx.mbeanserver.ConvertingMethod.from(ConvertingMethod.java:46) at com.sun.jmx.mbeanserver.MXBeanIntrospector.mFrom(MXBeanIntrospector.java:84) at com.sun.jmx.mbeanserver.MXBeanIntrospector.mFrom(MXBeanIntrospector.java:54) at com.sun.jmx.mbeanserver.MBeanAnalyzer.initMaps(MBeanAnalyzer.java:137) at com.sun.jmx.mbeanserver.MBeanAnalyzer.<init>(MBeanAnalyzer.java:118) ... 29 more Caused by: javax.management.openmbean.OpenDataException: Cannot convert type: org.apache.hadoop.ozone.container.common.impl.StorageLocationReport[] at com.sun.jmx.mbeanserver.DefaultMXBeanMappingFactory.openDataException(DefaultMXBeanMappingFactory.java:1465) at com.sun.jmx.mbeanserver.DefaultMXBeanMappingFactory.mappingForType(DefaultMXBeanMappingFactory.java:260) at com.sun.jmx.mbeanserver.ConvertingMethod.<init>(ConvertingMethod.java:212) at com.sun.jmx.mbeanserver.ConvertingMethod.from(ConvertingMethod.java:41) ... 33 more Caused by: javax.management.openmbean.OpenDataException: Cannot convert type: org.apache.hadoop.ozone.container.common.impl.StorageLocationReport at com.sun.jmx.mbeanserver.DefaultMXBeanMappingFactory.openDataException(DefaultMXBeanMappingFactory.java:1465) at com.sun.jmx.mbeanserver.DefaultMXBeanMappingFactory.mappingForType(DefaultMXBeanMappingFactory.java:260) at com.sun.jmx.mbeanserver.DefaultMXBeanMappingFactory.makeArrayOrCollectionMapping(DefaultMXBeanMappingFactory.java:318) at com.sun.jmx.mbeanserver.DefaultMXBeanMappingFactory.makeMapping(DefaultMXBeanMappingFactory.java:288) at com.sun.jmx.mbeanserver.DefaultMXBeanMappingFactory.mappingForType(DefaultMXBeanMappingFactory.java:258) ... 35 more Caused by: javax.management.openmbean.OpenDataException: Cannot convert type: org.apache.hadoop.hdds.protocol.proto.StorageContainerDatanodeProtocolProtos$SCMStorageReport at com.sun.jmx.mbeanserver.DefaultMXBeanMappingFactory.openDataException(DefaultMXBeanMappingFactory.java:1465) at com.sun.jmx.mbeanserver.DefaultMXBeanMappingFactory.mappingForType(DefaultMXBeanMappingFactory.java:260) at com.sun.jmx.mbeanserver.DefaultMXBeanMappingFactory.makeCompositeMapping(DefaultMXBeanMappingFactory.java:472) at com.sun.jmx.mbeanserver.DefaultMXBeanMappingFactory.makeMapping(DefaultMXBeanMappingFactory.java:293) at com.sun.jmx.mbeanserver.DefaultMXBeanMappingFactory.mappingForType(DefaultMXBeanMappingFactory.java:258) ... 38 more Caused by: javax.management.openmbean.OpenDataException: Cannot convert type: java.util.Map<com.google.protobuf.Descriptors$FieldDescriptor, java.lang.Object> at com.sun.jmx.mbeanserver.DefaultMXBeanMappingFactory.openDataException(DefaultMXBeanMappingFactory.java:1465) at com.sun.jmx.mbeanserver.DefaultMXBeanMappingFactory.mappingForType(DefaultMXBeanMappingFactory.java:260) at com.sun.jmx.mbeanserver.DefaultMXBeanMappingFactory.makeCompositeMapping(DefaultMXBeanMappingFactory.java:472) at com.sun.jmx.mbeanserver.DefaultMXBeanMappingFactory.makeMapping(DefaultMXBeanMappingFactory.java:293) at com.sun.jmx.mbeanserver.DefaultMXBeanMappingFactory.mappingForType(DefaultMXBeanMappingFactory.java:258) ... 41 more Caused by: javax.management.openmbean.OpenDataException: Cannot convert type: com.google.protobuf.Descriptors$FieldDescriptor at com.sun.jmx.mbeanserver.DefaultMXBeanMappingFactory.openDataException(DefaultMXBeanMappingFactory.java:1465) at com.sun.jmx.mbeanserver.DefaultMXBeanMappingFactory.mappingForType(DefaultMXBeanMappingFactory.java:260) at com.sun.jmx.mbeanserver.DefaultMXBeanMappingFactory.makeTabularMapping(DefaultMXBeanMappingFactory.java:362) at com.sun.jmx.mbeanserver.DefaultMXBeanMappingFactory.makeParameterizedTypeMapping(DefaultMXBeanMappingFactory.java:405) at com.sun.jmx.mbeanserver.DefaultMXBeanMappingFactory.makeMapping(DefaultMXBeanMappingFactory.java:296) at com.sun.jmx.mbeanserver.DefaultMXBeanMappingFactory.mappingForType(DefaultMXBeanMappingFactory.java:258) ... 44 more Caused by: javax.management.openmbean.OpenDataException: Cannot convert type: com.google.protobuf.Descriptors$Descriptor at com.sun.jmx.mbeanserver.DefaultMXBeanMappingFactory.openDataException(DefaultMXBeanMappingFactory.java:1465) at com.sun.jmx.mbeanserver.DefaultMXBeanMappingFactory.mappingForType(DefaultMXBeanMappingFactory.java:260) at com.sun.jmx.mbeanserver.DefaultMXBeanMappingFactory.makeCompositeMapping(DefaultMXBeanMappingFactory.java:472) at com.sun.jmx.mbeanserver.DefaultMXBeanMappingFactory.makeMapping(DefaultMXBeanMappingFactory.java:293) at com.sun.jmx.mbeanserver.DefaultMXBeanMappingFactory.mappingForType(DefaultMXBeanMappingFactory.java:258) ... 48 more Caused by: javax.management.openmbean.OpenDataException: Recursive data structure, including com.google.protobuf.Descriptors$Descriptor at com.sun.jmx.mbeanserver.DefaultMXBeanMappingFactory.mappingForType(DefaultMXBeanMappingFactory.java:247) at com.sun.jmx.mbeanserver.DefaultMXBeanMappingFactory.makeCompositeMapping(DefaultMXBeanMappingFactory.java:472) at com.sun.jmx.mbeanserver.DefaultMXBeanMappingFactory.makeMapping(DefaultMXBeanMappingFactory.java:293) at com.sun.jmx.mbeanserver.DefaultMXBeanMappingFactory.mappingForType(DefaultMXBeanMappingFactory.java:258) ... 51 more {code} -- This message was sent by Atlassian JIRA (v7.6.3#76005) --------------------------------------------------------------------- To unsubscribe, e-mail: hdfs-dev-unsubscr...@hadoop.apache.org For additional commands, e-mail: hdfs-dev-h...@hadoop.apache.org