You are viewing a plain text version of this content. The canonical link for it is here.
Posted to solr-commits@lucene.apache.org by ry...@apache.org on 2008/02/03 01:15:35 UTC
svn commit: r617933 - in /lucene/solr/trunk/client/java/solrj:
src/org/apache/solr/client/solrj/ src/org/apache/solr/client/solrj/embedded/
src/org/apache/solr/client/solrj/impl/
src/org/apache/solr/client/solrj/request/ test/org/apache/solr/client/sol...
Author: ryan
Date: Sat Feb 2 16:15:33 2008
New Revision: 617933
URL: http://svn.apache.org/viewvc?rev=617933&view=rev
Log:
SOLR-467 -- remove "core" options from solrj
Modified:
lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/SolrRequest.java
lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/SolrServer.java
lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/embedded/EmbeddedSolrServer.java
lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/impl/CommonsHttpSolrServer.java
lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/request/MultiCoreRequest.java
lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/MultiCoreExampleTestBase.java
lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/MultiCoreEmbeddedTest.java
lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/MultiCoreExampleJettyTest.java
Modified: lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/SolrRequest.java
URL: http://svn.apache.org/viewvc/lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/SolrRequest.java?rev=617933&r1=617932&r2=617933&view=diff
==============================================================================
--- lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/SolrRequest.java (original)
+++ lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/SolrRequest.java Sat Feb 2 16:15:33 2008
@@ -38,7 +38,6 @@
private METHOD method = METHOD.GET;
private String path = null;
- private String core = null;
//---------------------------------------------------------
//---------------------------------------------------------
@@ -65,15 +64,6 @@
public void setPath(String path) {
this.path = path;
}
-
- public String getCore() {
- return core;
- }
-
- public void setCore(String core) {
- this.core = core;
- }
-
public abstract SolrParams getParams();
public abstract Collection<ContentStream> getContentStreams() throws IOException;
Modified: lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/SolrServer.java
URL: http://svn.apache.org/viewvc/lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/SolrServer.java?rev=617933&r1=617932&r2=617933&view=diff
==============================================================================
--- lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/SolrServer.java (original)
+++ lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/SolrServer.java Sat Feb 2 16:15:33 2008
@@ -36,8 +36,6 @@
*/
public abstract class SolrServer
{
- protected String defaultCore = null;
-
public UpdateResponse add(Collection<SolrInputDocument> docs, boolean overwrite ) throws SolrServerException, IOException {
UpdateRequest req = new UpdateRequest();
req.add(docs);
@@ -96,14 +94,6 @@
public QueryResponse query(SolrParams params) throws SolrServerException {
return new QueryRequest( params ).process( this );
- }
-
- public String getDefaultCore() {
- return defaultCore;
- }
-
- public void setDefaultCore(String defaultCore) {
- this.defaultCore = defaultCore;
}
/**
Modified: lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/embedded/EmbeddedSolrServer.java
URL: http://svn.apache.org/viewvc/lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/embedded/EmbeddedSolrServer.java?rev=617933&r1=617932&r2=617933&view=diff
==============================================================================
--- lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/embedded/EmbeddedSolrServer.java (original)
+++ lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/embedded/EmbeddedSolrServer.java Sat Feb 2 16:15:33 2008
@@ -56,22 +56,24 @@
protected final SolrCore core;
protected final SolrRequestParsers parser;
- protected boolean useMultiCore;
+ protected final String coreName; // use MultiCore registry
public EmbeddedSolrServer( SolrCore core )
{
this.core = core;
- this.useMultiCore = false;
+ this.coreName = null;
this.parser = init();
}
- public EmbeddedSolrServer()
+ public EmbeddedSolrServer( String coreName )
{
- this( null );
- if( MultiCore.getRegistry().getDefaultCore() == null ) {
- throw new RuntimeException( "Must initialize multicore if you want to use this" );
+ this.core = null;
+ this.coreName = coreName;
+ SolrCore c = MultiCore.getRegistry().getCore( coreName );
+ if( c == null ) {
+ throw new RuntimeException( "Unknown core: "+coreName );
}
- this.useMultiCore = true;
+ this.parser = init();
}
private SolrRequestParsers init()
@@ -94,32 +96,13 @@
}
// Check for multicore action
- SolrCore core = this.core;
MultiCore multicore = MultiCore.getRegistry();
- if( useMultiCore ) {
- String c = getDefaultCore();
- if( request.getCore() != null ) {
- c = request.getCore();
- }
- if( c != null ) {
- if( !multicore.isEnabled() ) {
- throw new SolrException( SolrException.ErrorCode.SERVER_ERROR,
- "multicore access is not enabled" );
- }
- if( c.length() > 0 ) {
- core = multicore.getCore( c );
- }
- else {
- core = multicore.getDefaultCore();
- }
- if( core == null ) {
- throw new SolrException( SolrException.ErrorCode.BAD_REQUEST,
- "Unknown core: "+c );
- }
- }
- else {
- throw new SolrException( SolrException.ErrorCode.BAD_REQUEST,
- "missing core" );
+ SolrCore core = this.core;
+ if( core == null ) {
+ core = multicore.getCore( coreName );
+ if( core == null ) {
+ throw new SolrException( SolrException.ErrorCode.SERVER_ERROR,
+ "Unknown core: "+coreName );
}
}
@@ -143,7 +126,7 @@
}
// Perhaps the path is to manage the cores
if( handler == null &&
- useMultiCore &&
+ coreName != null &&
path.equals( multicore.getAdminPath() ) &&
multicore.isEnabled() ) {
handler = multicore.getMultiCoreHandler();
Modified: lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/impl/CommonsHttpSolrServer.java
URL: http://svn.apache.org/viewvc/lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/impl/CommonsHttpSolrServer.java?rev=617933&r1=617932&r2=617933&view=diff
==============================================================================
--- lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/impl/CommonsHttpSolrServer.java (original)
+++ lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/impl/CommonsHttpSolrServer.java Sat Feb 2 16:15:33 2008
@@ -142,16 +142,7 @@
if( path == null || !path.startsWith( "/" ) ) {
path = "/select";
}
-
- // modify the path for multicore access
- String core = getDefaultCore();
- if( request.getCore() != null ) {
- core= request.getCore();
- }
- if( core != null && core.length() > 0 ) {
- path = "/"+core+path;
- }
-
+
if( params == null ) {
params = new ModifiableSolrParams();
}
Modified: lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/request/MultiCoreRequest.java
URL: http://svn.apache.org/viewvc/lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/request/MultiCoreRequest.java?rev=617933&r1=617932&r2=617933&view=diff
==============================================================================
--- lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/request/MultiCoreRequest.java (original)
+++ lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/request/MultiCoreRequest.java Sat Feb 2 16:15:33 2008
@@ -54,18 +54,6 @@
{
this.core = v;
}
-
- @Override
- public final void setCore( String v )
- {
- throw new UnsupportedOperationException( "MultiCoreRequest does not use a core.");
- }
-
- @Override
- public final String getCore()
- {
- return ""; // force it to invalid core
- }
//---------------------------------------------------------------------------------------
//
Modified: lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/MultiCoreExampleTestBase.java
URL: http://svn.apache.org/viewvc/lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/MultiCoreExampleTestBase.java?rev=617933&r1=617932&r2=617933&view=diff
==============================================================================
--- lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/MultiCoreExampleTestBase.java (original)
+++ lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/MultiCoreExampleTestBase.java Sat Feb 2 16:15:33 2008
@@ -23,6 +23,7 @@
import org.apache.solr.client.solrj.request.UpdateRequest.ACTION;
import org.apache.solr.client.solrj.response.MultiCoreResponse;
import org.apache.solr.common.SolrInputDocument;
+import org.apache.solr.core.SolrCore;
/**
@@ -37,17 +38,30 @@
@Override public String getSolrConfigFile() { return getSolrHome()+"core0/conf/solrconfig.xml"; }
+ @Override
+ protected final SolrServer getSolrServer()
+ {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ protected final SolrServer createNewSolrServer()
+ {
+ throw new UnsupportedOperationException();
+ }
+
+ protected abstract SolrServer getSolrCore0();
+ protected abstract SolrServer getSolrCore1();
+ protected abstract SolrServer getSolrAdmin();
+
+
public void testMultiCore() throws Exception
{
- SolrServer solr = getSolrServer();
-
UpdateRequest up = new UpdateRequest();
up.setAction( ACTION.COMMIT, true, true );
- up.setCore( "core0" );
up.deleteByQuery( "*:*" );
- up.process( solr );
- up.setCore( "core1" );
- up.process( solr );
+ up.process( getSolrCore0() );
+ up.process( getSolrCore1() );
up.clear();
// Add something to each core
@@ -56,30 +70,26 @@
doc.setField( "core0", "yup" );
// Add to core0
- up.setCore( "core0" );
up.add( doc );
- up.process( solr );
+ up.process( getSolrCore0() );
// You can't add it to core1
try {
- up.setCore( "core1" );
- up.process( solr );
+ up.process( getSolrCore1() );
fail( "Can't add core0 field to core1!" );
}
catch( Exception ex ) {}
// Add to core1
- up.setCore( "core1" );
doc.setField( "id", "BBB" );
doc.setField( "core1", "yup" );
doc.removeField( "core0" );
up.add( doc );
- up.process( solr );
+ up.process( getSolrCore1() );
// You can't add it to core1
try {
- up.setCore( "core0" );
- up.process( solr );
+ up.process( getSolrCore0() );
fail( "Can't add core1 field to core0!" );
}
catch( Exception ex ) {}
@@ -87,28 +97,25 @@
// now Make sure AAA is in 0 and BBB in 1
SolrQuery q = new SolrQuery();
QueryRequest r = new QueryRequest( q );
- r.setCore( "core0" );
q.setQuery( "id:AAA" );
- assertEquals( 1, r.process( solr ).getResults().size() );
- r.setCore( "core1" );
- assertEquals( 0, r.process( solr ).getResults().size() );
+ assertEquals( 1, r.process( getSolrCore0() ).getResults().size() );
+ assertEquals( 0, r.process( getSolrCore1() ).getResults().size() );
// Now test Changing the default core
- solr.setDefaultCore( "core0" );
- assertEquals( 1, solr.query( new SolrQuery( "id:AAA" ) ).getResults().size() );
- assertEquals( 0, solr.query( new SolrQuery( "id:BBB" ) ).getResults().size() );
-
- solr.setDefaultCore( "core1" );
- assertEquals( 0, solr.query( new SolrQuery( "id:AAA" ) ).getResults().size() );
- assertEquals( 1, solr.query( new SolrQuery( "id:BBB" ) ).getResults().size() );
+ assertEquals( 1, getSolrCore0().query( new SolrQuery( "id:AAA" ) ).getResults().size() );
+ assertEquals( 0, getSolrCore0().query( new SolrQuery( "id:BBB" ) ).getResults().size() );
+
+ assertEquals( 0, getSolrCore1().query( new SolrQuery( "id:AAA" ) ).getResults().size() );
+ assertEquals( 1, getSolrCore1().query( new SolrQuery( "id:BBB" ) ).getResults().size() );
// Now test reloading it should have a newer open time
String name = "core0";
- MultiCoreResponse mcr = MultiCoreRequest.getStatus( name, solr );
+ SolrServer coreadmin = getSolrAdmin();
+ MultiCoreResponse mcr = MultiCoreRequest.getStatus( name, coreadmin );
long before = mcr.getStartTime( name ).getTime();
- MultiCoreRequest.reloadCore( name, solr );
+ MultiCoreRequest.reloadCore( name, coreadmin );
- mcr = MultiCoreRequest.getStatus( name, solr );
+ mcr = MultiCoreRequest.getStatus( name, coreadmin );
long after = mcr.getStartTime( name ).getTime();
assertTrue( "should have more recent time: "+after+","+before, after > before );
}
Modified: lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/MultiCoreEmbeddedTest.java
URL: http://svn.apache.org/viewvc/lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/MultiCoreEmbeddedTest.java?rev=617933&r1=617932&r2=617933&view=diff
==============================================================================
--- lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/MultiCoreEmbeddedTest.java (original)
+++ lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/MultiCoreEmbeddedTest.java Sat Feb 2 16:15:33 2008
@@ -31,8 +31,6 @@
*/
public class MultiCoreEmbeddedTest extends MultiCoreExampleTestBase {
- SolrServer server;
-
@Override public void setUp() throws Exception
{
super.setUp();
@@ -40,20 +38,23 @@
File home = new File( getSolrHome() );
File f = new File( home, "multicore.xml" );
MultiCore.getRegistry().load( getSolrHome(), f );
-
- // setup the server...
- server = createNewSolrServer();
}
@Override
- protected SolrServer getSolrServer()
+ protected SolrServer getSolrCore0()
{
- return server;
+ return new EmbeddedSolrServer( "core0" );
}
@Override
- protected SolrServer createNewSolrServer()
+ protected SolrServer getSolrCore1()
{
- return new EmbeddedSolrServer();
+ return new EmbeddedSolrServer( "core1" );
}
+
+ @Override
+ protected SolrServer getSolrAdmin()
+ {
+ return new EmbeddedSolrServer( "core0" );
+ }
}
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=617933&r1=617932&r2=617933&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 Sat Feb 2 16:15:33 2008
@@ -31,7 +31,6 @@
*/
public class MultiCoreExampleJettyTest extends MultiCoreExampleTestBase {
- SolrServer server;
JettySolrRunner jetty;
static final int port = 8984; // not 8983
@@ -44,7 +43,6 @@
jetty = new JettySolrRunner( context, port );
jetty.start();
- server = this.createNewSolrServer();
}
@Override public void tearDown() throws Exception
@@ -53,18 +51,30 @@
jetty.stop(); // stop the server
}
+
@Override
- protected SolrServer getSolrServer()
+ protected SolrServer getSolrCore0()
{
- return server;
+ return createServer( "core0" );
}
@Override
- protected SolrServer createNewSolrServer()
+ protected SolrServer getSolrCore1()
+ {
+ return createServer( "core1" );
+ }
+
+ @Override
+ protected SolrServer getSolrAdmin()
+ {
+ return createServer( "" );
+ }
+
+ private SolrServer createServer( String name )
{
try {
// setup the server...
- String url = "http://localhost:"+port+context;
+ String url = "http://localhost:"+port+context+"/"+name;
CommonsHttpSolrServer s = new CommonsHttpSolrServer( url );
s.setConnectionTimeout(100); // 1/10th sec
s.setDefaultMaxConnectionsPerHost(100);