Closed (fixed)
Project:
Apache Solr Common Configurations
Component:
solrconfig.xml
Priority:
Normal
Category:
Task
Assigned:
Unassigned
Reporter:
Created:
25 May 2012 at 23:21 UTC
Updated:
18 Jun 2012 at 14:21 UTC
Based on the functionality diff, the MaxDoc directive in <autoCommit> is set to 2000 in Apache Solr Search Integration and not set at all in Search API Solr. The relevant discussion about setting the value to 2000 is located at #919694: AutoCommit MaxTime seems ridiculously long for normal use, let's change it to 20 seconds..
Comments
Comment #1
pwolanin commentedFor production and depending on whether you have master/slave, how many docs you index, etc these values should possibly be varied. Generally people haven't complained since that issue, though having a "commit" button might be handy for dev if you don't change the config.
Comment #2
drunken monkeyThis change in the Search API was introduced because of #1225926-7: Fix performance problems in indexing workflow, where someone seemed to run into problems when
maxDocswas set. Didn't you have any complaints in that direction? Or could maybe anyone figure out another reason for that? The issue was a bit mysterious, I admit, but removingmaxDocsseemed to reliably fix this.And I guess leaving too many new documents uncommitted has some performance impact?
Comment #3
cpliakas commentedpwolanin, drunken monkey,
Thanks for the info and the background. I am still toying around as to whether or not this will have a module component to it, where it could do something like scan certain configs and provide recommendations based on your setup. Not sure if that is even possible, but could be cool.
Anyways, the default in 3.5 is now 10000, so 5x higher that the setting in Apache Solr Search Integration. It looks like the issue at [#1225926#comment-4918860] is the exceeded limit of maxWarmingSearchers=X error, which means that more than two commits were triggered at the same time given the maxWarmingSearchers setting of 2. I am assuming that what happened is that during the batch indexing more that 4k nodes were being sent at a time triggering more than 2 commits.
My thought is that we should increase to the 3.5 default. The Drupal modules should be smart about triggering commits anyways, so this gate shouldn't be run into often if ever. I am not in favor of removing it, because as we are seeing in Acquia Search people are starting to index non-Drupal data that is managed outside of Drupal. In that case we cannot assume that their application will be as smart about commits as the Drupal modules. Therefore having a higher maxDocs gate would at least catch exceptions.
Comment #4
cpliakas commentedAdding new component flag.
Comment #5
drunken monkeyOK, let's use the default again!
Comment #6
pwolanin commentedan explicit 10k is ok for me.
Comment #7
pwolanin commentedan explicit 10k is ok for me.
Comment #8
cpliakas commentedExcellent! Marking as RTBC. Making great progress here, thanks everyone for your participation. I know this initiative isn't the most exciting of topics :-).
Chris
Comment #9
nick_vhIt actually is exciting!
Comment #10
cpliakas commentedMarking as fixed. Nothing to commit as it is the default setting.
Comment #11
drunken monkeyI'm also pretty excited about finally being able to improve the config files with some competent help. ;) And having common configs definitely helps us all.
Also, Chris: You can link to specific comments in issues with
[#NID-COMMENTNO](whereCOMMENTNOis the number in the issue, not the cid (so 1, 2, 3, …)), in case you didn't know.Comment #12
cpliakas commentedI did not know that! Thanks for the formatting tip.