lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Grzegorz Sobczyk (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (SOLR-3920) CloudSolrServer doesn't allow to index multiple collections with one instance of server
Date Mon, 08 Oct 2012 20:54:02 GMT

     [ https://issues.apache.org/jira/browse/SOLR-3920?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Grzegorz Sobczyk updated SOLR-3920:
-----------------------------------

    Description: 
With one instance of CloudSolrServer I can't add documents to multiple collections, for example:

{code}
@Test
public void shouldCommitToTwoCores() throws Exception {
	//given
	try {
		CloudSolrServer server = new CloudSolrServer("localhost:9983");
		UpdateRequest commit1 = new UpdateRequest();
		commit1.setAction(ACTION.COMMIT, true, true);
		commit1.setParam("collection", "collection1");
		//this commit is bug's cause
		commit1.process(server);
		
		SolrInputDocument doc = new SolrInputDocument();
		doc.addField("id", "id");
		doc.addField("name", "name");
		
		UpdateRequest update2 = new UpdateRequest();
		update2.setParam("collection", "collection2");
		update2.add(doc);
		update2.process(server);
		
		UpdateRequest commit2 = new UpdateRequest();
		commit2.setAction(ACTION.COMMIT, true, true);
		commit2.setParam("collection", "collection2");
		commit2.process(server);

		SolrQuery q1 = new SolrQuery("id:id");
		q1.set("collection", "collection1");
		SolrQuery q2 = new SolrQuery("id:id");
		q2.set("collection", "collection2");
		
		//when
		QueryResponse resp1 = server.query(q1);
		QueryResponse resp2 = server.query(q2);
		
		//then
		Assert.assertEquals(0L, resp1.getResults().getNumFound());
		Assert.assertEquals(1L, resp2.getResults().getNumFound());
	} finally {
		CloudSolrServer server1 = new CloudSolrServer("localhost:9983");
		server1.setDefaultCollection("collection1");
		server1.deleteByQuery("id:id");
		server1.commit(true, true);
		
		CloudSolrServer server2 = new CloudSolrServer("localhost:9983");
		server2.setDefaultCollection("collection2");
		server2.deleteByQuery("id:id");
		server2.commit(true, true);
	}
}
{code}

Second update goes to first collection.

  was:
With one instance of CloudSolrServer I can't add documents to multiple collections, for example:

{code}
@Test
public void shouldCommitToTwoCores() throws Exception {
	//given
	try {
		CloudSolrServer server = new CloudSolrServer("localhost:9983");
		UpdateRequest commit1 = new UpdateRequest();
		commit1.setAction(ACTION.COMMIT, true, true);
		commit1.setParam("collection", "collection1");
		//this commit is bug's cause
		commit1.process(server);
		
		SolrInputDocument doc = new SolrInputDocument();
		doc.addField("id", "id");
		doc.addField("name", "name");
		
		UpdateRequest update2 = new UpdateRequest();
		update2.setParam("collection", "collection2");
		update2.add(doc);
		update2.process(server);
		
		UpdateRequest commit2 = new UpdateRequest();
		commit2.setAction(ACTION.COMMIT, true, true);
		commit2.setParam("collection", "collection2");
		commit2.process(server);

		SolrQuery q1 = new SolrQuery("id:id");
		q1.set("collection", "collection1");
		SolrQuery q2 = new SolrQuery("id:id");
		q2.set("collection", "collection2");
		
		//when
		QueryResponse resp1 = server.query(q1);
		QueryResponse resp2 = server.query(q2);
		
		//then
		Assert.assertEquals(0L, resp1.getResults().getNumFound());
		Assert.assertEquals(0L, resp2.getResults().getNumFound());
	} finally {
		CloudSolrServer server1 = new CloudSolrServer("localhost:9983");
		server1.setDefaultCollection("collection1");
		server1.deleteByQuery("id:id");
		server1.commit(true, true);
		
		CloudSolrServer server2 = new CloudSolrServer("localhost:9983");
		server2.setDefaultCollection("collection2");
		server2.deleteByQuery("id:id");
		server2.commit(true, true);
	}
}
{code}

Second update goes to first collection.

    
> CloudSolrServer doesn't allow to index multiple collections with one instance of server
> ---------------------------------------------------------------------------------------
>
>                 Key: SOLR-3920
>                 URL: https://issues.apache.org/jira/browse/SOLR-3920
>             Project: Solr
>          Issue Type: Bug
>          Components: SolrCloud
>    Affects Versions: 4.0-BETA
>            Reporter: Grzegorz Sobczyk
>
> With one instance of CloudSolrServer I can't add documents to multiple collections, for
example:
> {code}
> @Test
> public void shouldCommitToTwoCores() throws Exception {
> 	//given
> 	try {
> 		CloudSolrServer server = new CloudSolrServer("localhost:9983");
> 		UpdateRequest commit1 = new UpdateRequest();
> 		commit1.setAction(ACTION.COMMIT, true, true);
> 		commit1.setParam("collection", "collection1");
> 		//this commit is bug's cause
> 		commit1.process(server);
> 		
> 		SolrInputDocument doc = new SolrInputDocument();
> 		doc.addField("id", "id");
> 		doc.addField("name", "name");
> 		
> 		UpdateRequest update2 = new UpdateRequest();
> 		update2.setParam("collection", "collection2");
> 		update2.add(doc);
> 		update2.process(server);
> 		
> 		UpdateRequest commit2 = new UpdateRequest();
> 		commit2.setAction(ACTION.COMMIT, true, true);
> 		commit2.setParam("collection", "collection2");
> 		commit2.process(server);
> 		SolrQuery q1 = new SolrQuery("id:id");
> 		q1.set("collection", "collection1");
> 		SolrQuery q2 = new SolrQuery("id:id");
> 		q2.set("collection", "collection2");
> 		
> 		//when
> 		QueryResponse resp1 = server.query(q1);
> 		QueryResponse resp2 = server.query(q2);
> 		
> 		//then
> 		Assert.assertEquals(0L, resp1.getResults().getNumFound());
> 		Assert.assertEquals(1L, resp2.getResults().getNumFound());
> 	} finally {
> 		CloudSolrServer server1 = new CloudSolrServer("localhost:9983");
> 		server1.setDefaultCollection("collection1");
> 		server1.deleteByQuery("id:id");
> 		server1.commit(true, true);
> 		
> 		CloudSolrServer server2 = new CloudSolrServer("localhost:9983");
> 		server2.setDefaultCollection("collection2");
> 		server2.deleteByQuery("id:id");
> 		server2.commit(true, true);
> 	}
> }
> {code}
> Second update goes to first collection.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org


Mime
View raw message