diff --git hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/src/main/java/org/apache/hadoop/yarn/conf/YarnConfiguration.java hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/src/main/java/org/apache/hadoop/yarn/conf/YarnConfiguration.java index 094a424..cdccec6 100644 --- hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/src/main/java/org/apache/hadoop/yarn/conf/YarnConfiguration.java +++ hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/src/main/java/org/apache/hadoop/yarn/conf/YarnConfiguration.java @@ -1890,6 +1890,9 @@ public static boolean isAclEnabled(Configuration conf) { public static final String TIMELINE_SERVICE_ENTITYGROUP_FS_STORE_PREFIX = TIMELINE_SERVICE_PREFIX + "entity-group-fs-store."; + public static final String TIMELINE_SERVICE_ENTITYGROUP_FS_STORE_CACHE_STORE = + TIMELINE_SERVICE_ENTITYGROUP_FS_STORE_PREFIX + "cache-store-class"; + public static final String TIMELINE_SERVICE_ENTITYGROUP_FS_STORE_ACTIVE_DIR = TIMELINE_SERVICE_ENTITYGROUP_FS_STORE_PREFIX + "active-dir"; diff --git hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/resources/yarn-default.xml hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/resources/yarn-default.xml index 53beb5e..368946e 100644 --- hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/resources/yarn-default.xml +++ hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/resources/yarn-default.xml @@ -2096,6 +2096,11 @@ + + yarn.timeline-service.entity-group-fs-store.cache-store-class + org.apache.hadoop.yarn.server.timeline.MemoryTimelineStore + Caching storage timeline server v1.5 is using. + yarn.timeline-service.entity-group-fs-store.active-dir diff --git hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-timeline-pluginstorage/src/main/java/org/apache/hadoop/yarn/server/timeline/EntityCacheItem.java hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-timeline-pluginstorage/src/main/java/org/apache/hadoop/yarn/server/timeline/EntityCacheItem.java index 7ed7c4a..8df60ab 100644 --- hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-timeline-pluginstorage/src/main/java/org/apache/hadoop/yarn/server/timeline/EntityCacheItem.java +++ hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-timeline-pluginstorage/src/main/java/org/apache/hadoop/yarn/server/timeline/EntityCacheItem.java @@ -17,8 +17,10 @@ package org.apache.hadoop.yarn.server.timeline; import org.apache.hadoop.conf.Configuration; +import org.apache.hadoop.util.ReflectionUtils; import org.apache.hadoop.util.Time; import org.apache.hadoop.yarn.api.records.timeline.TimelineEntityGroupId; +import org.apache.hadoop.yarn.conf.YarnConfiguration; import org.apache.hadoop.yarn.server.timeline.security.TimelineACLsManager; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -95,8 +97,11 @@ public synchronized TimelineStore refreshCache(TimelineACLsManager aclManager, } if (!appLogs.getDetailLogs().isEmpty()) { if (store == null) { - store = new LevelDBCacheTimelineStore(groupId.toString(), - "LeveldbCache." + groupId); + store = ReflectionUtils.newInstance(config.getClass( + YarnConfiguration + .TIMELINE_SERVICE_ENTITYGROUP_FS_STORE_CACHE_STORE, + MemoryTimelineStore.class, TimelineStore.class), + config); store.init(config); store.start(); } else {