On 1/27/2015 5:50 PM, vsriram30 wrote:
> I am using Solrcloud 4.6.1 In that if I use CloudSolrServer to add a record
> to solr, then I see the following commit update command in both master and
> in slave node :

One of the first things to find out is whether it's still a problem in
the latest version of Solr, which is currently 4.10.3.  Solr 4.6.1 is a
year old, and there have been seven new versions released since then. 
Solr, especially SolrCloud, changes at a VERY rapid pace ... in each
version, many bugs are fixed, and each x.y.0 version adds new
features/functionality.

I'm not in a position to set up a minimal SolrCloud testbed to try this
out, or I would try it myself.

> 2015-01-27 15:20:23,625 INFO org.apache.solr.update.UpdateHandler: start
> commit{,optimize=false,openSearcher=true,waitSearcher=true,expungeDeletes=false,softCommit=true,prepareCommit=false}
>
> I am also setting the updateRequest.setCommitWithin(5000);
>
> Here as noticed, the openSearcher=true and hence after 5 seconds, I am able
> to see the record in index in both slave and in master.
>
> Now if I trigger another UpdateRequest with only deleteById set and no add
> documents to Solr, with the same commit within time, then 
>
> in the master log I see,
>
> 2015-01-27 15:21:46,389 INFO org.apache.solr.update.UpdateHandler: start
> commit{,optimize=false,openSearcher=true,waitSearcher=true,expungeDeletes=false,softCommit=true,prepareCommit=false}
>
> and in the slave log I see,
> 2015-01-27 15:21:56,393 INFO org.apache.solr.update.UpdateHandler: start
> commit{,optimize=false,openSearcher=false,waitSearcher=true,expungeDeletes=false,softCommit=false,prepareCommit=false}
>
> Here as noticed, the master is having openSearcher=true and slave is having
> openSearcher=false. This causes inconsistency in the results as master shows
> that the record is deleted and slave still has the record.
>
> After digging through the code a bit, I think this is probably happening in
> CommitTracker where the openSearcher might be false while creating the
> CommitUpdateCommand.
>
> Can you advise if there is any ticket created to address this issue or can I
> create one? Also is there any workaround for this till the bug is fixed than
> to set commit within duration in server to a lower value?

It does sound like a bug.  Some possible workarounds, no idea how
effective they will be:

*) Try deleteByQuery to see whether it is affected the same way.
*) Use autoSoftCommit in solrconfig.xml instead of commitWithin on the
update request.

I do see a report of an identical problem on this mailing list, two days
after 4.0-ALPHA was announced, which was the first public release that
included SolrCloud.  Both of the following URLs open the same message:

http://osdir.com/ml/solr-user.lucene.apache.org/2012-07/msg00214.html
http://mail-archives.apache.org/mod_mbox/lucene-solr-user/201207.mbox/%3ccal3vrcdsiqyajuy6eqvpak0ftg-oy7n5g7cql4x4_8sz5jm...@mail.gmail.com%3E

I did not find an existing issue in Jira for this problem, so if the
same problem exists in 4.10.3, filing one sounds like a good idea.

Thanks,
Shawn

Reply via email to