diff --git a/gitiles-servlet/src/main/java/com/google/gitiles/GitilesFilter.java b/gitiles-servlet/src/main/java/com/google/gitiles/GitilesFilter.java
index b4e78f6..c45470a 100644
--- a/gitiles-servlet/src/main/java/com/google/gitiles/GitilesFilter.java
+++ b/gitiles-servlet/src/main/java/com/google/gitiles/GitilesFilter.java
@@ -380,8 +380,8 @@
   private void setDefaultVisbilityCache() {
     if (visibilityCache == null) {
       if (config.getSubsections("cache").contains("visibility")) {
-        visibilityCache =
-            new VisibilityCache(false, ConfigUtil.getCacheBuilder(config, "visibility"));
+        visibilityCache = new VisibilityCache(
+            false, ConfigUtil.getCacheBuilder(VisibilityCache.newBuilder(), config, "visibility"));
       } else {
         visibilityCache = new VisibilityCache(false);
       }
@@ -391,7 +391,8 @@
   private void setDefaultTimeCache() {
     if (timeCache == null) {
       if (config.getSubsections("cache").contains("tagTime")) {
-        timeCache = new TimeCache(ConfigUtil.getCacheBuilder(config, "tagTime"));
+        timeCache = new TimeCache(
+            ConfigUtil.getCacheBuilder(TimeCache.newBuilder(), config, "tagTime"));
       } else {
         timeCache = new TimeCache();
       }
@@ -401,7 +402,8 @@
   private void setDefaultBlameCache() {
     if (blameCache == null) {
       if (config.getSubsections("cache").contains("blame")) {
-        blameCache = new BlameCacheImpl(ConfigUtil.getCacheBuilder(config, "blame"));
+        blameCache = new BlameCacheImpl(
+            ConfigUtil.getCacheBuilder(BlameCacheImpl.newBuilder(), config, "blame"));
       } else {
         blameCache = new BlameCacheImpl();
       }
