From 3811378e0ec542e1ec3139406bbf0fc395e9d3df Mon Sep 17 00:00:00 2001 From: James Moger <james.moger@gitblit.com> Date: Fri, 29 Nov 2013 12:02:58 -0500 Subject: [PATCH] Invalidate all cached repository data on "clear cache" (issue-346) --- src/main/java/com/gitblit/utils/ObjectCache.java | 4 ++++ releases.moxie | 1 + src/main/java/com/gitblit/manager/RepositoryManager.java | 2 ++ 3 files changed, 7 insertions(+), 0 deletions(-) diff --git a/releases.moxie b/releases.moxie index c2ad4fc..3a1b296 100644 --- a/releases.moxie +++ b/releases.moxie @@ -13,6 +13,7 @@ - Fixed support for implied SSH urls in web.otherUrls (issue-311) - Bind LDAP connection after establishing TLS initialization (issue-343) - Fixed NPE when attempting to add a permission without a registrant (issue-344) + - Invalidate all cached repository data on "clear cache" (issue-346) - Fix potential NPE on removing uncached repository from cache - Ignore the default contents of .git/description file - Fix error on generating activity page when there is no activity diff --git a/src/main/java/com/gitblit/manager/RepositoryManager.java b/src/main/java/com/gitblit/manager/RepositoryManager.java index 438d885..0a3f663 100644 --- a/src/main/java/com/gitblit/manager/RepositoryManager.java +++ b/src/main/java/com/gitblit/manager/RepositoryManager.java @@ -457,6 +457,8 @@ public void resetRepositoryListCache() { logger.info("Repository cache manually reset"); repositoryListCache.clear(); + repositorySizeCache.clear(); + repositoryMetricsCache.clear(); } /** diff --git a/src/main/java/com/gitblit/utils/ObjectCache.java b/src/main/java/com/gitblit/utils/ObjectCache.java index 48a9668..e75d4b8 100644 --- a/src/main/java/com/gitblit/utils/ObjectCache.java +++ b/src/main/java/com/gitblit/utils/ObjectCache.java @@ -54,6 +54,10 @@ } } + public void clear() { + cache.clear(); + } + public boolean hasCurrent(String name, Date date) { return cache.containsKey(name) && cache.get(name).date.compareTo(date) == 0; } -- Gitblit v1.9.1