I am having issues any time I add documents or delete documents. The issue is
that the log is reporting that the commit is happening but when I search
after the commit I get no change in the result set. It's only after I
manually commit again that I can see the new results.

For example I have a SolrCloud server with 3 shards and replicationFactor of
1

When I use my DIH to import 8 documents I get the following output in my
tomcat log.

Jan 03, 2013 5:47:57 PM org.apache.solr.core.SolrCore execute
INFO: [productindex] webapp=/solr path=/update
params={update.distrib=TOLEADER&wt=javabin&version=2} status=0 QTime=9 
Jan 03, 2013 5:47:57 PM org.apache.solr.update.DirectUpdateHandler2 commit
INFO: start
commit{flags=0,_version_=0,optimize=false,openSearcher=true,waitSearcher=true,expungeDeletes=false,softCommit=false}
Jan 03, 2013 5:47:57 PM org.apache.solr.search.SolrIndexSearcher <init>
INFO: Opening Searcher@22c0c00d main
Jan 03, 2013 5:47:57 PM org.apache.solr.update.DirectUpdateHandler2 commit
INFO: end_commit_flush
Jan 03, 2013 5:47:57 PM org.apache.solr.core.QuerySenderListener newSearcher
INFO: QuerySenderListener sending requests to Searcher@22c0c00d
main{StandardDirectoryReader(segments_l:51:nrt)}
Jan 03, 2013 5:47:57 PM org.apache.solr.core.QuerySenderListener newSearcher
INFO: QuerySenderListener done.
Jan 03, 2013 5:47:57 PM org.apache.solr.core.SolrCore registerSearcher
INFO: [productindex] Registered new searcher Searcher@22c0c00d
main{StandardDirectoryReader(segments_l:51:nrt)}
Jan 03, 2013 5:47:57 PM org.apache.solr.update.processor.LogUpdateProcessor
finish
INFO: [productindex] webapp=/solr path=/update
params={waitSearcher=true&commit_end_point=true&expungeDeletes=false&wt=javabin&softCommit=false&version=2&commit=true}
{commit=} 0 6
Jan 03, 2013 5:47:57 PM org.apache.solr.core.SolrCore execute
INFO: [productindex] webapp=/solr path=/update
params={distrib.from=http://solr-shard-6.sys.id.build.com:8080/solr/productindex/&update.distrib=TOLEADER&wt=javabin&version=2}
status=0 QTime=85 
Jan 03, 2013 5:48:12 PM org.apache.solr.update.DirectUpdateHandler2 commit
INFO: start
commit{flags=0,_version_=0,optimize=false,openSearcher=false,waitSearcher=true,expungeDeletes=false,softCommit=false}
Jan 03, 2013 5:48:12 PM org.apache.solr.core.SolrDeletionPolicy onCommit
INFO: SolrDeletionPolicy.onCommit: commits:num=2

commit{dir=NRTCachingDirectory(org.apache.lucene.store.MMapDirectory@/srv/solr/productindex/data/index
lockFactory=org.apache.lucene.store.NativeFSLockFactory@3b25c7e2;
maxCacheMB=48.0
maxMergeSizeMB=4.0),segFN=segments_m,generation=22,filenames=[segments_m]

commit{dir=NRTCachingDirectory(org.apache.lucene.store.MMapDirectory@/srv/solr/productindex/data/index
lockFactory=org.apache.lucene.store.NativeFSLockFactory@3b25c7e2;
maxCacheMB=48.0
maxMergeSizeMB=4.0),segFN=segments_n,generation=23,filenames=[_d.fdt,
_d_Lucene40_0.frq, _d_Lucene40_0.tim, _d_Lucene40_0.tip, _d.si, _d.fnm,
segments_n, _d_Lucene40_0.prx, _d_nrm.cfe, _d_nrm.cfs, _d.fdx]
Jan 03, 2013 5:48:12 PM org.apache.solr.core.SolrDeletionPolicy
updateCommits
INFO: newest commit = 23
Jan 03, 2013 5:48:12 PM org.apache.solr.search.SolrIndexSearcher <init>
INFO: Opening Searcher@5626e185 realtime
Jan 03, 2013 5:48:12 PM org.apache.solr.update.DirectUpdateHandler2 commit
INFO: end_commit_flush

However when I perform a search I still have 0 documents.

When I manually commit with: /solr/productindex/update?commit=true then I
can see the results. Here are the results from the log when I manually
commit.

Jan 03, 2013 5:56:04 PM org.apache.solr.update.DirectUpdateHandler2 commit
INFO: start
commit{flags=0,_version_=0,optimize=false,openSearcher=true,waitSearcher=true,expungeDeletes=false,softCommit=false}
Jan 03, 2013 5:56:04 PM org.apache.solr.search.SolrIndexSearcher <init>
INFO: Opening Searcher@290efe9b main
Jan 03, 2013 5:56:04 PM org.apache.solr.update.DirectUpdateHandler2 commit
INFO: end_commit_flush
Jan 03, 2013 5:56:04 PM org.apache.solr.core.QuerySenderListener newSearcher
INFO: QuerySenderListener sending requests to Searcher@290efe9b
main{StandardDirectoryReader(segments_n:53:nrt _d(4.0.0.2):C2)}
Jan 03, 2013 5:56:04 PM org.apache.solr.core.QuerySenderListener newSearcher
INFO: QuerySenderListener done.
Jan 03, 2013 5:56:04 PM org.apache.solr.core.SolrCore registerSearcher
INFO: [productindex] Registered new searcher Searcher@290efe9b
main{StandardDirectoryReader(segments_n:53:nrt _d(4.0.0.2):C2)}
Jan 03, 2013 5:56:04 PM org.apache.solr.update.processor.LogUpdateProcessor
finish
INFO: [productindex] webapp=/solr path=/update
params={waitSearcher=true&commit_end_point=true&expungeDeletes=false&wt=javabin&softCommit=false&version=2&commit=true}
{commit=} 0 9

Similarly when I delete with
/solr/productindex/update?stream.body=<delete><query>*:*</query></delete>&commit=true

I can still see all 8 documents until I commit manually again...

I thought the default behavior of the DIH was to commit. And I know when I
am deleting documents I am supplying the commmit parameter so I don't know
why the commit wouldn't be happening the first time.


Any help is appreciated.




--
View this message in context: 
http://lucene.472066.n3.nabble.com/SolrCloud-Commit-issues-tp4030468.html
Sent from the Solr - User mailing list archive at Nabble.com.

Reply via email to