Shawn, So if the autoCommit interval is 15 seconds, and one update request arrives at t=0 and another at t=10 seconds, then will there be two timers one expiring at t=15 and another at t=25 seconds, but this would amount to ONLY ONE commit at t=15 since that one would include changes from both updates. Is this understanding correct ?
Thanks, Rahul On Wed, Oct 7, 2020 at 11:39 PM yaswanth kumar <yaswanth...@gmail.com> wrote: > Thank you very much both Eric and Shawn > > Sent from my iPhone > > > On Oct 7, 2020, at 10:41 PM, Shawn Heisey <apa...@elyograg.org> wrote: > > > > On 10/7/2020 4:40 PM, yaswanth kumar wrote: > >> I have the below in my solrconfig.xml > >> <updateHandler class="solr.DirectUpdateHandler2"> > >> <updateLog> > >> <str name="dir">${solr.Data.dir:}</str> > >> </updateLog> > >> <autoCommit> > >> <maxTime>${solr.autoCommit.maxTime:60000}</maxTime> > >> <openSearcher>false</openSearcher> > >> </autoCommit> > >> <autoSoftCommit> > >> <maxTime>${solr.autoSoftCommit.maxTime:5000}</maxTime> > >> </autoSoftCommit> > >> </updateHandler> > >> Does this mean even though we are always sending data with commit=false > on > >> update solr api, the above should do the commit every minute (60000 ms) > >> right? > > > > Assuming that you have not defined the "solr.autoCommit.maxTime" and/or > "solr.autoSoftCommit.maxTime" properties, this config has autoCommit set to > 60 seconds without opening a searcher, and autoSoftCommit set to 5 seconds. > > > > So five seconds after any indexing begins, Solr will do a soft commit. > When that commit finishes, changes to the index will be visible to > queries. One minute after any indexing begins, Solr will do a hard commit, > which guarantees that data is written to disk, but it will NOT open a new > searcher, which means that when the hard commit happens, any pending > changes to the index will not be visible. > > > > It's not "every five seconds" or "every 60 seconds" ... When any changes > are made, Solr starts a timer. When the timer expires, the commit is > fired. If no changes are made, no commits happen, because the timer isn't > started. > > > > Thanks, > > Shawn >