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