Shawn:

bq: I've typed this often enough that I really need to just put it on the wiki

Made me smile, that's been the reason I've put things on the Wiki
and/or created blog posts..

But yeah, I've been thinking that this would be a great topic for its
own Wiki page for a while,
but as you can see I haven't gotten to it....

Erick

On Sat, Apr 6, 2013 at 5:20 AM, Shawn Heisey <s...@elyograg.org> wrote:
>> View this message in context: 
>> http://lucene.472066.n3.nabble.com/Solr-restart-is-taking-more-than-1-hour-tp4054165p4054189.html
>> Sent from the Solr - User mailing list archive at Nabble.com.
>
> Nabble says that the original message hasn't made it to the mailing list
> yet, which explains why I only saw the reply come in.  Good thing nabble
> sent along the URL so I could see the original question.
>
> This is almost guaranteed to be caused by a huge updateLog - the tlog
> directory added in version 4.0.  On Solr restart, all of the tlog data
> that exists is replayed to ensure the index is fully up to date.  When
> the tlog is huge, it takes a very long time.
>
> A huge tlog is normally caused by one of two things: 1) only using soft
> commits and never hard committing. 2) doing a very large import with the
> dataimport handler and not committing until the end.
>
> The solution is to do hard commits on intervals that are short (but not
> super short) with openSearcher set to false.  A hard commit starts a new
> tlog and flush index data to disk.  With openSearcher set to false, the
> hard commit will not change document visibility - deleted documents are
> still searchable, and new documents are not yet searchable.  You can
> still make new content searchable with a commit (hard or soft) that has
> openSearcher set to true.
>
> By starting a new tlog on a regular basis, it will never get very big.
> Solr trims old tlogs, only keeping a few of them around.  If you have
> only a few tlogs and they are small, it won't take very long to replay
> them on startup.
>
> The easiest way to do this hard commit is to have Solr do it for you
> automatically with the autoCommit feature.
>
> <updateHandler class="solr.DirectUpdateHandler2">
>   <autoCommit>
>     <maxDocs>25000</maxDocs>
>     <maxTime>300000</maxTime>
>     <openSearcher>false</openSearcher>
>   </autoCommit>
>   <updateLog />
> </updateHandler>
>
> I've typed this often enough that I really need to just put it on the
> wiki - when the question comes up, link the article. :)
>
> Thanks,
> Shawn
>

Reply via email to