diff --git a/archiva-modules/archiva-base/archiva-consumers/archiva-consumer-archetype/src/main/resources/archetype-resources/pom.xml b/archiva-modules/archiva-base/archiva-consumers/archiva-consumer-archetype/src/main/resources/archetype-resources/pom.xml
index 08c3752ed..ec49d4a95 100644
--- a/archiva-modules/archiva-base/archiva-consumers/archiva-consumer-archetype/src/main/resources/archetype-resources/pom.xml
+++ b/archiva-modules/archiva-base/archiva-consumers/archiva-consumer-archetype/src/main/resources/archetype-resources/pom.xml
@@ -150,7 +150,8 @@
${project.build.directory}/appserver-base
${basedir}/target/archiva.xml
${project.build.testOutputDirectory}
- jdbc:derby:memory:users-test;create=true
+
+
org.apache.derby.jdbc.EmbeddedDriver
diff --git a/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/pom.xml b/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/pom.xml
index 4222dfc0d..0367aa66d 100644
--- a/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/pom.xml
+++ b/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/pom.xml
@@ -119,8 +119,8 @@
${project.build.directory}/appserver-base
${project.build.directory}/appserver-base
${project.build.directory}/appserver-base
- jdbc:derby:memory:users-test;create=true
- org.apache.derby.jdbc.EmbeddedDriver
+ ${redbackTestJdbcUrl}
+ ${redbackTestJdbcDriver}
${project.build.directory}/archiva.xml
diff --git a/archiva-modules/archiva-base/archiva-indexer/pom.xml b/archiva-modules/archiva-base/archiva-indexer/pom.xml
index ec70560dc..426f6d34e 100644
--- a/archiva-modules/archiva-base/archiva-indexer/pom.xml
+++ b/archiva-modules/archiva-base/archiva-indexer/pom.xml
@@ -170,8 +170,8 @@
${project.build.directory}/appserver-base
${project.build.directory}/appserver-base
${project.build.directory}/appserver-base
- jdbc:derby:memory:users-test;create=true
- org.apache.derby.jdbc.EmbeddedDriver
+ ${redbackTestJdbcUrl}
+ ${redbackTestJdbcDriver}
diff --git a/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/archiva/indexer/merger/DefaultIndexMerger.java b/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/archiva/indexer/merger/DefaultIndexMerger.java
index 045d2c28d..11b0814c2 100644
--- a/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/archiva/indexer/merger/DefaultIndexMerger.java
+++ b/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/archiva/indexer/merger/DefaultIndexMerger.java
@@ -24,6 +24,7 @@ import org.apache.archiva.common.plexusbridge.MavenIndexerUtils;
import org.apache.archiva.common.plexusbridge.PlexusSisuBridge;
import org.apache.archiva.common.plexusbridge.PlexusSisuBridgeException;
import org.apache.commons.io.FileUtils;
+import org.apache.commons.lang.math.NumberUtils;
import org.apache.maven.index.NexusIndexer;
import org.apache.maven.index.context.IndexingContext;
import org.apache.maven.index.context.UnsupportedExistingLuceneIndexException;
@@ -34,6 +35,7 @@ import org.slf4j.LoggerFactory;
import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service;
+import javax.annotation.PostConstruct;
import javax.inject.Inject;
import java.io.File;
import java.io.IOException;
@@ -50,6 +52,11 @@ public class DefaultIndexMerger
implements IndexMerger
{
+ /**
+ * default tmp created group index ttl in minutes
+ */
+ static final int DEFAULT_GROUP_INDEX_TTL = 30;
+
private Logger log = LoggerFactory.getLogger( getClass() );
@Inject
@@ -63,6 +70,8 @@ public class DefaultIndexMerger
private List temporaryGroupIndexes = new CopyOnWriteArrayList();
+ private int defaultGroupIndexTtl;
+
@Inject
public DefaultIndexMerger( PlexusSisuBridge plexusSisuBridge, MavenIndexerUtils mavenIndexerUtils )
throws PlexusSisuBridgeException
@@ -72,6 +81,15 @@ public class DefaultIndexMerger
indexPacker = plexusSisuBridge.lookup( IndexPacker.class, "default" );
}
+ @PostConstruct
+ public void intialize()
+ {
+ String ttlStr =
+ System.getProperty( IndexMerger.TMP_GROUP_INDEX_SYS_KEY, Integer.toString( DEFAULT_GROUP_INDEX_TTL ) );
+ this.defaultGroupIndexTtl = NumberUtils.toInt( ttlStr, DEFAULT_GROUP_INDEX_TTL );
+
+ }
+
public IndexingContext buildMergedIndex( Collection repositoriesIds, boolean packIndex )
throws IndexMergerException
{
@@ -148,4 +166,9 @@ public class DefaultIndexMerger
{
return this.temporaryGroupIndexes;
}
+
+ public int getDefaultGroupIndexTtl()
+ {
+ return this.defaultGroupIndexTtl;
+ }
}
diff --git a/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/archiva/indexer/merger/IndexMerger.java b/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/archiva/indexer/merger/IndexMerger.java
index 999d85bd5..4dbe2a819 100644
--- a/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/archiva/indexer/merger/IndexMerger.java
+++ b/archiva-modules/archiva-base/archiva-indexer/src/main/java/org/apache/archiva/indexer/merger/IndexMerger.java
@@ -29,11 +29,12 @@ import java.util.Collection;
*/
public interface IndexMerger
{
- /**
- * default tmp created group index ttl in minutes
- */
- static final int DEFAULT_GROUP_INDEX_TTL = 30;
+ /**
+ * system property which contains the value in s for ttl of temporary index groups
+ */
+ static final String TMP_GROUP_INDEX_SYS_KEY = "archiva.tmp.group.index.ttl";
+
/**
* @param repositoriesIds repositories Ids to merge content
* @param packIndex will generate a downloadable index
@@ -47,5 +48,9 @@ public interface IndexMerger
Collection getTemporaryGroupIndexes();
+ /**
+ * @return ttl of temporay group index
+ */
+ int getDefaultGroupIndexTtl();
}
diff --git a/archiva-modules/archiva-base/archiva-proxy/pom.xml b/archiva-modules/archiva-base/archiva-proxy/pom.xml
index 3cf6f60bd..62e485ed2 100644
--- a/archiva-modules/archiva-base/archiva-proxy/pom.xml
+++ b/archiva-modules/archiva-base/archiva-proxy/pom.xml
@@ -159,8 +159,8 @@
${project.build.directory}/appserver-base
${project.build.directory}/appserver-base
${project.build.directory}/appserver-base
- jdbc:derby:memory:users-test;create=true
- org.apache.derby.jdbc.EmbeddedDriver
+ ${redbackTestJdbcUrl}
+ ${redbackTestJdbcDriver}
diff --git a/archiva-modules/archiva-base/archiva-repository-admin/archiva-repository-admin-default/pom.xml b/archiva-modules/archiva-base/archiva-repository-admin/archiva-repository-admin-default/pom.xml
index b01764f23..4e4524e2d 100644
--- a/archiva-modules/archiva-base/archiva-repository-admin/archiva-repository-admin-default/pom.xml
+++ b/archiva-modules/archiva-base/archiva-repository-admin/archiva-repository-admin-default/pom.xml
@@ -213,8 +213,8 @@
${project.build.directory}/appserver-base
${project.build.directory}/appserver-base
${project.build.directory}/appserver-base
- jdbc:derby:memory:users-test;create=true
- org.apache.derby.jdbc.EmbeddedDriver
+ ${redbackTestJdbcUrl}
+ ${redbackTestJdbcDriver}
diff --git a/archiva-modules/archiva-scheduler/archiva-scheduler-indexing/pom.xml b/archiva-modules/archiva-scheduler/archiva-scheduler-indexing/pom.xml
index 50375e7ab..11d084e00 100644
--- a/archiva-modules/archiva-scheduler/archiva-scheduler-indexing/pom.xml
+++ b/archiva-modules/archiva-scheduler/archiva-scheduler-indexing/pom.xml
@@ -147,8 +147,8 @@
${project.build.directory}/appserver-base
${project.build.directory}/appserver-base
${project.build.directory}/appserver-base
- jdbc:derby:memory:users-test;create=true
- org.apache.derby.jdbc.EmbeddedDriver
+ ${redbackTestJdbcUrl}
+ ${redbackTestJdbcDriver}
${basedir}
diff --git a/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/pom.xml b/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/pom.xml
index 06a428e70..b2bae3f29 100644
--- a/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/pom.xml
+++ b/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/pom.xml
@@ -311,8 +311,8 @@
${archiva.baseRestUrl}
${rest.admin.pwd}
${test.useTomcat}
- jdbc:derby:memory:users-test;create=true
- org.apache.derby.jdbc.EmbeddedDriver
+ ${redbackTestJdbcUrl}
+ ${redbackTestJdbcDriver}
diff --git a/archiva-modules/archiva-web/archiva-security/pom.xml b/archiva-modules/archiva-web/archiva-security/pom.xml
index cb9709f3e..99ac1d7a2 100644
--- a/archiva-modules/archiva-web/archiva-security/pom.xml
+++ b/archiva-modules/archiva-web/archiva-security/pom.xml
@@ -161,8 +161,8 @@
${project.build.directory}/appserver-base
- jdbc:derby:memory:users-test;create=true
- org.apache.derby.jdbc.EmbeddedDriver
+ ${redbackTestJdbcUrl}
+ ${redbackTestJdbcDriver}
diff --git a/archiva-modules/archiva-web/archiva-webapp/pom.xml b/archiva-modules/archiva-web/archiva-webapp/pom.xml
index a8e5b31db..47ce9fd60 100644
--- a/archiva-modules/archiva-web/archiva-webapp/pom.xml
+++ b/archiva-modules/archiva-web/archiva-webapp/pom.xml
@@ -579,8 +579,8 @@
${rest.admin.pwd}
${basedir}/target/archiva.xml
${project.build.testOutputDirectory}
- jdbc:derby:memory:users-test;create=true
- org.apache.derby.jdbc.EmbeddedDriver
+ ${redbackTestJdbcUrl}
+ ${redbackTestJdbcDriver}
${basedir}
@@ -648,6 +648,7 @@
${project.build.directory}/appserver-home
${basedir}/appserver-base/logs
${basedir}/target/auto-admin-creation.properties
+ ${project.build.directory}
diff --git a/archiva-modules/archiva-web/archiva-webdav/pom.xml b/archiva-modules/archiva-web/archiva-webdav/pom.xml
index 6047ef797..3b6b83bcd 100644
--- a/archiva-modules/archiva-web/archiva-webdav/pom.xml
+++ b/archiva-modules/archiva-web/archiva-webdav/pom.xml
@@ -199,8 +199,8 @@
${project.build.directory}/appserver-base
${project.build.testOutputDirectory}
${project.build.testOutputDirectory}/repository-archiva.xml
- jdbc:derby:memory:users-test;create=true
- org.apache.derby.jdbc.EmbeddedDriver
+ ${redbackTestJdbcUrl}
+ ${redbackTestJdbcDriver}
${webdav.forkMode}
diff --git a/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/archiva/webdav/ArchivaDavResourceFactory.java b/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/archiva/webdav/ArchivaDavResourceFactory.java
index a4341ced0..de71e9d15 100644
--- a/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/archiva/webdav/ArchivaDavResourceFactory.java
+++ b/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/archiva/webdav/ArchivaDavResourceFactory.java
@@ -1215,7 +1215,7 @@ public class ArchivaDavResourceFactory
if ( tmp != null && tmp.getDirectory() != null && tmp.getDirectory().exists() )
{
- if ( System.currentTimeMillis() - tmp.getCreationTime() > ( IndexMerger.DEFAULT_GROUP_INDEX_TTL * 60
+ if ( System.currentTimeMillis() - tmp.getCreationTime() > ( indexMerger.getDefaultGroupIndexTtl() * 60
* 1000 ) )
{
log.debug( "tmp group index is too old so delete it" );
diff --git a/archiva-modules/archiva-web/archiva-xmlrpc/archiva-xmlrpc-services/pom.xml b/archiva-modules/archiva-web/archiva-xmlrpc/archiva-xmlrpc-services/pom.xml
index 901eb48c8..3a01a683d 100644
--- a/archiva-modules/archiva-web/archiva-xmlrpc/archiva-xmlrpc-services/pom.xml
+++ b/archiva-modules/archiva-web/archiva-xmlrpc/archiva-xmlrpc-services/pom.xml
@@ -169,8 +169,8 @@
${project.build.directory}/appserver-base
${project.build.testOutputDirectory}
${project.build.directory}/appserver-base
- jdbc:derby:memory:users-test;create=true
- org.apache.derby.jdbc.EmbeddedDriver
+ ${redbackTestJdbcUrl}
+ ${redbackTestJdbcDriver}
diff --git a/pom.xml b/pom.xml
index d94192e81..61c2267d4 100644
--- a/pom.xml
+++ b/pom.xml
@@ -78,6 +78,9 @@
10.1.3.1
1.4
7.4.5.v20110725
+
+
+ org.apache.derby.jdbc.EmbeddedDriver