Adds the
server.httpTimeout
setting to allow cloning big repositories over HTTP. This change fixes the java.util.concurrent.TimeoutException issue described in https://groups.google.com/d/topic/gitblit/UvDC48NpmF4/discussion .
diff --git a/src/main/distrib/data/defaults.properties b/src/main/distrib/data/defaults.properties
index 51fa125..e253064 100644
--- a/src/main/distrib/data/defaults.properties
+++ b/src/main/distrib/data/defaults.properties
@@ -2134,6 +2134,13 @@
# RESTART REQUIRED
server.shutdownPort = 8081
+# Timeout (in milliseconds) for http and https requests
+# Increase this value if you get java.util.concurrent.TimeoutException errors
+#
+# SINCE 1.9.0
+# RESTART REQUIRED
+server.httpTimeout = 30000
+
#
# Gitblit Filestore Settings
#
diff --git a/src/main/java/com/gitblit/GitBlitServer.java b/src/main/java/com/gitblit/GitBlitServer.java
index 6123a87..731ca8e 100644
--- a/src/main/java/com/gitblit/GitBlitServer.java
+++ b/src/main/java/com/gitblit/GitBlitServer.java
@@ -293,7 +293,7 @@
ServerConnector connector = new ServerConnector(server, factory);
connector.setSoLingerTime(-1);
- connector.setIdleTimeout(30000);
+ connector.setIdleTimeout(settings.getLong(Keys.server.httpTimeout, 30000L));
connector.setPort(params.securePort);
String bindInterface = settings.getString(Keys.server.httpsBindInterface, null);
if (!StringUtils.isEmpty(bindInterface)) {
@@ -330,7 +330,7 @@
ServerConnector connector = new ServerConnector(server, new HttpConnectionFactory(httpConfig));
connector.setSoLingerTime(-1);
- connector.setIdleTimeout(30000);
+ connector.setIdleTimeout(settings.getLong(Keys.server.httpTimeout, 30000L));
connector.setPort(params.port);
String bindInterface = settings.getString(Keys.server.httpBindInterface, null);
if (!StringUtils.isEmpty(bindInterface)) {
@@ -608,4 +608,4 @@
public String ldapLdifFile;
}
-}
\ No newline at end of file
+}