Author: hossman
Date: Thu Apr 10 22:22:54 2008
New Revision: 647048
URL: http://svn.apache.org/viewvc?rev=647048&view=rev
Log:
SOLR-533: Fixed tests so they don't use hardcoded port numbers
Modified:
lucene/solr/trunk/CHANGES.txt
lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/embedded/JettySolrRunner.java
lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/JettyWebappTest.java
lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/LargeVolumeJettyTest.java
lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/MultiCoreExampleJettyTest.java
lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/SolrExampleJettyTest.java
lucene/solr/trunk/src/test/org/apache/solr/TestDistributedSearch.java
lucene/solr/trunk/src/test/org/apache/solr/servlet/CacheHeaderTestBase.java
Modified: lucene/solr/trunk/CHANGES.txt
URL:
http://svn.apache.org/viewvc/lucene/solr/trunk/CHANGES.txt?rev=647048&r1=647047&r2=647048&view=diff
==============================================================================
--- lucene/solr/trunk/CHANGES.txt (original)
+++ lucene/solr/trunk/CHANGES.txt Thu Apr 10 22:22:54 2008
@@ -333,6 +333,9 @@
23. SOLR-528: Better error message when defaultSearchField is bogus or not
indexed. (Lars Kotthoff via hossman)
+
+24. SOLR-533: Fixed tests so they don't use hardcoded port numbers.
+ (hossman)
Other Changes
1. SOLR-135: Moved common classes to org.apache.solr.common and altered the
Modified:
lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/embedded/JettySolrRunner.java
URL:
http://svn.apache.org/viewvc/lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/embedded/JettySolrRunner.java?rev=647048&r1=647047&r2=647048&view=diff
==============================================================================
---
lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/embedded/JettySolrRunner.java
(original)
+++
lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/embedded/JettySolrRunner.java
Thu Apr 10 22:22:54 2008
@@ -26,6 +26,7 @@
import org.apache.solr.servlet.SolrDispatchFilter;
import org.mortbay.jetty.Handler;
import org.mortbay.jetty.Server;
+import org.mortbay.jetty.Connector;
import org.mortbay.jetty.servlet.Context;
import org.mortbay.jetty.servlet.FilterHolder;
import org.mortbay.log.Logger;
@@ -96,6 +97,18 @@
server.stop();
server.join();
}
+ }
+
+ /**
+ * Returns the Local Port of the first Connector found for the jetty Server.
+ * @exception RuntimeException if there is no Connector
+ */
+ public int getLocalPort() {
+ Connector[] conns = server.getConnectors();
+ if (0 == conns.length) {
+ throw new RuntimeException("Jetty Server has no Connectors");
+ }
+ return conns[0].getLocalPort();
}
//--------------------------------------------------------------
Modified:
lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/JettyWebappTest.java
URL:
http://svn.apache.org/viewvc/lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/JettyWebappTest.java?rev=647048&r1=647047&r2=647048&view=diff
==============================================================================
---
lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/JettyWebappTest.java
(original)
+++
lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/JettyWebappTest.java
Thu Apr 10 22:22:54 2008
@@ -33,7 +33,7 @@
*/
public class JettyWebappTest extends TestCase
{
- static final int port = 8985; // not 8983
+ int port = 0;
static final String context = "/test";
Server server;
@@ -50,11 +50,12 @@
SocketConnector connector = new SocketConnector();
connector.setMaxIdleTime(1000 * 60 * 60);
connector.setSoLingerTime(-1);
- connector.setPort(port);
+ connector.setPort(0);
server.setConnectors(new Connector[]{connector});
server.setStopAtShutdown( true );
server.start();
+ port = connector.getLocalPort();
}
@Override
Modified:
lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/LargeVolumeJettyTest.java
URL:
http://svn.apache.org/viewvc/lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/LargeVolumeJettyTest.java?rev=647048&r1=647047&r2=647048&view=diff
==============================================================================
---
lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/LargeVolumeJettyTest.java
(original)
+++
lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/LargeVolumeJettyTest.java
Thu Apr 10 22:22:54 2008
@@ -30,7 +30,7 @@
SolrServer server;
JettySolrRunner jetty;
- static final int port = 8984; // not 8983
+ int port = 0;
static final String context = "/example";
@@ -38,8 +38,9 @@
{
super.setUp();
- jetty = new JettySolrRunner( context, port );
+ jetty = new JettySolrRunner( context, 0 );
jetty.start();
+ port = jetty.getLocalPort();
server = this.createNewSolrServer();
}
Modified:
lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/MultiCoreExampleJettyTest.java
URL:
http://svn.apache.org/viewvc/lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/MultiCoreExampleJettyTest.java?rev=647048&r1=647047&r2=647048&view=diff
==============================================================================
---
lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/MultiCoreExampleJettyTest.java
(original)
+++
lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/MultiCoreExampleJettyTest.java
Thu Apr 10 22:22:54 2008
@@ -33,15 +33,16 @@
JettySolrRunner jetty;
- static final int port = 8984; // not 8983
+ int port = 0;
static final String context = "/example";
@Override public void setUp() throws Exception
{
super.setUp();
- jetty = new JettySolrRunner( context, port );
+ jetty = new JettySolrRunner( context, 0 );
jetty.start();
+ port = jetty.getLocalPort();
}
Modified:
lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/SolrExampleJettyTest.java
URL:
http://svn.apache.org/viewvc/lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/SolrExampleJettyTest.java?rev=647048&r1=647047&r2=647048&view=diff
==============================================================================
---
lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/SolrExampleJettyTest.java
(original)
+++
lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/SolrExampleJettyTest.java
Thu Apr 10 22:22:54 2008
@@ -36,16 +36,17 @@
SolrServer server;
JettySolrRunner jetty;
- static final int port = 8984; // not 8983
+ int port = 0;
static final String context = "/example";
@Override public void setUp() throws Exception
{
super.setUp();
- jetty = new JettySolrRunner( context, port );
+ jetty = new JettySolrRunner( context, 0 );
jetty.start();
-
+ port = jetty.getLocalPort();
+ System.out.println("Assigned Port#" + port);
server = this.createNewSolrServer();
}
Modified: lucene/solr/trunk/src/test/org/apache/solr/TestDistributedSearch.java
URL:
http://svn.apache.org/viewvc/lucene/solr/trunk/src/test/org/apache/solr/TestDistributedSearch.java?rev=647048&r1=647047&r2=647048&view=diff
==============================================================================
--- lucene/solr/trunk/src/test/org/apache/solr/TestDistributedSearch.java
(original)
+++ lucene/solr/trunk/src/test/org/apache/solr/TestDistributedSearch.java Thu
Apr 10 22:22:54 2008
@@ -52,13 +52,11 @@
Random r = new Random(0);
File testDir;
- int controlPort = 8985;
SolrServer controlClient;
JettySolrRunner controlJetty;
- int[] ports = new int[] {7574, 7576};
- List<SolrServer> clients = new ArrayList<SolrServer>();
- List<JettySolrRunner> jettys = new ArrayList<JettySolrRunner>();
+ private List<SolrServer> clients = new ArrayList<SolrServer>();
+ private List<JettySolrRunner> jettys = new ArrayList<JettySolrRunner>();
String context = "/solr";
String shards;
@@ -88,16 +86,17 @@
}
- private void createServers() throws Exception {
- controlJetty = createJetty(controlPort);
- controlClient = createNewSolrServer(controlPort);
+ private void createServers(int numShards) throws Exception {
+ controlJetty = createJetty("control");
+ controlClient = createNewSolrServer(controlJetty.getLocalPort());
StringBuilder sb = new StringBuilder();
- for (int port : ports) {
+ for (int i = 1; i <= numShards; i++) {
if (sb.length()>0) sb.append(',');
- sb.append("localhost:"+port+context);
- jettys.add(createJetty(port));
- clients.add(createNewSolrServer(port));
+ JettySolrRunner j = createJetty("shard"+i);
+ jettys.add(j);
+ clients.add(createNewSolrServer(j.getLocalPort()));
+ sb.append("localhost:"+j.getLocalPort()+context);
}
shards = sb.toString();
@@ -110,12 +109,13 @@
jettys.clear();
}
- private JettySolrRunner createJetty(int port) throws Exception {
- File subDir = new File(testDir, ""+port);
+ private JettySolrRunner createJetty(String dataDirName) throws Exception {
+ File subDir = new File(testDir, dataDirName);
subDir.mkdirs();
System.setProperty("solr.data.dir", subDir.toString());
+
+ JettySolrRunner jetty = new JettySolrRunner("/solr", 0);
- JettySolrRunner jetty = new JettySolrRunner("/solr", port);
jetty.start();
return jetty;
}
@@ -415,16 +415,12 @@
public void testDistribSearch() throws Exception {
for (int nServers=1; nServers<4; nServers++) {
- ports = new int[nServers];
- for (int i=0; i<nServers; i++) {
- ports[i] = 7574 + i*2;
- }
+ createServers(nServers);
doTest();
}
}
public void doTest() throws Exception {
- createServers();
del("*:*");
index(id,1, i1, 100,t1,"now is the time for all good men");
index(id,2, i1, 50 ,t1,"to come to the aid of their country.");
Modified:
lucene/solr/trunk/src/test/org/apache/solr/servlet/CacheHeaderTestBase.java
URL:
http://svn.apache.org/viewvc/lucene/solr/trunk/src/test/org/apache/solr/servlet/CacheHeaderTestBase.java?rev=647048&r1=647047&r2=647048&view=diff
==============================================================================
--- lucene/solr/trunk/src/test/org/apache/solr/servlet/CacheHeaderTestBase.java
(original)
+++ lucene/solr/trunk/src/test/org/apache/solr/servlet/CacheHeaderTestBase.java
Thu Apr 10 22:22:54 2008
@@ -38,7 +38,7 @@
JettySolrRunner jetty;
- static final int port = 8985; // not 8983
+ int port = 0;
static final String context = "/example";
@@ -46,8 +46,9 @@
public void setUp() throws Exception {
super.setUp();
- jetty = new JettySolrRunner(context, port, getSolrConfigFilename());
+ jetty = new JettySolrRunner(context, 0, getSolrConfigFilename());
jetty.start();
+ port = jetty.getLocalPort();
server = this.createNewSolrServer();
}