Skip to content

Commit a10f6e1

Browse files
committed
Make cache expiration time configurable
1 parent d8cf172 commit a10f6e1

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

common/scala/src/main/scala/org/apache/openwhisk/core/database/MultipleReadersSingleWriterCache.scala

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -94,6 +94,8 @@ trait MultipleReadersSingleWriterCache[W, Winfo] {
9494
/** Subclasses: Toggle this to enable/disable caching for your entity type. */
9595
protected val cacheEnabled = true
9696
protected val evictionPolicy: EvictionPolicy = AccessTime
97+
protected val cacheExpirationTime: Long = 5
98+
protected val cacheExpirationTimeUnit: TimeUnit = TimeUnit.MINUTES
9799
protected val fixedCacheSize = 0
98100

99101
private object Entry {
@@ -452,8 +454,8 @@ trait MultipleReadersSingleWriterCache[W, Winfo] {
452454
.softValues()
453455

454456
evictionPolicy match {
455-
case AccessTime => b.expireAfterAccess(5, TimeUnit.MINUTES)
456-
case _ => b.expireAfterWrite(5, TimeUnit.MINUTES)
457+
case AccessTime => b.expireAfterAccess(cacheExpirationTime, cacheExpirationTimeUnit)
458+
case _ => b.expireAfterWrite(cacheExpirationTime, cacheExpirationTimeUnit)
457459
}
458460

459461
if (fixedCacheSize > 0) b.maximumSize(fixedCacheSize)

0 commit comments

Comments
 (0)