You are viewing a plain text version of this content. The canonical link for it is here.
Posted to yarn-issues@hadoop.apache.org by "Zhiyuan Yang (JIRA)" <ji...@apache.org> on 2016/11/04 01:12:58 UTC
[jira] [Updated] (YARN-5835) NoClassDefFoundError when reading ATS
v1.5
[ https://issues.apache.org/jira/browse/YARN-5835?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Zhiyuan Yang updated YARN-5835:
-------------------------------
Description:
LevelDBCacheTimelineStore requires jackson-databind-2.2.3.jar which is in /hadoop/shared/hadoop/tools but is never added in timeline server's classpath. Reading data from LevelDBCacheTimelineStore will get NoClassDefFoundError. Here's the stacktrace:
{code:java}
java.lang.NoClassDefFoundError: com/fasterxml/jackson/databind/ObjectMapper
at org.apache.hadoop.yarn.server.timeline.LevelDBCacheTimelineStore$LevelDBMapAdapter.getEntityForKey(LevelDBCacheTimelineStore.java:296)
at org.apache.hadoop.yarn.server.timeline.LevelDBCacheTimelineStore$LevelDBMapAdapter.get(LevelDBCacheTimelineStore.java:161)
at org.apache.hadoop.yarn.server.timeline.LevelDBCacheTimelineStore$LevelDBMapAdapter.get(LevelDBCacheTimelineStore.java:140)
at org.apache.hadoop.yarn.server.timeline.KeyValueBasedTimelineStore.getEntity(KeyValueBasedTimelineStore.java:199)
at org.apache.hadoop.yarn.server.timeline.LevelDBCacheTimelineStore.getEntity(LevelDBCacheTimelineStore.java:58)
at org.apache.hadoop.yarn.server.timeline.TimelineDataManager.doPostEntities(TimelineDataManager.java:349)
at org.apache.hadoop.yarn.server.timeline.TimelineDataManager.postEntities(TimelineDataManager.java:317)
at org.apache.hadoop.yarn.server.timeline.EntityLogInfo.doParse(LogInfo.java:204)
at org.apache.hadoop.yarn.server.timeline.LogInfo.parsePath(LogInfo.java:156)
at org.apache.hadoop.yarn.server.timeline.LogInfo.parseForStore(LogInfo.java:113)
at org.apache.hadoop.yarn.server.timeline.EntityCacheItem.refreshCache(EntityCacheItem.java:143)
at org.apache.hadoop.yarn.server.timeline.EntityGroupFSTimelineStore.getCachedStore(EntityGroupFSTimelineStore.java:938)
at org.apache.hadoop.yarn.server.timeline.EntityGroupFSTimelineStore.getTimelineStoresFromCacheIds(EntityGroupFSTimelineStore.java:853)
at org.apache.hadoop.yarn.server.timeline.EntityGroupFSTimelineStore.getTimelineStoresForRead(EntityGroupFSTimelineStore.java:906)
at org.apache.hadoop.yarn.server.timeline.EntityGroupFSTimelineStore.getEntities(EntityGroupFSTimelineStore.java:959)
at org.apache.hadoop.yarn.server.timeline.TimelineDataManager.doGetEntities(TimelineDataManager.java:169)
at org.apache.hadoop.yarn.server.timeline.TimelineDataManager.getEntities(TimelineDataManager.java:139)
at org.apache.hadoop.yarn.server.timeline.webapp.TimelineWebServices.getEntities(TimelineWebServices.java:119)
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)
{code}
A temporary fix would be adding /hadoop/shared/hadoop/tools into HADOOP_CLASSPATH manually.
was:
LevelDBCacheTimelineStore requires jackson-databind-2.2.3.jar which is in /hadoop/shared/hadoop/tools but is never added in timeline server's classpath. Reading data from LevelDBCacheTimelineStore will get NoClassDefFoundError. Here's the stacktrace:
{code:java}
java.lang.NoClassDefFoundError: com/fasterxml/jackson/databind/ObjectMapper
at org.apache.hadoop.yarn.server.timeline.LevelDBCacheTimelineStore$LevelDBMapAdapter.getEntityForKey(LevelDBCacheTimelineStore.java:296)
at org.apache.hadoop.yarn.server.timeline.LevelDBCacheTimelineStore$LevelDBMapAdapter.get(LevelDBCacheTimelineStore.java:161)
at org.apache.hadoop.yarn.server.timeline.LevelDBCacheTimelineStore$LevelDBMapAdapter.get(LevelDBCacheTimelineStore.java:140)
at org.apache.hadoop.yarn.server.timeline.KeyValueBasedTimelineStore.getEntity(KeyValueBasedTimelineStore.java:199)
at org.apache.hadoop.yarn.server.timeline.LevelDBCacheTimelineStore.getEntity(LevelDBCacheTimelineStore.java:58)
at org.apache.hadoop.yarn.server.timeline.TimelineDataManager.doPostEntities(TimelineDataManager.java:349)
at org.apache.hadoop.yarn.server.timeline.TimelineDataManager.postEntities(TimelineDataManager.java:317)
at org.apache.hadoop.yarn.server.timeline.EntityLogInfo.doParse(LogInfo.java:204)
at org.apache.hadoop.yarn.server.timeline.LogInfo.parsePath(LogInfo.java:156)
at org.apache.hadoop.yarn.server.timeline.LogInfo.parseForStore(LogInfo.java:113)
at org.apache.hadoop.yarn.server.timeline.EntityCacheItem.refreshCache(EntityCacheItem.java:143)
at org.apache.hadoop.yarn.server.timeline.EntityGroupFSTimelineStore.getCachedStore(EntityGroupFSTimelineStore.java:938)
at org.apache.hadoop.yarn.server.timeline.EntityGroupFSTimelineStore.getTimelineStoresFromCacheIds(EntityGroupFSTimelineStore.java:853)
at org.apache.hadoop.yarn.server.timeline.EntityGroupFSTimelineStore.getTimelineStoresForRead(EntityGroupFSTimelineStore.java:906)
at org.apache.hadoop.yarn.server.timeline.EntityGroupFSTimelineStore.getEntities(EntityGroupFSTimelineStore.java:959)
at org.apache.hadoop.yarn.server.timeline.TimelineDataManager.doGetEntities(TimelineDataManager.java:169)
at org.apache.hadoop.yarn.server.timeline.TimelineDataManager.getEntities(TimelineDataManager.java:139)
at org.apache.hadoop.yarn.server.timeline.webapp.TimelineWebServices.getEntities(TimelineWebServices.java:119)
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)
{code}
> NoClassDefFoundError when reading ATS v1.5
> ------------------------------------------
>
> Key: YARN-5835
> URL: https://issues.apache.org/jira/browse/YARN-5835
> Project: Hadoop YARN
> Issue Type: Task
> Reporter: Zhiyuan Yang
>
> LevelDBCacheTimelineStore requires jackson-databind-2.2.3.jar which is in /hadoop/shared/hadoop/tools but is never added in timeline server's classpath. Reading data from LevelDBCacheTimelineStore will get NoClassDefFoundError. Here's the stacktrace:
> {code:java}
> java.lang.NoClassDefFoundError: com/fasterxml/jackson/databind/ObjectMapper
> at org.apache.hadoop.yarn.server.timeline.LevelDBCacheTimelineStore$LevelDBMapAdapter.getEntityForKey(LevelDBCacheTimelineStore.java:296)
> at org.apache.hadoop.yarn.server.timeline.LevelDBCacheTimelineStore$LevelDBMapAdapter.get(LevelDBCacheTimelineStore.java:161)
> at org.apache.hadoop.yarn.server.timeline.LevelDBCacheTimelineStore$LevelDBMapAdapter.get(LevelDBCacheTimelineStore.java:140)
> at org.apache.hadoop.yarn.server.timeline.KeyValueBasedTimelineStore.getEntity(KeyValueBasedTimelineStore.java:199)
> at org.apache.hadoop.yarn.server.timeline.LevelDBCacheTimelineStore.getEntity(LevelDBCacheTimelineStore.java:58)
> at org.apache.hadoop.yarn.server.timeline.TimelineDataManager.doPostEntities(TimelineDataManager.java:349)
> at org.apache.hadoop.yarn.server.timeline.TimelineDataManager.postEntities(TimelineDataManager.java:317)
> at org.apache.hadoop.yarn.server.timeline.EntityLogInfo.doParse(LogInfo.java:204)
> at org.apache.hadoop.yarn.server.timeline.LogInfo.parsePath(LogInfo.java:156)
> at org.apache.hadoop.yarn.server.timeline.LogInfo.parseForStore(LogInfo.java:113)
> at org.apache.hadoop.yarn.server.timeline.EntityCacheItem.refreshCache(EntityCacheItem.java:143)
> at org.apache.hadoop.yarn.server.timeline.EntityGroupFSTimelineStore.getCachedStore(EntityGroupFSTimelineStore.java:938)
> at org.apache.hadoop.yarn.server.timeline.EntityGroupFSTimelineStore.getTimelineStoresFromCacheIds(EntityGroupFSTimelineStore.java:853)
> at org.apache.hadoop.yarn.server.timeline.EntityGroupFSTimelineStore.getTimelineStoresForRead(EntityGroupFSTimelineStore.java:906)
> at org.apache.hadoop.yarn.server.timeline.EntityGroupFSTimelineStore.getEntities(EntityGroupFSTimelineStore.java:959)
> at org.apache.hadoop.yarn.server.timeline.TimelineDataManager.doGetEntities(TimelineDataManager.java:169)
> at org.apache.hadoop.yarn.server.timeline.TimelineDataManager.getEntities(TimelineDataManager.java:139)
> at org.apache.hadoop.yarn.server.timeline.webapp.TimelineWebServices.getEntities(TimelineWebServices.java:119)
> 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)
> {code}
> A temporary fix would be adding /hadoop/shared/hadoop/tools into HADOOP_CLASSPATH manually.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: yarn-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: yarn-issues-help@hadoop.apache.org