]> source.dussan.org Git - gitblit.git/commitdiff
Fixed regression with http socket connector
authorJames Moger <james.moger@gitblit.com>
Tue, 7 May 2013 03:25:10 +0000 (23:25 -0400)
committerJames Moger <james.moger@gitblit.com>
Tue, 7 May 2013 03:25:10 +0000 (23:25 -0400)
src/main/distrib/data/gitblit.properties
src/main/java/com/gitblit/GitBlitServer.java

index bfdc3e8b2ffe032ce74d5209a08a298a162bdb1a..2912bfe2bdab84306a68de86a26ae77acbf10a39 100644 (file)
@@ -1255,12 +1255,11 @@ server.tempFolder = ${baseFolder}/temp
 # RESTART REQUIRED\r
 server.useNio = true\r
 \r
-# If using Jetty NIO connectors, specify the maximum number of concurrent\r
-# http/https worker threads to allow. \r
+# Specify the maximum number of concurrent http/https worker threads to allow. \r
 #\r
 # SINCE 1.3.0\r
 # RESTART REQUIRED\r
-server.nioThreadPoolSize = 50\r
+server.threadPoolSize = 50\r
 \r
 # Context path for the GO application.  You might want to change the context\r
 # path if running Gitblit behind a proxy layer such as mod_proxy.\r
index 2c558be7f48ca4b124523887ffb318ad4abfbb34..ce0599590070336a27651116d19b4993cbba6d89 100644 (file)
@@ -203,7 +203,7 @@ public class GitBlitServer {
 \r
                // conditionally configure the http connector\r
                if (params.port > 0) {\r
-                       Connector httpConnector = createConnector(params.useNIO, settings.getInteger(Keys.server.nioThreadPoolSize, 50), params.port);\r
+                       Connector httpConnector = createConnector(params.useNIO, params.port, settings.getInteger(Keys.server.threadPoolSize, 50));\r
                        String bindInterface = settings.getString(Keys.server.httpBindInterface, null);\r
                        if (!StringUtils.isEmpty(bindInterface)) {\r
                                logger.warn(MessageFormat.format("Binding connector on port {0,number,0} to {1}",\r
@@ -262,7 +262,7 @@ public class GitBlitServer {
 \r
                        if (serverKeyStore.exists()) {                  \r
                                Connector secureConnector = createSSLConnector(params.alias, serverKeyStore, serverTrustStore, params.storePassword,\r
-                                               caRevocationList, params.useNIO, settings.getInteger(Keys.server.nioThreadPoolSize, 50), params.securePort, params.requireClientCertificates);\r
+                                               caRevocationList, params.useNIO, params.securePort, settings.getInteger(Keys.server.threadPoolSize, 50), params.requireClientCertificates);\r
                                String bindInterface = settings.getString(Keys.server.httpsBindInterface, null);\r
                                if (!StringUtils.isEmpty(bindInterface)) {\r
                                        logger.warn(MessageFormat.format(\r
@@ -410,20 +410,25 @@ public class GitBlitServer {
         * \r
         * @param useNIO\r
         * @param port\r
-        * @param maxThreads\r
+        * @param threadPoolSize\r
         * @return an http connector\r
         */\r
-       private Connector createConnector(boolean useNIO, int port, int maxThreads) {\r
+       private Connector createConnector(boolean useNIO, int port, int threadPoolSize) {\r
                Connector connector;\r
                if (useNIO) {\r
                        logger.info("Setting up NIO SelectChannelConnector on port " + port);\r
                        SelectChannelConnector nioconn = new SelectChannelConnector();\r
                        nioconn.setSoLingerTime(-1);\r
-                       nioconn.setThreadPool(new QueuedThreadPool(maxThreads));\r
+                       if (threadPoolSize > 0) {\r
+                               nioconn.setThreadPool(new QueuedThreadPool(threadPoolSize));\r
+                       }\r
                        connector = nioconn;\r
                } else {\r
                        logger.info("Setting up SocketConnector on port " + port);\r
                        SocketConnector sockconn = new SocketConnector();\r
+                       if (threadPoolSize > 0) {\r
+                               sockconn.setThreadPool(new QueuedThreadPool(threadPoolSize));\r
+                       }\r
                        connector = sockconn;\r
                }\r
 \r
@@ -444,13 +449,13 @@ public class GitBlitServer {
         * @param storePassword\r
         * @param caRevocationList\r
         * @param useNIO\r
-        * @param nioThreadPoolSize\r
         * @param port\r
+        * @param threadPoolSize\r
         * @param requireClientCertificates\r
         * @return an https connector\r
         */\r
        private Connector createSSLConnector(String certAlias, File keyStore, File clientTrustStore,\r
-                       String storePassword, File caRevocationList, boolean useNIO,  int nioThreadPoolSize, int port,\r
+                       String storePassword, File caRevocationList, boolean useNIO,  int port, int threadPoolSize, \r
                        boolean requireClientCertificates) {\r
                GitblitSslContextFactory factory = new GitblitSslContextFactory(certAlias,\r
                                keyStore, clientTrustStore, storePassword, caRevocationList);\r
@@ -464,11 +469,16 @@ public class GitBlitServer {
                        } else {\r
                                factory.setWantClientAuth(true);\r
                        }\r
-                       ssl.setThreadPool(new QueuedThreadPool(nioThreadPoolSize));\r
+                       if (threadPoolSize > 0) {\r
+                               ssl.setThreadPool(new QueuedThreadPool(threadPoolSize));\r
+                       }\r
                        connector = ssl;\r
                } else {\r
                        logger.info("Setting up NIO SslSocketConnector on port " + port);\r
                        SslSocketConnector ssl = new SslSocketConnector(factory);\r
+                       if (threadPoolSize > 0) {\r
+                               ssl.setThreadPool(new QueuedThreadPool(threadPoolSize));\r
+                       }\r
                        connector = ssl;\r
                }\r
                connector.setPort(port);\r