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