You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by sh...@apache.org on 2015/01/05 16:45:59 UTC
svn commit: r1649552 - in /lucene/dev/trunk:
dev-tools/maven/lucene/replicator/ dev-tools/maven/solr/ lucene/
lucene/licenses/ lucene/replicator/src/test/org/apache/lucene/replicator/
solr/ solr/bin/ solr/core/src/java/org/apache/solr/client/solrj/embe...
Author: shalin
Date: Mon Jan 5 15:45:58 2015
New Revision: 1649552
URL: http://svn.apache.org/r1649552
Log:
SOLR-4839: Upgrade to Jetty 9
Added:
lucene/dev/trunk/lucene/licenses/jetty-continuation-9.2.6.v20141205.jar.sha1 (with props)
lucene/dev/trunk/lucene/licenses/jetty-http-9.2.6.v20141205.jar.sha1 (with props)
lucene/dev/trunk/lucene/licenses/jetty-io-9.2.6.v20141205.jar.sha1 (with props)
lucene/dev/trunk/lucene/licenses/jetty-server-9.2.6.v20141205.jar.sha1 (with props)
lucene/dev/trunk/lucene/licenses/jetty-servlet-9.2.6.v20141205.jar.sha1 (with props)
lucene/dev/trunk/lucene/licenses/jetty-util-9.2.6.v20141205.jar.sha1 (with props)
lucene/dev/trunk/solr/licenses/javax.servlet-api-3.1.0.jar.sha1 (with props)
lucene/dev/trunk/solr/licenses/jetty-continuation-9.2.6.v20141205.jar.sha1 (with props)
lucene/dev/trunk/solr/licenses/jetty-deploy-9.2.6.v20141205.jar.sha1 (with props)
lucene/dev/trunk/solr/licenses/jetty-http-9.2.6.v20141205.jar.sha1 (with props)
lucene/dev/trunk/solr/licenses/jetty-io-9.2.6.v20141205.jar.sha1 (with props)
lucene/dev/trunk/solr/licenses/jetty-jmx-9.2.6.v20141205.jar.sha1 (with props)
lucene/dev/trunk/solr/licenses/jetty-security-9.2.6.v20141205.jar.sha1 (with props)
lucene/dev/trunk/solr/licenses/jetty-server-9.2.6.v20141205.jar.sha1 (with props)
lucene/dev/trunk/solr/licenses/jetty-servlet-9.2.6.v20141205.jar.sha1 (with props)
lucene/dev/trunk/solr/licenses/jetty-servlets-9.2.6.v20141205.jar.sha1 (with props)
lucene/dev/trunk/solr/licenses/jetty-util-9.2.6.v20141205.jar.sha1 (with props)
lucene/dev/trunk/solr/licenses/jetty-webapp-9.2.6.v20141205.jar.sha1 (with props)
lucene/dev/trunk/solr/licenses/jetty-xml-9.2.6.v20141205.jar.sha1 (with props)
lucene/dev/trunk/solr/licenses/org.restlet-2.3.0.jar.sha1 (with props)
lucene/dev/trunk/solr/licenses/org.restlet.ext.servlet-2.3.0.jar.sha1 (with props)
lucene/dev/trunk/solr/server/etc/jetty-http.xml (with props)
lucene/dev/trunk/solr/server/etc/jetty-https.xml (with props)
lucene/dev/trunk/solr/server/etc/jetty-ssl.xml (with props)
lucene/dev/trunk/solr/server/modules/
lucene/dev/trunk/solr/server/modules/http.mod (with props)
lucene/dev/trunk/solr/server/modules/https.mod (with props)
lucene/dev/trunk/solr/server/modules/server.mod (with props)
lucene/dev/trunk/solr/server/modules/ssl.mod (with props)
lucene/dev/trunk/solr/server/resources/jetty-logging.properties (with props)
lucene/dev/trunk/solr/server/start.ini (with props)
Removed:
lucene/dev/trunk/lucene/licenses/jetty-continuation-8.1.10.v20130312.jar.sha1
lucene/dev/trunk/lucene/licenses/jetty-http-8.1.10.v20130312.jar.sha1
lucene/dev/trunk/lucene/licenses/jetty-io-8.1.10.v20130312.jar.sha1
lucene/dev/trunk/lucene/licenses/jetty-server-8.1.10.v20130312.jar.sha1
lucene/dev/trunk/lucene/licenses/jetty-servlet-8.1.10.v20130312.jar.sha1
lucene/dev/trunk/lucene/licenses/jetty-util-8.1.10.v20130312.jar.sha1
lucene/dev/trunk/solr/licenses/javax.servlet-api-3.0.1.jar.sha1
lucene/dev/trunk/solr/licenses/jetty-continuation-8.1.10.v20130312.jar.sha1
lucene/dev/trunk/solr/licenses/jetty-deploy-8.1.10.v20130312.jar.sha1
lucene/dev/trunk/solr/licenses/jetty-http-8.1.10.v20130312.jar.sha1
lucene/dev/trunk/solr/licenses/jetty-io-8.1.10.v20130312.jar.sha1
lucene/dev/trunk/solr/licenses/jetty-jmx-8.1.10.v20130312.jar.sha1
lucene/dev/trunk/solr/licenses/jetty-security-8.1.10.v20130312.jar.sha1
lucene/dev/trunk/solr/licenses/jetty-server-8.1.10.v20130312.jar.sha1
lucene/dev/trunk/solr/licenses/jetty-servlet-8.1.10.v20130312.jar.sha1
lucene/dev/trunk/solr/licenses/jetty-util-8.1.10.v20130312.jar.sha1
lucene/dev/trunk/solr/licenses/jetty-webapp-8.1.10.v20130312.jar.sha1
lucene/dev/trunk/solr/licenses/jetty-xml-8.1.10.v20130312.jar.sha1
lucene/dev/trunk/solr/licenses/org.restlet-2.1.1.jar.sha1
lucene/dev/trunk/solr/licenses/org.restlet.ext.servlet-2.1.1.jar.sha1
Modified:
lucene/dev/trunk/dev-tools/maven/lucene/replicator/pom.xml.template
lucene/dev/trunk/dev-tools/maven/solr/pom.xml.template
lucene/dev/trunk/lucene/common-build.xml
lucene/dev/trunk/lucene/ivy-versions.properties
lucene/dev/trunk/lucene/replicator/src/test/org/apache/lucene/replicator/ReplicatorTestCase.java
lucene/dev/trunk/solr/CHANGES.txt
lucene/dev/trunk/solr/bin/solr
lucene/dev/trunk/solr/core/src/java/org/apache/solr/client/solrj/embedded/JettySolrRunner.java
lucene/dev/trunk/solr/core/src/test/org/apache/solr/servlet/SolrRequestParserTest.java
lucene/dev/trunk/solr/licenses/start.jar.sha1
lucene/dev/trunk/solr/server/contexts/solr-jetty-context.xml
lucene/dev/trunk/solr/server/etc/jetty.xml
lucene/dev/trunk/solr/server/ivy.xml
lucene/dev/trunk/solr/solrj/src/test/org/apache/solr/client/solrj/StartSolrJetty.java
lucene/dev/trunk/solr/solrj/src/test/org/apache/solr/client/solrj/embedded/JettyWebappTest.java
Modified: lucene/dev/trunk/dev-tools/maven/lucene/replicator/pom.xml.template
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/dev-tools/maven/lucene/replicator/pom.xml.template?rev=1649552&r1=1649551&r2=1649552&view=diff
==============================================================================
--- lucene/dev/trunk/dev-tools/maven/lucene/replicator/pom.xml.template (original)
+++ lucene/dev/trunk/dev-tools/maven/lucene/replicator/pom.xml.template Mon Jan 5 15:45:58 2015
@@ -68,11 +68,6 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
- <configuration>
- <systemPropertyVariables>
- <tests.jettyConnector>${tests.jettyConnector}</tests.jettyConnector>
- </systemPropertyVariables>
- </configuration>
</plugin>
</plugins>
</build>
Modified: lucene/dev/trunk/dev-tools/maven/solr/pom.xml.template
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/dev-tools/maven/solr/pom.xml.template?rev=1649552&r1=1649551&r2=1649552&view=diff
==============================================================================
--- lucene/dev/trunk/dev-tools/maven/solr/pom.xml.template (original)
+++ lucene/dev/trunk/dev-tools/maven/solr/pom.xml.template Mon Jan 5 15:45:58 2015
@@ -103,7 +103,6 @@
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<systemPropertyVariables>
- <tests.jettyConnector>${tests.jettyConnector}</tests.jettyConnector>
<tests.disableHdfs>${tests.disableHdfs}</tests.disableHdfs>
</systemPropertyVariables>
</configuration>
Modified: lucene/dev/trunk/lucene/common-build.xml
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/common-build.xml?rev=1649552&r1=1649551&r2=1649552&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/common-build.xml (original)
+++ lucene/dev/trunk/lucene/common-build.xml Mon Jan 5 15:45:58 2015
@@ -1036,7 +1036,6 @@
<propertyref prefix="tests.badapples" />
<propertyref prefix="tests.bwcdir" />
<propertyref prefix="tests.timeoutSuite" />
- <propertyref prefix="tests.jettyConnector" />
<propertyref prefix="tests.disableHdfs" />
<propertyref prefix="tests.filter" />
<propertyref prefix="tests.leavetmpdir" />
Modified: lucene/dev/trunk/lucene/ivy-versions.properties
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/ivy-versions.properties?rev=1649552&r1=1649551&r2=1649552&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/ivy-versions.properties (original)
+++ lucene/dev/trunk/lucene/ivy-versions.properties Mon Jan 5 15:45:58 2015
@@ -70,7 +70,7 @@ com.sun.jersey.version = 1.9
/jakarta-regexp/jakarta-regexp = 1.4
/javax.activation/activation = 1.1.1
/javax.inject/javax.inject= 1
-/javax.servlet/javax.servlet-api = 3.0.1
+/javax.servlet/javax.servlet-api = 3.1.0
/javax.servlet/servlet-api = 2.4
/jdom/jdom = 1.0
/joda-time/joda-time = 2.2
@@ -178,7 +178,7 @@ org.codehaus.jackson.version = 1.9.13
/org.easymock/easymock = 3.0
/org.eclipse.jetty.orbit/javax.servlet = 3.0.0.v201112011016
-org.eclipse.jetty.version = 8.1.10.v20130312
+org.eclipse.jetty.version = 9.2.6.v20141205
/org.eclipse.jetty/jetty-continuation = ${org.eclipse.jetty.version}
/org.eclipse.jetty/jetty-deploy = ${org.eclipse.jetty.version}
/org.eclipse.jetty/jetty-http = ${org.eclipse.jetty.version}
@@ -187,6 +187,7 @@ org.eclipse.jetty.version = 8.1.10.v2013
/org.eclipse.jetty/jetty-security = ${org.eclipse.jetty.version}
/org.eclipse.jetty/jetty-server = ${org.eclipse.jetty.version}
/org.eclipse.jetty/jetty-servlet = ${org.eclipse.jetty.version}
+/org.eclipse.jetty/jetty-servlets = ${org.eclipse.jetty.version}
/org.eclipse.jetty/jetty-start = ${org.eclipse.jetty.version}
/org.eclipse.jetty/jetty-util = ${org.eclipse.jetty.version}
/org.eclipse.jetty/jetty-webapp = ${org.eclipse.jetty.version}
@@ -219,7 +220,7 @@ org.ow2.asm.version = 4.1
/org.ow2.asm/asm = ${org.ow2.asm.version}
/org.ow2.asm/asm-commons = ${org.ow2.asm.version}
-org.restlet.jee.version = 2.1.1
+org.restlet.jee.version = 2.3.0
/org.restlet.jee/org.restlet = ${org.restlet.jee.version}
/org.restlet.jee/org.restlet.ext.servlet = ${org.restlet.jee.version}
Added: lucene/dev/trunk/lucene/licenses/jetty-continuation-9.2.6.v20141205.jar.sha1
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/licenses/jetty-continuation-9.2.6.v20141205.jar.sha1?rev=1649552&view=auto
==============================================================================
--- lucene/dev/trunk/lucene/licenses/jetty-continuation-9.2.6.v20141205.jar.sha1 (added)
+++ lucene/dev/trunk/lucene/licenses/jetty-continuation-9.2.6.v20141205.jar.sha1 Mon Jan 5 15:45:58 2015
@@ -0,0 +1 @@
+74ca2679e461e7e9b5fdffcf9685575a7d5f5c8e
Added: lucene/dev/trunk/lucene/licenses/jetty-http-9.2.6.v20141205.jar.sha1
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/licenses/jetty-http-9.2.6.v20141205.jar.sha1?rev=1649552&view=auto
==============================================================================
--- lucene/dev/trunk/lucene/licenses/jetty-http-9.2.6.v20141205.jar.sha1 (added)
+++ lucene/dev/trunk/lucene/licenses/jetty-http-9.2.6.v20141205.jar.sha1 Mon Jan 5 15:45:58 2015
@@ -0,0 +1 @@
+5484771191612c1f5a57466865b7014ff56886ce
Added: lucene/dev/trunk/lucene/licenses/jetty-io-9.2.6.v20141205.jar.sha1
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/licenses/jetty-io-9.2.6.v20141205.jar.sha1?rev=1649552&view=auto
==============================================================================
--- lucene/dev/trunk/lucene/licenses/jetty-io-9.2.6.v20141205.jar.sha1 (added)
+++ lucene/dev/trunk/lucene/licenses/jetty-io-9.2.6.v20141205.jar.sha1 Mon Jan 5 15:45:58 2015
@@ -0,0 +1 @@
+11b84cc7078745fca844bd2fb95c2b4f818eafc2
Added: lucene/dev/trunk/lucene/licenses/jetty-server-9.2.6.v20141205.jar.sha1
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/licenses/jetty-server-9.2.6.v20141205.jar.sha1?rev=1649552&view=auto
==============================================================================
--- lucene/dev/trunk/lucene/licenses/jetty-server-9.2.6.v20141205.jar.sha1 (added)
+++ lucene/dev/trunk/lucene/licenses/jetty-server-9.2.6.v20141205.jar.sha1 Mon Jan 5 15:45:58 2015
@@ -0,0 +1 @@
+5960eb385ded42360045447185a0510365f811dc
Added: lucene/dev/trunk/lucene/licenses/jetty-servlet-9.2.6.v20141205.jar.sha1
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/licenses/jetty-servlet-9.2.6.v20141205.jar.sha1?rev=1649552&view=auto
==============================================================================
--- lucene/dev/trunk/lucene/licenses/jetty-servlet-9.2.6.v20141205.jar.sha1 (added)
+++ lucene/dev/trunk/lucene/licenses/jetty-servlet-9.2.6.v20141205.jar.sha1 Mon Jan 5 15:45:58 2015
@@ -0,0 +1 @@
+026aa018ef20780e8a900ae7fc95f59884d3095b
Added: lucene/dev/trunk/lucene/licenses/jetty-util-9.2.6.v20141205.jar.sha1
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/licenses/jetty-util-9.2.6.v20141205.jar.sha1?rev=1649552&view=auto
==============================================================================
--- lucene/dev/trunk/lucene/licenses/jetty-util-9.2.6.v20141205.jar.sha1 (added)
+++ lucene/dev/trunk/lucene/licenses/jetty-util-9.2.6.v20141205.jar.sha1 Mon Jan 5 15:45:58 2015
@@ -0,0 +1 @@
+fdfa0b969d99a2dfb2a46c0ff00251d7e6c7b2bb
Modified: lucene/dev/trunk/lucene/replicator/src/test/org/apache/lucene/replicator/ReplicatorTestCase.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/replicator/src/test/org/apache/lucene/replicator/ReplicatorTestCase.java?rev=1649552&r1=1649551&r2=1649552&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/replicator/src/test/org/apache/lucene/replicator/ReplicatorTestCase.java (original)
+++ lucene/dev/trunk/lucene/replicator/src/test/org/apache/lucene/replicator/ReplicatorTestCase.java Mon Jan 5 15:45:58 2015
@@ -18,18 +18,20 @@ package org.apache.lucene.replicator;
*/
import java.util.Random;
+import java.util.concurrent.TimeUnit;
import org.apache.http.conn.HttpClientConnectionManager;
import org.apache.http.impl.conn.PoolingHttpClientConnectionManager;
import org.apache.lucene.util.LuceneTestCase;
import org.eclipse.jetty.server.Connector;
import org.eclipse.jetty.server.Handler;
+import org.eclipse.jetty.server.HttpConfiguration;
+import org.eclipse.jetty.server.HttpConnectionFactory;
+import org.eclipse.jetty.server.SecureRequestCustomizer;
import org.eclipse.jetty.server.Server;
-import org.eclipse.jetty.server.bio.SocketConnector;
-import org.eclipse.jetty.server.nio.SelectChannelConnector;
+import org.eclipse.jetty.server.ServerConnector;
+import org.eclipse.jetty.server.SslConnectionFactory;
import org.eclipse.jetty.server.session.HashSessionIdManager;
-import org.eclipse.jetty.server.ssl.SslSelectChannelConnector;
-import org.eclipse.jetty.server.ssl.SslSocketConnector;
import org.eclipse.jetty.util.ssl.SslContextFactory;
import org.eclipse.jetty.util.thread.QueuedThreadPool;
import org.junit.AfterClass;
@@ -51,12 +53,6 @@ public abstract class ReplicatorTestCase
* {@link #serverPort(Server)}.
*/
public static synchronized Server newHttpServer(Handler handler) throws Exception {
- Server server = new Server(0);
-
- server.setHandler(handler);
-
- final String connectorName = System.getProperty("tests.jettyConnector", "SelectChannel");
-
// if this property is true, then jetty will be configured to use SSL
// leveraging the same system properties as java to specify
// the keystore/truststore if they are set
@@ -78,7 +74,7 @@ public abstract class ReplicatorTestCase
(System.getProperty("javax.net.ssl.keyStorePassword"));
}
if (null != System.getProperty("javax.net.ssl.trustStore")) {
- sslcontext.setTrustStore
+ sslcontext.setKeyStorePath
(System.getProperty("javax.net.ssl.trustStore"));
}
if (null != System.getProperty("javax.net.ssl.trustStorePassword")) {
@@ -88,34 +84,36 @@ public abstract class ReplicatorTestCase
sslcontext.setNeedClientAuth(Boolean.getBoolean("tests.jettySsl.clientAuth"));
}
- final Connector connector;
- final QueuedThreadPool threadPool;
- if ("SelectChannel".equals(connectorName)) {
- final SelectChannelConnector c = useSsl ? new SslSelectChannelConnector(sslcontext) : new SelectChannelConnector();
- c.setReuseAddress(true);
- c.setLowResourcesMaxIdleTime(1500);
- connector = c;
- threadPool = (QueuedThreadPool) c.getThreadPool();
- } else if ("Socket".equals(connectorName)) {
- final SocketConnector c = useSsl ? new SslSocketConnector(sslcontext) : new SocketConnector();
- c.setReuseAddress(true);
+ final QueuedThreadPool threadPool = new QueuedThreadPool();
+ threadPool.setDaemon(true);
+ threadPool.setMaxThreads(10000);
+ threadPool.setIdleTimeout(5000);
+ threadPool.setStopTimeout(30000);
+
+ Server server = new Server(threadPool);
+ server.setStopAtShutdown(true);
+ server.manage(threadPool);
+
+
+ final ServerConnector connector;
+ if (useSsl) {
+ HttpConfiguration configuration = new HttpConfiguration();
+ configuration.setSecureScheme("https");
+ configuration.addCustomizer(new SecureRequestCustomizer());
+ ServerConnector c = new ServerConnector(server, new SslConnectionFactory(sslcontext, "http/1.1"),
+ new HttpConnectionFactory(configuration));
connector = c;
- threadPool = (QueuedThreadPool) c.getThreadPool();
} else {
- throw new IllegalArgumentException("Illegal value for system property 'tests.jettyConnector': " + connectorName);
+ ServerConnector c = new ServerConnector(server, new HttpConnectionFactory());
+ connector = c;
}
connector.setPort(0);
connector.setHost("127.0.0.1");
- if (threadPool != null) {
- threadPool.setDaemon(true);
- threadPool.setMaxThreads(10000);
- threadPool.setMaxIdleTimeMs(5000);
- threadPool.setMaxStopTimeMs(30000);
- }
-
+
server.setConnectors(new Connector[] {connector});
server.setSessionIdManager(new HashSessionIdManager(new Random(random().nextLong())));
+ server.setHandler(handler);
server.start();
@@ -124,12 +122,12 @@ public abstract class ReplicatorTestCase
/** Returns a {@link Server}'s port. */
public static int serverPort(Server server) {
- return server.getConnectors()[0].getLocalPort();
+ return ((ServerConnector)server.getConnectors()[0]).getLocalPort();
}
/** Returns a {@link Server}'s host. */
public static String serverHost(Server server) {
- return server.getConnectors()[0].getHost();
+ return ((ServerConnector)server.getConnectors()[0]).getHost();
}
/**
Modified: lucene/dev/trunk/solr/CHANGES.txt
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/CHANGES.txt?rev=1649552&r1=1649551&r2=1649552&view=diff
==============================================================================
--- lucene/dev/trunk/solr/CHANGES.txt (original)
+++ lucene/dev/trunk/solr/CHANGES.txt Mon Jan 5 15:45:58 2015
@@ -62,6 +62,7 @@ Carrot2 3.9.0
Velocity 1.7 and Velocity Tools 2.0
Apache UIMA 2.3.1
Apache ZooKeeper 3.4.6
+Jetty 9.2.6.v20141205
Upgrading from Solr 4.x
----------------------
@@ -626,6 +627,9 @@ Other Changes
* SOLR-6905: Test pseudo-field retrieval in distributed search.
(Ramkumar Aiyengar via shalin)
+* SOLR-4839: Upgrade Jetty to 9.2.6.v20141205 and restlet-jee to 2.3.0
+ (Bill Bell, Timothy Potter, Uwe Schindler, shalin)
+
================== 4.10.3 ==================
Bug Fixes
Modified: lucene/dev/trunk/solr/bin/solr
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/bin/solr?rev=1649552&r1=1649551&r2=1649552&view=diff
==============================================================================
--- lucene/dev/trunk/solr/bin/solr (original)
+++ lucene/dev/trunk/solr/bin/solr Mon Jan 5 15:45:58 2015
@@ -1138,6 +1138,7 @@ function launch_solr() {
SOLR_START_OPTS="-server -Xss256k $SOLR_JAVA_MEM $GC_TUNE $GC_LOG_OPTS $REMOTE_JMX_OPTS \
$CLOUD_MODE_OPTS \
+-Djetty.home=$SOLR_SERVER_DIR
-DSTOP.PORT=$stop_port -DSTOP.KEY=$STOP_KEY \
$SOLR_HOST_ARG -Djetty.port=$SOLR_PORT \
-Dsolr.solr.home=$SOLR_HOME \
Modified: lucene/dev/trunk/solr/core/src/java/org/apache/solr/client/solrj/embedded/JettySolrRunner.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/core/src/java/org/apache/solr/client/solrj/embedded/JettySolrRunner.java?rev=1649552&r1=1649551&r2=1649552&view=diff
==============================================================================
--- lucene/dev/trunk/solr/core/src/java/org/apache/solr/client/solrj/embedded/JettySolrRunner.java (original)
+++ lucene/dev/trunk/solr/core/src/java/org/apache/solr/client/solrj/embedded/JettySolrRunner.java Mon Jan 5 15:45:58 2015
@@ -19,17 +19,19 @@ package org.apache.solr.client.solrj.emb
import org.apache.solr.servlet.SolrDispatchFilter;
import org.eclipse.jetty.server.Connector;
+import org.eclipse.jetty.server.HttpConfiguration;
+import org.eclipse.jetty.server.HttpConnectionFactory;
+import org.eclipse.jetty.server.LowResourceMonitor;
+import org.eclipse.jetty.server.SecureRequestCustomizer;
import org.eclipse.jetty.server.Server;
-import org.eclipse.jetty.server.bio.SocketConnector;
-import org.eclipse.jetty.server.handler.GzipHandler;
-import org.eclipse.jetty.server.nio.SelectChannelConnector;
+import org.eclipse.jetty.server.ServerConnector;
+import org.eclipse.jetty.server.SslConnectionFactory;
import org.eclipse.jetty.server.session.HashSessionIdManager;
-import org.eclipse.jetty.server.ssl.SslConnector;
-import org.eclipse.jetty.server.ssl.SslSelectChannelConnector;
-import org.eclipse.jetty.server.ssl.SslSocketConnector;
import org.eclipse.jetty.servlet.FilterHolder;
import org.eclipse.jetty.servlet.ServletContextHandler;
import org.eclipse.jetty.servlet.ServletHolder;
+import org.eclipse.jetty.servlets.GzipFilter;
+import org.eclipse.jetty.servlets.gzip.GzipHandler;
import org.eclipse.jetty.util.component.LifeCycle;
import org.eclipse.jetty.util.log.Logger;
import org.eclipse.jetty.util.ssl.SslContextFactory;
@@ -202,18 +204,11 @@ public class JettySolrRunner {
private void init(String solrHome, String context, int port, boolean stopAtShutdown) {
this.context = context;
- server = new Server(port);
this.solrHome = solrHome;
this.stopAtShutdown = stopAtShutdown;
- server.setStopAtShutdown(stopAtShutdown);
- if (!stopAtShutdown) {
- server.setGracefulShutdown(0);
- }
System.setProperty("solr.solr.home", solrHome);
if (System.getProperty("jetty.testMode") != null) {
- final String connectorName = System.getProperty("tests.jettyConnector", "SelectChannel");
-
// if this property is true, then jetty will be configured to use SSL
// leveraging the same system properties as java to specify
// the keystore/truststore if they are set unless specific config
@@ -227,52 +222,56 @@ public class JettySolrRunner {
final SslContextFactory sslcontext = new SslContextFactory(false);
sslInit(useSsl, sslcontext);
- final Connector connector;
- if ("SelectChannel".equals(connectorName)) {
- final SelectChannelConnector c = useSsl
- ? new SslSelectChannelConnector(sslcontext)
- : new SelectChannelConnector();
- c.setReuseAddress(true);
- c.setLowResourcesMaxIdleTime(1500);
- c.setSoLingerTime(0);
- connector = c;
- } else if ("Socket".equals(connectorName)) {
- final SocketConnector c = useSsl
- ? new SslSocketConnector(sslcontext)
- : new SocketConnector();
- c.setReuseAddress(true);
- c.setSoLingerTime(0);
- connector = c;
+ QueuedThreadPool qtp = new QueuedThreadPool();
+ qtp.setMaxThreads(10000);
+ qtp.setIdleTimeout((int) TimeUnit.SECONDS.toMillis(5));
+ qtp.setStopTimeout((int) TimeUnit.MINUTES.toMillis(1));
+
+ server = new Server(qtp);
+ server.setStopAtShutdown(stopAtShutdown);
+ server.manage(qtp);
+
+ ServerConnector connector;
+ if (useSsl) {
+ HttpConfiguration configuration = new HttpConfiguration();
+ configuration.setSecureScheme("https");
+ configuration.addCustomizer(new SecureRequestCustomizer());
+ connector = new ServerConnector(server, new SslConnectionFactory(sslcontext, "http/1.1"),
+ new HttpConnectionFactory(configuration));
} else {
- throw new IllegalArgumentException("Illegal value for system property 'tests.jettyConnector': " + connectorName);
+ connector = new ServerConnector(server, new HttpConnectionFactory());
}
+ connector.setReuseAddress(true);
+ connector.setSoLingerTime(0);
connector.setPort(port);
connector.setHost("127.0.0.1");
- // Connectors by default inherit server's thread pool.
- QueuedThreadPool qtp = new QueuedThreadPool();
- qtp.setMaxThreads(10000);
- qtp.setMaxIdleTimeMs((int) TimeUnit.MILLISECONDS.toMillis(200));
- qtp.setMaxStopTimeMs((int) TimeUnit.MINUTES.toMillis(1));
- server.setThreadPool(qtp);
+ // Enable Low Resources Management
+ LowResourceMonitor lowResources = new LowResourceMonitor(server);
+ lowResources.setLowResourcesIdleTimeout(1500);
+ lowResources.setMaxConnections(10000);
+ server.addBean(lowResources);
server.setConnectors(new Connector[] {connector});
server.setSessionIdManager(new HashSessionIdManager(new Random()));
} else {
- if (server.getThreadPool() == null) {
- // Connectors by default inherit server's thread pool.
- QueuedThreadPool qtp = new QueuedThreadPool();
- qtp.setMaxThreads(10000);
- qtp.setMaxIdleTimeMs((int) TimeUnit.SECONDS.toMillis(5));
- qtp.setMaxStopTimeMs((int) TimeUnit.SECONDS.toMillis(1));
- server.setThreadPool(qtp);
- }
+ ServerConnector connector = new ServerConnector(server, new HttpConnectionFactory());
+ connector.setPort(port);
+
+ QueuedThreadPool qtp = new QueuedThreadPool();
+ qtp.setMaxThreads(10000);
+ qtp.setIdleTimeout((int) TimeUnit.SECONDS.toMillis(5));
+ qtp.setStopTimeout((int) TimeUnit.SECONDS.toMillis(1));
+
+ server = new Server(qtp);
+ server.setStopAtShutdown(stopAtShutdown);
+ server.manage(qtp);
}
// Initialize the servlets
- final ServletContextHandler root = new ServletContextHandler(server,context,ServletContextHandler.SESSIONS);
- root.setHandler(new GzipHandler());
+ final ServletContextHandler root = new ServletContextHandler(server, context, ServletContextHandler.SESSIONS);
+ root.addFilter(GzipFilter.class, "*", EnumSet.of(DispatcherType.REQUEST));
server.addLifeCycleListener(new LifeCycle.Listener() {
@Override
@@ -309,11 +308,11 @@ public class JettySolrRunner {
EnumSet.of(DispatcherType.REQUEST)));
}
}
- dispatchFilter = root.addFilter(SolrDispatchFilter.class, "*", EnumSet.of(DispatcherType.REQUEST) );
for (ServletHolder servletHolder : extraServlets.keySet()) {
String pathSpec = extraServlets.get(servletHolder);
root.addServlet(servletHolder, pathSpec);
}
+ dispatchFilter = root.addFilter(SolrDispatchFilter.class, "*", EnumSet.of(DispatcherType.REQUEST) );
if (solrConfigFilename != null) System.clearProperty("solrconfig");
if (schemaFilename != null) System.clearProperty("schema");
System.clearProperty("solr.solr.home");
@@ -339,7 +338,7 @@ public class JettySolrRunner {
sslcontext.setKeyStorePassword(sslConfig.getKeyStorePassword());
}
if (null != sslConfig.getTrustStore()) {
- sslcontext.setTrustStore(System
+ sslcontext.setTrustStorePath(System
.getProperty(sslConfig.getTrustStore()));
}
if (null != sslConfig.getTrustStorePassword()) {
@@ -359,7 +358,7 @@ public class JettySolrRunner {
(System.getProperty("javax.net.ssl.keyStorePassword"));
}
if (null != System.getProperty("javax.net.ssl.trustStore")) {
- sslcontext.setTrustStore
+ sslcontext.setTrustStorePath
(System.getProperty("javax.net.ssl.trustStore"));
}
if (null != System.getProperty("javax.net.ssl.trustStorePassword")) {
@@ -464,7 +463,7 @@ public class JettySolrRunner {
if (0 == conns.length) {
throw new RuntimeException("Jetty Server has no Connectors");
}
- return (proxyPort != -1) ? proxyPort : conns[0].getLocalPort();
+ return (proxyPort != -1) ? proxyPort : ((ServerConnector) conns[0]).getLocalPort();
}
/**
@@ -489,7 +488,7 @@ public class JettySolrRunner {
}
/**
- * Returns a base URL consisting of the protocal, host, and port for a
+ * Returns a base URL consisting of the protocol, host, and port for a
* Connector in use by the Jetty Server contained in this runner.
*/
public URL getBaseUrl() {
@@ -499,12 +498,12 @@ public class JettySolrRunner {
if (0 == conns.length) {
throw new IllegalStateException("Jetty Server has no Connectors");
}
- Connector c = conns[0];
+ ServerConnector c = (ServerConnector) conns[0];
if (c.getLocalPort() < 0) {
throw new IllegalStateException("Jetty Connector is not open: " +
c.getLocalPort());
}
- protocol = (c instanceof SslConnector) ? "https" : "http";
+ protocol = c.getDefaultProtocol().equals("SSL-http/1.1") ? "https" : "http";
return new URL(protocol, c.getHost(), c.getLocalPort(), context);
} catch (MalformedURLException e) {
@@ -615,6 +614,11 @@ class NoLog implements Logger {
}
@Override
+ public void debug(String s, long l) {
+
+ }
+
+ @Override
public String getName() {
return toString();
}
Modified: lucene/dev/trunk/solr/core/src/test/org/apache/solr/servlet/SolrRequestParserTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/core/src/test/org/apache/solr/servlet/SolrRequestParserTest.java?rev=1649552&r1=1649551&r2=1649552&view=diff
==============================================================================
--- lucene/dev/trunk/solr/core/src/test/org/apache/solr/servlet/SolrRequestParserTest.java (original)
+++ lucene/dev/trunk/solr/core/src/test/org/apache/solr/servlet/SolrRequestParserTest.java Mon Jan 5 15:45:58 2015
@@ -22,7 +22,9 @@ import static org.easymock.EasyMock.crea
import static org.easymock.EasyMock.expect;
import static org.easymock.EasyMock.replay;
+import java.io.BufferedInputStream;
import java.io.ByteArrayInputStream;
+import java.io.IOException;
import java.net.HttpURLConnection;
import java.net.SocketTimeoutException;
import java.net.URL;
@@ -34,6 +36,7 @@ import java.util.List;
import java.util.Map;
import java.util.Vector;
+import javax.servlet.ReadListener;
import javax.servlet.ServletInputStream;
import javax.servlet.http.HttpServletRequest;
@@ -225,10 +228,7 @@ public class SolrRequestParserTest exten
expect(request.getContentType()).andReturn( contentType ).anyTimes();
expect(request.getQueryString()).andReturn(getParams).anyTimes();
expect(request.getContentLength()).andReturn(postBytes.length).anyTimes();
- expect(request.getInputStream()).andReturn(new ServletInputStream() {
- private final ByteArrayInputStream in = new ByteArrayInputStream(postBytes);
- @Override public int read() { return in.read(); }
- });
+ expect(request.getInputStream()).andReturn(new ByteServletInputStream(postBytes));
replay(request);
MultipartRequestParser multipart = new MultipartRequestParser( 2048 );
@@ -243,6 +243,39 @@ public class SolrRequestParserTest exten
assertArrayEquals( "contentType: "+contentType, new String[]{"foo","bar"}, p.getParams("dup") );
}
}
+
+ static class ByteServletInputStream extends ServletInputStream {
+ final BufferedInputStream in;
+ final int len;
+ int readCount = 0;
+
+ public ByteServletInputStream(byte[] data) {
+ this.len = data.length;
+ this.in = new BufferedInputStream(new ByteArrayInputStream(data));
+ }
+
+ @Override
+ public boolean isFinished() {
+ return readCount == len;
+ }
+
+ @Override
+ public boolean isReady() {
+ return true;
+ }
+
+ @Override
+ public void setReadListener(ReadListener readListener) {
+ throw new IllegalStateException("Not supported");
+ }
+
+ @Override
+ public int read() throws IOException {
+ int read = in.read();
+ readCount += read;
+ return read;
+ }
+ }
@Test
public void testStandardParseParamsAndFillStreamsISO88591() throws Exception
@@ -257,10 +290,7 @@ public class SolrRequestParserTest exten
expect(request.getContentType()).andReturn( contentType ).anyTimes();
expect(request.getQueryString()).andReturn(getParams).anyTimes();
expect(request.getContentLength()).andReturn(postBytes.length).anyTimes();
- expect(request.getInputStream()).andReturn(new ServletInputStream() {
- private final ByteArrayInputStream in = new ByteArrayInputStream(postBytes);
- @Override public int read() { return in.read(); }
- });
+ expect(request.getInputStream()).andReturn(new ByteServletInputStream(postBytes));
replay(request);
MultipartRequestParser multipart = new MultipartRequestParser( 2048 );
@@ -292,10 +322,7 @@ public class SolrRequestParserTest exten
// we dont pass a content-length to let the security mechanism limit it:
expect(request.getContentLength()).andReturn(-1).anyTimes();
expect(request.getQueryString()).andReturn(null).anyTimes();
- expect(request.getInputStream()).andReturn(new ServletInputStream() {
- private final ByteArrayInputStream in = new ByteArrayInputStream(large.toString().getBytes(StandardCharsets.US_ASCII));
- @Override public int read() { return in.read(); }
- });
+ expect(request.getInputStream()).andReturn(new ByteServletInputStream(large.toString().getBytes(StandardCharsets.US_ASCII)));
replay(request);
FormDataRequestParser formdata = new FormDataRequestParser( limitKBytes );
@@ -319,6 +346,21 @@ public class SolrRequestParserTest exten
// we emulate Jetty that returns empty stream when parameters were parsed before:
expect(request.getInputStream()).andReturn(new ServletInputStream() {
@Override public int read() { return -1; }
+
+ @Override
+ public boolean isFinished() {
+ return true;
+ }
+
+ @Override
+ public boolean isReady() {
+ return true;
+ }
+
+ @Override
+ public void setReadListener(ReadListener readListener) {
+
+ }
});
replay(request);
Added: lucene/dev/trunk/solr/licenses/javax.servlet-api-3.1.0.jar.sha1
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/licenses/javax.servlet-api-3.1.0.jar.sha1?rev=1649552&view=auto
==============================================================================
--- lucene/dev/trunk/solr/licenses/javax.servlet-api-3.1.0.jar.sha1 (added)
+++ lucene/dev/trunk/solr/licenses/javax.servlet-api-3.1.0.jar.sha1 Mon Jan 5 15:45:58 2015
@@ -0,0 +1 @@
+3cd63d075497751784b2fa84be59432f4905bf7c
Added: lucene/dev/trunk/solr/licenses/jetty-continuation-9.2.6.v20141205.jar.sha1
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/licenses/jetty-continuation-9.2.6.v20141205.jar.sha1?rev=1649552&view=auto
==============================================================================
--- lucene/dev/trunk/solr/licenses/jetty-continuation-9.2.6.v20141205.jar.sha1 (added)
+++ lucene/dev/trunk/solr/licenses/jetty-continuation-9.2.6.v20141205.jar.sha1 Mon Jan 5 15:45:58 2015
@@ -0,0 +1 @@
+74ca2679e461e7e9b5fdffcf9685575a7d5f5c8e
Added: lucene/dev/trunk/solr/licenses/jetty-deploy-9.2.6.v20141205.jar.sha1
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/licenses/jetty-deploy-9.2.6.v20141205.jar.sha1?rev=1649552&view=auto
==============================================================================
--- lucene/dev/trunk/solr/licenses/jetty-deploy-9.2.6.v20141205.jar.sha1 (added)
+++ lucene/dev/trunk/solr/licenses/jetty-deploy-9.2.6.v20141205.jar.sha1 Mon Jan 5 15:45:58 2015
@@ -0,0 +1 @@
+7ad677c1442dc965b5815f4452848b8eecbc5082
Added: lucene/dev/trunk/solr/licenses/jetty-http-9.2.6.v20141205.jar.sha1
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/licenses/jetty-http-9.2.6.v20141205.jar.sha1?rev=1649552&view=auto
==============================================================================
--- lucene/dev/trunk/solr/licenses/jetty-http-9.2.6.v20141205.jar.sha1 (added)
+++ lucene/dev/trunk/solr/licenses/jetty-http-9.2.6.v20141205.jar.sha1 Mon Jan 5 15:45:58 2015
@@ -0,0 +1 @@
+5484771191612c1f5a57466865b7014ff56886ce
Added: lucene/dev/trunk/solr/licenses/jetty-io-9.2.6.v20141205.jar.sha1
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/licenses/jetty-io-9.2.6.v20141205.jar.sha1?rev=1649552&view=auto
==============================================================================
--- lucene/dev/trunk/solr/licenses/jetty-io-9.2.6.v20141205.jar.sha1 (added)
+++ lucene/dev/trunk/solr/licenses/jetty-io-9.2.6.v20141205.jar.sha1 Mon Jan 5 15:45:58 2015
@@ -0,0 +1 @@
+11b84cc7078745fca844bd2fb95c2b4f818eafc2
Added: lucene/dev/trunk/solr/licenses/jetty-jmx-9.2.6.v20141205.jar.sha1
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/licenses/jetty-jmx-9.2.6.v20141205.jar.sha1?rev=1649552&view=auto
==============================================================================
--- lucene/dev/trunk/solr/licenses/jetty-jmx-9.2.6.v20141205.jar.sha1 (added)
+++ lucene/dev/trunk/solr/licenses/jetty-jmx-9.2.6.v20141205.jar.sha1 Mon Jan 5 15:45:58 2015
@@ -0,0 +1 @@
+53ebf8bd8d151c3c7883e3b23eee9f67ecd716e9
Added: lucene/dev/trunk/solr/licenses/jetty-security-9.2.6.v20141205.jar.sha1
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/licenses/jetty-security-9.2.6.v20141205.jar.sha1?rev=1649552&view=auto
==============================================================================
--- lucene/dev/trunk/solr/licenses/jetty-security-9.2.6.v20141205.jar.sha1 (added)
+++ lucene/dev/trunk/solr/licenses/jetty-security-9.2.6.v20141205.jar.sha1 Mon Jan 5 15:45:58 2015
@@ -0,0 +1 @@
+513537c2a4f7d2a44120f4ff5fdc7fc2c8bc9357
Added: lucene/dev/trunk/solr/licenses/jetty-server-9.2.6.v20141205.jar.sha1
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/licenses/jetty-server-9.2.6.v20141205.jar.sha1?rev=1649552&view=auto
==============================================================================
--- lucene/dev/trunk/solr/licenses/jetty-server-9.2.6.v20141205.jar.sha1 (added)
+++ lucene/dev/trunk/solr/licenses/jetty-server-9.2.6.v20141205.jar.sha1 Mon Jan 5 15:45:58 2015
@@ -0,0 +1 @@
+5960eb385ded42360045447185a0510365f811dc
Added: lucene/dev/trunk/solr/licenses/jetty-servlet-9.2.6.v20141205.jar.sha1
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/licenses/jetty-servlet-9.2.6.v20141205.jar.sha1?rev=1649552&view=auto
==============================================================================
--- lucene/dev/trunk/solr/licenses/jetty-servlet-9.2.6.v20141205.jar.sha1 (added)
+++ lucene/dev/trunk/solr/licenses/jetty-servlet-9.2.6.v20141205.jar.sha1 Mon Jan 5 15:45:58 2015
@@ -0,0 +1 @@
+026aa018ef20780e8a900ae7fc95f59884d3095b
Added: lucene/dev/trunk/solr/licenses/jetty-servlets-9.2.6.v20141205.jar.sha1
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/licenses/jetty-servlets-9.2.6.v20141205.jar.sha1?rev=1649552&view=auto
==============================================================================
--- lucene/dev/trunk/solr/licenses/jetty-servlets-9.2.6.v20141205.jar.sha1 (added)
+++ lucene/dev/trunk/solr/licenses/jetty-servlets-9.2.6.v20141205.jar.sha1 Mon Jan 5 15:45:58 2015
@@ -0,0 +1 @@
+0e36f5f1d19c48ad1ae6e65172ee472d0ba8b571
Added: lucene/dev/trunk/solr/licenses/jetty-util-9.2.6.v20141205.jar.sha1
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/licenses/jetty-util-9.2.6.v20141205.jar.sha1?rev=1649552&view=auto
==============================================================================
--- lucene/dev/trunk/solr/licenses/jetty-util-9.2.6.v20141205.jar.sha1 (added)
+++ lucene/dev/trunk/solr/licenses/jetty-util-9.2.6.v20141205.jar.sha1 Mon Jan 5 15:45:58 2015
@@ -0,0 +1 @@
+fdfa0b969d99a2dfb2a46c0ff00251d7e6c7b2bb
Added: lucene/dev/trunk/solr/licenses/jetty-webapp-9.2.6.v20141205.jar.sha1
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/licenses/jetty-webapp-9.2.6.v20141205.jar.sha1?rev=1649552&view=auto
==============================================================================
--- lucene/dev/trunk/solr/licenses/jetty-webapp-9.2.6.v20141205.jar.sha1 (added)
+++ lucene/dev/trunk/solr/licenses/jetty-webapp-9.2.6.v20141205.jar.sha1 Mon Jan 5 15:45:58 2015
@@ -0,0 +1 @@
+68da2c29c6bedac8d502839fea66b91e05077a68
Added: lucene/dev/trunk/solr/licenses/jetty-xml-9.2.6.v20141205.jar.sha1
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/licenses/jetty-xml-9.2.6.v20141205.jar.sha1?rev=1649552&view=auto
==============================================================================
--- lucene/dev/trunk/solr/licenses/jetty-xml-9.2.6.v20141205.jar.sha1 (added)
+++ lucene/dev/trunk/solr/licenses/jetty-xml-9.2.6.v20141205.jar.sha1 Mon Jan 5 15:45:58 2015
@@ -0,0 +1 @@
+2f51a87d2c962257304391aa29e1c0030774c4ac
Added: lucene/dev/trunk/solr/licenses/org.restlet-2.3.0.jar.sha1
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/licenses/org.restlet-2.3.0.jar.sha1?rev=1649552&view=auto
==============================================================================
--- lucene/dev/trunk/solr/licenses/org.restlet-2.3.0.jar.sha1 (added)
+++ lucene/dev/trunk/solr/licenses/org.restlet-2.3.0.jar.sha1 Mon Jan 5 15:45:58 2015
@@ -0,0 +1 @@
+4c5d184e23fa729726668a90dc7338d80c4e7e6f
Added: lucene/dev/trunk/solr/licenses/org.restlet.ext.servlet-2.3.0.jar.sha1
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/licenses/org.restlet.ext.servlet-2.3.0.jar.sha1?rev=1649552&view=auto
==============================================================================
--- lucene/dev/trunk/solr/licenses/org.restlet.ext.servlet-2.3.0.jar.sha1 (added)
+++ lucene/dev/trunk/solr/licenses/org.restlet.ext.servlet-2.3.0.jar.sha1 Mon Jan 5 15:45:58 2015
@@ -0,0 +1 @@
+9303e20d0397c0304342943560c3a1693fd7ce7d
Modified: lucene/dev/trunk/solr/licenses/start.jar.sha1
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/licenses/start.jar.sha1?rev=1649552&r1=1649551&r2=1649552&view=diff
==============================================================================
--- lucene/dev/trunk/solr/licenses/start.jar.sha1 (original)
+++ lucene/dev/trunk/solr/licenses/start.jar.sha1 Mon Jan 5 15:45:58 2015
@@ -1 +1 @@
-8e1a37a8daae3f222d957012f826047497466a56
+6380e0fe5a738cced80ef705dbac3320a8f25edf
Modified: lucene/dev/trunk/solr/server/contexts/solr-jetty-context.xml
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/server/contexts/solr-jetty-context.xml?rev=1649552&r1=1649551&r2=1649552&view=diff
==============================================================================
--- lucene/dev/trunk/solr/server/contexts/solr-jetty-context.xml (original)
+++ lucene/dev/trunk/solr/server/contexts/solr-jetty-context.xml Mon Jan 5 15:45:58 2015
@@ -1,8 +1,8 @@
<?xml version="1.0"?>
-<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "http://www.eclipse.org/jetty/configure.dtd">
+<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "http://www.eclipse.org/jetty/configure_9_0.dtd">
<Configure class="org.eclipse.jetty.webapp.WebAppContext">
- <Set name="contextPath"><SystemProperty name="hostContext" default="/solr"/></Set>
- <Set name="war"><SystemProperty name="jetty.home"/>/webapps/solr.war</Set>
- <Set name="defaultsDescriptor"><SystemProperty name="jetty.home"/>/etc/webdefault.xml</Set>
- <Set name="tempDirectory"><Property name="jetty.home" default="."/>/solr-webapp</Set>
+ <Set name="contextPath"><Property name="hostContext" default="/solr"/></Set>
+ <Set name="war"><Property name="jetty.base"/>/webapps/solr.war</Set>
+ <Set name="defaultsDescriptor"><Property name="jetty.base"/>/etc/webdefault.xml</Set>
+ <Set name="tempDirectory"><Property name="jetty.base" default="."/>/solr-webapp</Set>
</Configure>
Added: lucene/dev/trunk/solr/server/etc/jetty-http.xml
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/server/etc/jetty-http.xml?rev=1649552&view=auto
==============================================================================
--- lucene/dev/trunk/solr/server/etc/jetty-http.xml (added)
+++ lucene/dev/trunk/solr/server/etc/jetty-http.xml Mon Jan 5 15:45:58 2015
@@ -0,0 +1,75 @@
+<?xml version="1.0"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+ -->
+
+<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "http://www.eclipse.org/jetty/configure_9_0.dtd">
+
+<!-- ============================================================= -->
+<!-- Configure the Jetty Server instance with an ID "Server" -->
+<!-- by adding a HTTP connector. -->
+<!-- This configuration must be used in conjunction with jetty.xml -->
+<!-- ============================================================= -->
+<Configure id="Server" class="org.eclipse.jetty.server.Server">
+
+ <!-- =========================================================== -->
+ <!-- Server Thread Pool -->
+ <!-- =========================================================== -->
+ <Get name="ThreadPool">
+ <!-- Default queued blocking threadpool -->
+ <Set name="minThreads"><Property name="jetty.threads.min" /></Set>
+ <Set name="maxThreads"><Property name="jetty.threads.max" /></Set>
+ <Set name="detailedDump">false</Set>
+ <Set name="idleTimeout"><Property name="jetty.threads.idle.timeout" /></Set>
+ </Get>
+
+ <!-- =========================================================== -->
+ <!-- Add a HTTP Connector. -->
+ <!-- Configure an o.e.j.server.ServerConnector with a single -->
+ <!-- HttpConnectionFactory instance using the common httpConfig -->
+ <!-- instance defined in jetty.xml -->
+ <!-- -->
+ <!-- Consult the javadoc of o.e.j.server.ServerConnector and -->
+ <!-- o.e.j.server.HttpConnectionFactory for all configuration -->
+ <!-- that may be set here. -->
+ <!-- =========================================================== -->
+ <Call name="addConnector">
+ <Arg>
+ <New class="org.eclipse.jetty.server.ServerConnector">
+ <Arg name="server"><Ref refid="Server" /></Arg>
+ <Arg name="acceptors" type="int"><Property name="jetty.http.acceptors" default="-1"/></Arg>
+ <Arg name="selectors" type="int"><Property name="jetty.http.selectors" default="-1"/></Arg>
+ <Arg name="factories">
+ <Array type="org.eclipse.jetty.server.ConnectionFactory">
+ <Item>
+ <New class="org.eclipse.jetty.server.HttpConnectionFactory">
+ <Arg name="config">
+ <New id="httpConfig" class="org.eclipse.jetty.server.HttpConfiguration">
+ <Set name="sendServerVersion">false</Set>
+ <Set name="sendDateHeader">false</Set>
+ </New>
+ </Arg>
+ </New>
+ </Item>
+ </Array>
+ </Arg>
+ <Set name="port"><Property name="jetty.port" /></Set>
+ <Set name="host"><Property name="jetty.host" /></Set>
+ </New>
+ </Arg>
+ </Call>
+
+</Configure>
\ No newline at end of file
Added: lucene/dev/trunk/solr/server/etc/jetty-https.xml
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/server/etc/jetty-https.xml?rev=1649552&view=auto
==============================================================================
--- lucene/dev/trunk/solr/server/etc/jetty-https.xml (added)
+++ lucene/dev/trunk/solr/server/etc/jetty-https.xml Mon Jan 5 15:45:58 2015
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+ -->
+
+<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "http://www.eclipse.org/jetty/configure_9_0.dtd">
+
+<!-- ============================================================= -->
+<!-- Configure a HTTPS connector. -->
+<!-- This configuration must be used in conjunction with jetty.xml -->
+<!-- and jetty-ssl.xml. -->
+<!-- ============================================================= -->
+<Configure id="sslConnector" class="org.eclipse.jetty.server.ServerConnector">
+
+ <Call name="addIfAbsentConnectionFactory">
+ <Arg>
+ <New class="org.eclipse.jetty.server.SslConnectionFactory">
+ <Arg name="next">http/1.1</Arg>
+ <Arg name="sslContextFactory"><Ref refid="sslContextFactory"/></Arg>
+ </New>
+ </Arg>
+ </Call>
+
+ <Call name="addConnectionFactory">
+ <Arg>
+ <New class="org.eclipse.jetty.server.HttpConnectionFactory">
+ <Arg name="config"><Ref refid="sslHttpConfig" /></Arg>
+ </New>
+ </Arg>
+ </Call>
+
+</Configure>
\ No newline at end of file
Added: lucene/dev/trunk/solr/server/etc/jetty-ssl.xml
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/server/etc/jetty-ssl.xml?rev=1649552&view=auto
==============================================================================
--- lucene/dev/trunk/solr/server/etc/jetty-ssl.xml (added)
+++ lucene/dev/trunk/solr/server/etc/jetty-ssl.xml Mon Jan 5 15:45:58 2015
@@ -0,0 +1,95 @@
+<?xml version="1.0"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+ -->
+
+<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "http://www.eclipse.org/jetty/configure_9_0.dtd">
+
+<!-- ============================================================= -->
+<!-- Base SSL configuration -->
+<!-- This configuration needs to be used together with 1 or more -->
+<!-- of jetty-https.xml, jetty-spdy.xml and/or jetty-http2.xml -->
+<!-- ============================================================= -->
+<Configure id="Server" class="org.eclipse.jetty.server.Server">
+
+ <!-- =========================================================== -->
+ <!-- Add a SSL Connector with no protocol factories -->
+ <!-- =========================================================== -->
+ <Call name="addConnector">
+ <Arg>
+ <New id="sslConnector" class="org.eclipse.jetty.server.ServerConnector">
+ <Arg name="server"><Ref refid="Server" /></Arg>
+ <Arg name="acceptors" type="int"><Property name="ssl.acceptors" default="-1"/></Arg>
+ <Arg name="selectors" type="int"><Property name="ssl.selectors" default="-1"/></Arg>
+ <Arg name="factories">
+ <Array type="org.eclipse.jetty.server.ConnectionFactory">
+ <!-- uncomment to support proxy protocol
+ <Item>
+ <New class="org.eclipse.jetty.server.ProxyConnectionFactory"/>
+ </Item>-->
+ </Array>
+ </Arg>
+
+ <Set name="host"><Property name="jetty.host" /></Set>
+ <Set name="port"><Property name="ssl.port" default="443" /></Set>
+ <Set name="idleTimeout"><Property name="ssl.timeout" default="30000"/></Set>
+ <Set name="soLingerTime"><Property name="ssl.soLingerTime" default="-1"/></Set>
+ <Set name="acceptorPriorityDelta"><Property name="ssl.acceptorPriorityDelta" default="0"/></Set>
+ <Set name="selectorPriorityDelta"><Property name="ssl.selectorPriorityDelta" default="0"/></Set>
+ <Set name="acceptQueueSize"><Property name="ssl.acceptQueueSize" default="0"/></Set>
+ </New>
+ </Arg>
+ </Call>
+
+ <!-- ============================================================= -->
+ <!-- Create a TLS (SSL) Context Factory for later reuse -->
+ <!-- ============================================================= -->
+ <New id="sslContextFactory" class="org.eclipse.jetty.util.ssl.SslContextFactory">
+ <Set name="KeyStorePath"><Property name="jetty.base" default="." />/<Property name="jetty.keystore" default="etc/keystore"/></Set>
+ <Set name="KeyStorePassword"><Property name="jetty.keystore.password" default="OBF:1vny1zlo1x8e1vnw1vn61x8g1zlu1vn4"/></Set>
+ <Set name="KeyManagerPassword"><Property name="jetty.keymanager.password" default="OBF:1u2u1wml1z7s1z7a1wnl1u2g"/></Set>
+ <Set name="TrustStorePath"><Property name="jetty.base" default="." />/<Property name="jetty.truststore" default="etc/keystore"/></Set>
+ <Set name="TrustStorePassword"><Property name="jetty.truststore.password" default="OBF:1vny1zlo1x8e1vnw1vn61x8g1zlu1vn4"/></Set>
+ <Set name="EndpointIdentificationAlgorithm"></Set>
+ <Set name="NeedClientAuth"><Property name="jetty.ssl.needClientAuth" default="false"/></Set>
+ <Set name="WantClientAuth"><Property name="jetty.ssl.wantClientAuth" default="false"/></Set>
+ <Set name="ExcludeCipherSuites">
+ <Array type="String">
+ <Item>SSL_RSA_WITH_DES_CBC_SHA</Item>
+ <Item>SSL_DHE_RSA_WITH_DES_CBC_SHA</Item>
+ <Item>SSL_DHE_DSS_WITH_DES_CBC_SHA</Item>
+ <Item>SSL_RSA_EXPORT_WITH_RC4_40_MD5</Item>
+ <Item>SSL_RSA_EXPORT_WITH_DES40_CBC_SHA</Item>
+ <Item>SSL_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA</Item>
+ <Item>SSL_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA</Item>
+ </Array>
+ </Set>
+ </New>
+
+ <!-- =========================================================== -->
+ <!-- Create a TLS specific HttpConfiguration based on the -->
+ <!-- common HttpConfiguration defined in jetty.xml -->
+ <!-- Add a SecureRequestCustomizer to extract certificate and -->
+ <!-- session information -->
+ <!-- =========================================================== -->
+ <New id="sslHttpConfig" class="org.eclipse.jetty.server.HttpConfiguration">
+ <Arg><Ref refid="httpConfig"/></Arg>
+ <Call name="addCustomizer">
+ <Arg><New class="org.eclipse.jetty.server.SecureRequestCustomizer"/></Arg>
+ </Call>
+ </New>
+
+</Configure>
\ No newline at end of file
Modified: lucene/dev/trunk/solr/server/etc/jetty.xml
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/server/etc/jetty.xml?rev=1649552&r1=1649551&r2=1649552&view=diff
==============================================================================
--- lucene/dev/trunk/solr/server/etc/jetty.xml (original)
+++ lucene/dev/trunk/solr/server/etc/jetty.xml Mon Jan 5 15:45:58 2015
@@ -1,5 +1,5 @@
<?xml version="1.0"?>
-<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "http://www.eclipse.org/jetty/configure.dtd">
+<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "http://www.eclipse.org/jetty/configure_9_0.dtd">
<!-- =============================================================== -->
<!-- Configure the Jetty Server -->
@@ -12,54 +12,6 @@
<Configure id="Server" class="org.eclipse.jetty.server.Server">
- <!-- =========================================================== -->
- <!-- Server Thread Pool -->
- <!-- =========================================================== -->
- <Set name="ThreadPool">
- <!-- Default queued blocking threadpool -->
- <New class="org.eclipse.jetty.util.thread.QueuedThreadPool">
- <Set name="minThreads">10</Set>
- <Set name="maxThreads">10000</Set>
- <Set name="detailedDump">false</Set>
- </New>
- </Set>
-
- <!-- =========================================================== -->
- <!-- Set connectors -->
- <!-- =========================================================== -->
-
- <!--
- <Call name="addConnector">
- <Arg>
- <New class="org.eclipse.jetty.server.nio.SelectChannelConnector">
- <Set name="host"><SystemProperty name="jetty.host" /></Set>
- <Set name="port"><SystemProperty name="jetty.port" default="8983"/></Set>
- <Set name="maxIdleTime">50000</Set>
- <Set name="Acceptors">2</Set>
- <Set name="statsOn">false</Set>
- <Set name="confidentialPort">8443</Set>
- <Set name="lowResourcesConnections">5000</Set>
- <Set name="lowResourcesMaxIdleTime">5000</Set>
- </New>
- </Arg>
- </Call>
- -->
-
- <!-- This connector is currently being used for Solr because it
- showed better performance than nio.SelectChannelConnector
- for typical Solr requests. -->
- <Call name="addConnector">
- <Arg>
- <New class="org.eclipse.jetty.server.bio.SocketConnector">
- <Set name="host"><SystemProperty name="jetty.host" /></Set>
- <Set name="port"><SystemProperty name="jetty.port" default="8983"/></Set>
- <Set name="maxIdleTime">50000</Set>
- <Set name="lowResourceMaxIdleTime">1500</Set>
- <Set name="statsOn">false</Set>
- </New>
- </Arg>
- </Call>
-
<!-- if the connector below is uncommented, then jetty will also accept SSL
connections on port 8984, using a self signed certificate and can
optionally require the client to authenticate with a certificate.
@@ -121,7 +73,7 @@
<!-- =========================================================== -->
<!-- Configure Request Log -->
<!-- =========================================================== -->
- <!--
+ <!--
<Ref id="Handlers">
<Call name="addHandler">
<Arg>
@@ -149,26 +101,28 @@
<!-- extra options -->
<!-- =========================================================== -->
<Set name="stopAtShutdown">true</Set>
- <Set name="sendServerVersion">false</Set>
- <Set name="sendDateHeader">false</Set>
- <Set name="gracefulShutdown">1000</Set>
<Set name="dumpAfterStart">false</Set>
<Set name="dumpBeforeStop">false</Set>
-
-
-
<Call name="addBean">
<Arg>
<New id="DeploymentManager" class="org.eclipse.jetty.deploy.DeploymentManager">
<Set name="contexts">
- <Ref id="Contexts" />
+ <Ref refid="Contexts" />
</Set>
<Call name="setContextAttribute">
<Arg>org.eclipse.jetty.server.webapp.ContainerIncludeJarPattern</Arg>
<Arg>.*/servlet-api-[^/]*\.jar$</Arg>
</Call>
-
+
+ <Call name="addAppProvider">
+ <Arg>
+ <New class="org.eclipse.jetty.deploy.providers.WebAppProvider">
+ <Set name="monitoredDirName"><Property name="jetty.home" default="."/>/contexts</Set>
+ <Set name="scanInterval">0</Set>
+ </New>
+ </Arg>
+ </Call>
<!-- Add a customize step to the deployment lifecycle -->
<!-- uncomment and replace DebugBinding with your extended AppLifeCycle.Binding class
@@ -190,15 +144,4 @@
</Arg>
</Call>
- <Ref id="DeploymentManager">
- <Call name="addAppProvider">
- <Arg>
- <New class="org.eclipse.jetty.deploy.providers.ContextProvider">
- <Set name="monitoredDirName"><SystemProperty name="jetty.home" default="."/>/contexts</Set>
- <Set name="scanInterval">0</Set>
- </New>
- </Arg>
- </Call>
- </Ref>
-
</Configure>
Modified: lucene/dev/trunk/solr/server/ivy.xml
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/server/ivy.xml?rev=1649552&r1=1649551&r2=1649552&view=diff
==============================================================================
--- lucene/dev/trunk/solr/server/ivy.xml (original)
+++ lucene/dev/trunk/solr/server/ivy.xml Mon Jan 5 15:45:58 2015
@@ -40,10 +40,13 @@
<dependency org="org.eclipse.jetty" name="jetty-security" rev="${/org.eclipse.jetty/jetty-security}" conf="jetty"/>
<dependency org="org.eclipse.jetty" name="jetty-server" rev="${/org.eclipse.jetty/jetty-server}" conf="jetty"/>
<dependency org="org.eclipse.jetty" name="jetty-servlet" rev="${/org.eclipse.jetty/jetty-servlet}" conf="jetty"/>
+ <dependency org="org.eclipse.jetty" name="jetty-servlets" rev="${/org.eclipse.jetty/jetty-servlets}" conf="jetty"/>
<dependency org="org.eclipse.jetty" name="jetty-util" rev="${/org.eclipse.jetty/jetty-util}" conf="jetty"/>
<dependency org="org.eclipse.jetty" name="jetty-webapp" rev="${/org.eclipse.jetty/jetty-webapp}" conf="jetty"/>
<dependency org="org.eclipse.jetty" name="jetty-xml" rev="${/org.eclipse.jetty/jetty-xml}" conf="jetty"/>
+ <dependency org="javax.servlet" name="javax.servlet-api" rev="${/javax.servlet/javax.servlet-api}" conf="jetty"/>
+
<dependency org="org.eclipse.jetty" name="jetty-start" rev="${/org.eclipse.jetty/jetty-start}" conf="start"/>
<dependency org="org.eclipse.jetty.orbit" name="javax.servlet" rev="${/org.eclipse.jetty.orbit/javax.servlet}" conf="servlet">
Added: lucene/dev/trunk/solr/server/modules/http.mod
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/server/modules/http.mod?rev=1649552&view=auto
==============================================================================
--- lucene/dev/trunk/solr/server/modules/http.mod (added)
+++ lucene/dev/trunk/solr/server/modules/http.mod Mon Jan 5 15:45:58 2015
@@ -0,0 +1,26 @@
+#
+# Jetty HTTP Connector
+#
+
+[depend]
+server
+
+[xml]
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+ -->
+
+etc/jetty-http.xml
\ No newline at end of file
Added: lucene/dev/trunk/solr/server/modules/https.mod
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/server/modules/https.mod?rev=1649552&view=auto
==============================================================================
--- lucene/dev/trunk/solr/server/modules/https.mod (added)
+++ lucene/dev/trunk/solr/server/modules/https.mod Mon Jan 5 15:45:58 2015
@@ -0,0 +1,36 @@
+#
+# Jetty HTTPS Connector
+#
+
+[depend]
+ssl
+
+[xml]
+etc/jetty-https.xml
+
+[ini-template]
+## HTTPS Configuration
+# HTTP port to listen on
+https.port=8443
+# HTTPS idle timeout in milliseconds
+https.timeout=30000
+# HTTPS Socket.soLingerTime in seconds. (-1 to disable)
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+ -->
+
+https.soLingerTime=-1
+
Added: lucene/dev/trunk/solr/server/modules/server.mod
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/server/modules/server.mod?rev=1649552&view=auto
==============================================================================
--- lucene/dev/trunk/solr/server/modules/server.mod (added)
+++ lucene/dev/trunk/solr/server/modules/server.mod Mon Jan 5 15:45:58 2015
@@ -0,0 +1,33 @@
+#
+# Base Server Module
+#
+
+[optional]
+jvm
+ext
+resources
+
+[lib]
+lib/*.jar
+lib/ext/*.jar
+resources/
+
+[xml]
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+ -->
+
+etc/jetty.xml
\ No newline at end of file
Added: lucene/dev/trunk/solr/server/modules/ssl.mod
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/server/modules/ssl.mod?rev=1649552&view=auto
==============================================================================
--- lucene/dev/trunk/solr/server/modules/ssl.mod (added)
+++ lucene/dev/trunk/solr/server/modules/ssl.mod Mon Jan 5 15:45:58 2015
@@ -0,0 +1,57 @@
+#
+# SSL Keystore module
+#
+
+[depend]
+server
+
+[xml]
+etc/jetty-ssl.xml
+
+[files]
+http://git.eclipse.org/c/jetty/org.eclipse.jetty.project.git/plain/jetty-server/src/main/config/etc/keystore|etc/keystore
+
+[ini-template]
+### SSL Keystore Configuration
+# define the port to use for secure redirection
+jetty.secure.port=8443
+
+## Setup a demonstration keystore and truststore
+jetty.keystore=etc/keystore
+jetty.truststore=etc/keystore
+
+## Set the demonstration passwords.
+## Note that OBF passwords are not secure, just protected from casual observation
+## See http://www.eclipse.org/jetty/documentation/current/configuring-security-secure-passwords.html
+jetty.keystore.password=OBF:1vny1zlo1x8e1vnw1vn61x8g1zlu1vn4
+jetty.keymanager.password=OBF:1u2u1wml1z7s1z7a1wnl1u2g
+jetty.truststore.password=OBF:1vny1zlo1x8e1vnw1vn61x8g1zlu1vn4
+
+### Set the client auth behavior
+## Set to true if client certificate authentication is required
+# jetty.ssl.needClientAuth=true
+## Set to true if client certificate authentication is desired
+# jetty.ssl.wantClientAuth=true
+
+## Parameters to control the number and priority of acceptors and selectors
+# ssl.selectors=1
+# ssl.acceptors=1
+# ssl.selectorPriorityDelta=0
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+ -->
+
+ssl.acceptorPriorityDelta=0
Added: lucene/dev/trunk/solr/server/resources/jetty-logging.properties
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/server/resources/jetty-logging.properties?rev=1649552&view=auto
==============================================================================
--- lucene/dev/trunk/solr/server/resources/jetty-logging.properties (added)
+++ lucene/dev/trunk/solr/server/resources/jetty-logging.properties Mon Jan 5 15:45:58 2015
@@ -0,0 +1,18 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+org.eclipse.jetty.util.log.class=org.eclipse.jetty.util.log.Slf4jLog
\ No newline at end of file
Added: lucene/dev/trunk/solr/server/start.ini
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/server/start.ini?rev=1649552&view=auto
==============================================================================
--- lucene/dev/trunk/solr/server/start.ini (added)
+++ lucene/dev/trunk/solr/server/start.ini Mon Jan 5 15:45:58 2015
@@ -0,0 +1,11 @@
+--module=http
+
+jetty.port=8983
+
+jetty.threads.min=10
+jetty.threads.max=10000
+jetty.threads.idle.timeout=50000
+
+# jetty.http.acceptors=1
+# jetty.http.selectors=1
+
Modified: lucene/dev/trunk/solr/solrj/src/test/org/apache/solr/client/solrj/StartSolrJetty.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/solrj/src/test/org/apache/solr/client/solrj/StartSolrJetty.java?rev=1649552&r1=1649551&r2=1649552&view=diff
==============================================================================
--- lucene/dev/trunk/solr/solrj/src/test/org/apache/solr/client/solrj/StartSolrJetty.java (original)
+++ lucene/dev/trunk/solr/solrj/src/test/org/apache/solr/client/solrj/StartSolrJetty.java Mon Jan 5 15:45:58 2015
@@ -18,8 +18,9 @@
package org.apache.solr.client.solrj;
import org.eclipse.jetty.server.Connector;
+import org.eclipse.jetty.server.HttpConnectionFactory;
import org.eclipse.jetty.server.Server;
-import org.eclipse.jetty.server.bio.SocketConnector;
+import org.eclipse.jetty.server.ServerConnector;
import org.eclipse.jetty.webapp.WebAppContext;
/**
@@ -32,9 +33,9 @@ public class StartSolrJetty
//System.setProperty("solr.solr.home", "../../../example/solr");
Server server = new Server();
- SocketConnector connector = new SocketConnector();
+ ServerConnector connector = new ServerConnector(server, new HttpConnectionFactory());
// Set some timeout options to make debugging easier.
- connector.setMaxIdleTime(1000 * 60 * 60);
+ connector.setIdleTimeout(1000 * 60 * 60);
connector.setSoLingerTime(-1);
connector.setPort(8983);
server.setConnectors(new Connector[] { connector });
Modified: lucene/dev/trunk/solr/solrj/src/test/org/apache/solr/client/solrj/embedded/JettyWebappTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/solrj/src/test/org/apache/solr/client/solrj/embedded/JettyWebappTest.java?rev=1649552&r1=1649551&r2=1649552&view=diff
==============================================================================
--- lucene/dev/trunk/solr/solrj/src/test/org/apache/solr/client/solrj/embedded/JettyWebappTest.java (original)
+++ lucene/dev/trunk/solr/solrj/src/test/org/apache/solr/client/solrj/embedded/JettyWebappTest.java Mon Jan 5 15:45:58 2015
@@ -28,8 +28,9 @@ import org.apache.solr.SolrJettyTestBase
import org.apache.solr.SolrTestCaseJ4;
import org.apache.solr.util.ExternalPaths;
import org.eclipse.jetty.server.Connector;
+import org.eclipse.jetty.server.HttpConnectionFactory;
import org.eclipse.jetty.server.Server;
-import org.eclipse.jetty.server.bio.SocketConnector;
+import org.eclipse.jetty.server.ServerConnector;
import org.eclipse.jetty.server.session.HashSessionIdManager;
import org.eclipse.jetty.webapp.WebAppContext;
import org.junit.Rule;
@@ -71,8 +72,8 @@ public class JettyWebappTest extends Sol
server.setSessionIdManager(new HashSessionIdManager(new Random(random().nextLong())));
new WebAppContext(server, path, context );
- SocketConnector connector = new SocketConnector();
- connector.setMaxIdleTime(1000 * 60 * 60);
+ ServerConnector connector = new ServerConnector(server, new HttpConnectionFactory());
+ connector.setIdleTimeout(1000 * 60 * 60);
connector.setSoLingerTime(-1);
connector.setPort(0);
server.setConnectors(new Connector[]{connector});