You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Vitaliy Zhovtyuk (JIRA)" <ji...@apache.org> on 2014/12/15 06:21:14 UTC

[jira] [Updated] (SOLR-5660) Send request level commitWithin as a param rather than setting it per doc

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

Vitaliy Zhovtyuk updated SOLR-5660:
-----------------------------------
    Attachment: SOLR-5660.patch

Added handling commitWithin as parameter - its passed on request level, in case not present its passed per document.
Added test for request level, but failed to reproduce commitWithin per document (org.apache.solr.cloud.FullSolrCloudDistribCmdsTest#testIndexingCommitWithinOnAttr). 
If 2documents contain different commitWithin value its failed with exception:
{quote}org.apache.solr.client.solrj.impl.HttpSolrServer$RemoteSolrException: Illegal to have multiple roots (start tag in epilog?).
 at [row,col {unknown-source}]: [1,236]
	at __randomizedtesting.SeedInfo.seed([FC019F99FE2DEADF:7DE7118189728AE3]:0)
	at org.apache.solr.client.solrj.impl.HttpSolrServer.executeMethod(HttpSolrServer.java:569)
	at org.apache.solr.client.solrj.impl.HttpSolrServer.request(HttpSolrServer.java:215)
	at org.apache.solr.client.solrj.impl.HttpSolrServer.request(HttpSolrServer.java:211)
	at org.apache.solr.client.solrj.request.AbstractUpdateRequest.process(AbstractUpdateRequest.java:124)
	at org.apache.solr.cloud.FullSolrCloudDistribCmdsTest.testIndexingCommitWithinOnAttr(FullSolrCloudDistribCmdsTest.java:183)
	at org.apache.solr.cloud.FullSolrCloudDistribCmdsTest.doTest(FullSolrCloudDistribCmdsTest.java:143)
	at org.apache.solr.BaseDistributedSearchTestCase.testDistribSearch(BaseDistributedSearchTestCase.java:869)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at com.carrotsearch.randomizedtesting.RandomizedRunner.invoke(RandomizedRunner.java:1618){quote}
	
Is it bug due to malformed XML?
If one document contains commitWithin passed its does not taken into account (commitWithin=-1). Seems this value unmarshalled incorrectly in org.apache.solr.client.solrj.request.JavaBinUpdateRequestCodec#unmarshal


> Send request level commitWithin as a param rather than setting it per doc
> -------------------------------------------------------------------------
>
>                 Key: SOLR-5660
>                 URL: https://issues.apache.org/jira/browse/SOLR-5660
>             Project: Solr
>          Issue Type: Improvement
>          Components: Response Writers, SolrCloud
>            Reporter: Shalin Shekhar Mangar
>             Fix For: 4.9, Trunk
>
>         Attachments: SOLR-5660.patch
>
>
> In SolrCloud the commitWithin parameter is sent per-document even if it is set on the entire request.
> We should send request level commitWithin as a param rather than setting it per doc - that would mean less repeated data in the request. We still need to properly support per doc like this as well though, because that is the level cmd objects support and we are distributing cmd objects.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

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