aboutsummaryrefslogtreecommitdiffstats
path: root/archiva-modules
diff options
context:
space:
mode:
authorOlivier Lamy <olamy@apache.org>2011-06-28 22:19:30 +0000
committerOlivier Lamy <olamy@apache.org>2011-06-28 22:19:30 +0000
commitd7f0f916366c1a60b3ea4b2e6392fe3cdd85aa85 (patch)
treec28fb2ac0dbb07b57b4e9b5bd280a4e6f89683fd /archiva-modules
parenta5c5d53fa11f7706ccafec757e386b33c7d3ac99 (diff)
downloadarchiva-d7f0f916366c1a60b3ea4b2e6392fe3cdd85aa85.tar.gz
archiva-d7f0f916366c1a60b3ea4b2e6392fe3cdd85aa85.zip
[MRM-1478] Enable DB caching
Submitted by Maria Catherine Tan patch applied with modifications git-svn-id: https://svn.apache.org/repos/asf/archiva/trunk@1140869 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'archiva-modules')
-rw-r--r--archiva-modules/archiva-web/archiva-webapp/pom.xml35
-rw-r--r--archiva-modules/archiva-web/archiva-webapp/src/main/resources/ehcache.xml74
-rw-r--r--archiva-modules/archiva-web/archiva-webapp/src/main/webapp/WEB-INF/applicationContext.xml6
3 files changed, 95 insertions, 20 deletions
diff --git a/archiva-modules/archiva-web/archiva-webapp/pom.xml b/archiva-modules/archiva-web/archiva-webapp/pom.xml
index f33940dba..afb20eca4 100644
--- a/archiva-modules/archiva-web/archiva-webapp/pom.xml
+++ b/archiva-modules/archiva-web/archiva-webapp/pom.xml
@@ -358,6 +358,20 @@
<scope>test</scope>
<version>${struts.version}</version>
</dependency>
+ <dependency>
+ <groupId>jpox</groupId>
+ <artifactId>jpox-ehcache</artifactId>
+ <exclusions>
+ <exclusion>
+ <groupId>commons-logging</groupId>
+ <artifactId>commons-logging</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>ehcache</groupId>
+ <artifactId>ehcache</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
</dependencies>
<build>
<resources>
@@ -399,7 +413,7 @@
<tasks>
<mkdir dir="${basedir}/target/archiva/WEB-INF/"/>
<copy todir="${basedir}/target/archiva/WEB-INF/">
- <fileset dir="${basedir}/target" includes="classes/" excludes="**/struts.xml"/>
+ <fileset dir="${basedir}/target" includes="classes/" excludes="**/struts.xml,**/ehcache.xml"/>
</copy>
</tasks>
</configuration>
@@ -530,25 +544,6 @@
<artifactId>derby</artifactId>
<version>10.1.3.1</version>
</dependency>
- <!-- Enable the following if you want JSP 2.0 or JVM version < 1.5 <dependency>
- <groupId>commons-logging</groupId>
- <artifactId>commons-logging</artifactId>
- <version>1.1</version>
- <type>jar</type>
- </dependency>
- <dependency>
- <groupId>org.slf4j</groupId>
- <artifactId>slf4j-jcl</artifactId>
- <version>1.0.1</version>
- <type>jar</type>
- </dependency>
- <dependency>
- <groupId>log4j</groupId>
- <artifactId>log4j</artifactId>
- <version>1.2.14</version>
- <type>jar</type>
- </dependency>
- -->
</dependencies>
</plugin>
<plugin>
diff --git a/archiva-modules/archiva-web/archiva-webapp/src/main/resources/ehcache.xml b/archiva-modules/archiva-web/archiva-webapp/src/main/resources/ehcache.xml
new file mode 100644
index 000000000..3dc15b013
--- /dev/null
+++ b/archiva-modules/archiva-web/archiva-webapp/src/main/resources/ehcache.xml
@@ -0,0 +1,74 @@
+<ehcache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <diskStore path="java.io.tmpdir" />
+
+ <!-- make default cache very short lived -->
+
+ <defaultCache
+ maxElementsInMemory="100"
+ maxElementsOnDisk="0"
+ eternal="false"
+ overflowToDisk="false"
+ timeToIdleSeconds="300"
+ timeToLiveSeconds="600"
+ memoryStoreEvictionPolicy="LFU" />
+
+ <!--
+ cache Redback classes longer to avoid a lot of SQL queries
+ See REDBACK-227
+ -->
+ <cache name="defaultJpox"
+ maxElementsInMemory="10000"
+ maxElementsOnDisk="0"
+ eternal="false"
+ overflowToDisk="false"
+ timeToIdleSeconds="1800"
+ timeToLiveSeconds="14400"
+ memoryStoreEvictionPolicy="LFU" />
+
+ <cache name="org.codehaus.plexus.redback.rbac.jdo.JdoOperation"
+ maxElementsInMemory="10000"
+ maxElementsOnDisk="0"
+ eternal="false"
+ overflowToDisk="false"
+ timeToIdleSeconds="1800"
+ timeToLiveSeconds="14400"
+ memoryStoreEvictionPolicy="LFU" />
+
+ <cache name="org.codehaus.plexus.redback.rbac.jdo.JdoPermission"
+ maxElementsInMemory="10000"
+ maxElementsOnDisk="0"
+ eternal="false"
+ overflowToDisk="false"
+ timeToIdleSeconds="1800"
+ timeToLiveSeconds="14400"
+ memoryStoreEvictionPolicy="LFU" />
+
+ <cache name="org.codehaus.plexus.redback.rbac.jdo.JdoResource"
+ maxElementsInMemory="10000"
+ maxElementsOnDisk="0"
+ eternal="false"
+ overflowToDisk="false"
+ timeToIdleSeconds="1800"
+ timeToLiveSeconds="14400"
+ memoryStoreEvictionPolicy="LFU" />
+
+ <cache name="org.codehaus.plexus.redback.rbac.jdo.JdoRole"
+ maxElementsInMemory="10000"
+ maxElementsOnDisk="0"
+ eternal="false"
+ overflowToDisk="false"
+ timeToIdleSeconds="1800"
+ timeToLiveSeconds="14400"
+ memoryStoreEvictionPolicy="LFU" />
+
+ <cache name="org.codehaus.plexus.redback.rbac.jdo.JdoUserAssignment"
+ maxElementsInMemory="10000"
+ maxElementsOnDisk="0"
+ eternal="false"
+ overflowToDisk="false"
+ timeToIdleSeconds="300"
+ timeToLiveSeconds="600"
+ memoryStoreEvictionPolicy="LFU" />
+
+</ehcache>
+
diff --git a/archiva-modules/archiva-web/archiva-webapp/src/main/webapp/WEB-INF/applicationContext.xml b/archiva-modules/archiva-web/archiva-webapp/src/main/webapp/WEB-INF/applicationContext.xml
index 01d6dd055..857c4d9ec 100644
--- a/archiva-modules/archiva-web/archiva-webapp/src/main/webapp/WEB-INF/applicationContext.xml
+++ b/archiva-modules/archiva-web/archiva-webapp/src/main/webapp/WEB-INF/applicationContext.xml
@@ -159,6 +159,12 @@
<!-- NEEDED FOR POSTGRES, But causes problems in other JDBC implementations.
<prop key="org.jpox.identifier.case">PreserveCase</prop>
-->
+
+ <!-- cache activation -->
+ <prop key="org.jpox.cache.level2">true</prop>
+ <prop key="org.jpox.cache.level2.type">ehcacheclassbased</prop>
+ <prop key="org.jpox.cache.level2.cacheName">defaultJpox</prop>
+ <prop key="org.jpox.cache.level2.configurationFile">/ehcache.xml</prop>
</props>
</property>
</bean>