ApplicationCache
== [[ApplicationCache]] ApplicationCache
ApplicationCache is...FIXME
ApplicationCache is <HistoryServer is HistoryServer.md#appCache[created].
ApplicationCache uses https://github.com/google/guava/wiki/Release14[Google Guava 14.0.1] library for the internal <
[[internal-registries]] .ApplicationCache's Internal Properties (e.g. Registries, Counters and Flags) [cols="1,2",options="header",width="100%"] |=== | Name | Description
| appLoader | [[appLoader]] Google Guava's https://google.github.io/guava/releases/14.0/api/docs/com/google/common/cache/CacheLoader.html[CacheLoader] with a custom ++https://google.github.io/guava/releases/14.0/api/docs/com/google/common/cache/CacheLoader.html#load(K)++[load] which is simply <
Used when...FIXME
| removalListener | [[removalListener]]
| appCache a| [[appCache]] Google Guava's https://google.github.io/guava/releases/14.0/api/docs/com/google/common/cache/LoadingCache.html[LoadingCache] of CacheKey keys and CacheEntry entries
Used when ApplicationCache is requested for the following:
-
<
> given appIdandattemptIdIDs -
FIXME (other uses)
| metrics | [[metrics]] |===
=== [[creating-instance]] Creating ApplicationCache Instance
ApplicationCache takes the following when created:
- [[operations]] ApplicationCacheOperations.md[ApplicationCacheOperations]
- [[retainedApplications]]
retainedApplications - [[clock]]
Clock
ApplicationCache initializes the <
=== [[loadApplicationEntry]] loadApplicationEntry Internal Method
[source, scala]¶
loadApplicationEntry(appId: String, attemptId: Option[String]): CacheEntry¶
loadApplicationEntry...FIXME
NOTE: loadApplicationEntry is used exclusively when ApplicationCache is requested to <
=== [[load]] Loading Cached Spark Application UI -- load Method
[source, scala]¶
load(key: CacheKey): CacheEntry¶
NOTE: load is part of Google Guava's https://google.github.io/guava/releases/14.0/api/docs/com/google/common/cache/CacheLoader.html[CacheLoader] to retrieve a CacheEntry, based on a CacheKey, for <
load simply relays to <appId and attemptId of the input CacheKey.
=== [[get]] Requesting Cached UI of Spark Application (CacheEntry) -- get Method
[source, scala]¶
get(appId: String, attemptId: Option[String] = None): CacheEntry¶
get...FIXME
NOTE: get is used exclusively when ApplicationCache is requested to <
=== [[withSparkUI]] Executing Closure While Holding Application's UI Read Lock -- withSparkUI Method
[source, scala]¶
withSparkUIT(fn: SparkUI => T): T¶
withSparkUI...FIXME
NOTE: withSparkUI is used when HistoryServer is requested to HistoryServer.md#withSparkUI[withSparkUI] and HistoryServer.md#loadAppUi[loadAppUi].