[
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: [email protected]
For additional commands, e-mail: [email protected]