[ 
https://issues.apache.org/jira/browse/LUCENE-5857?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14079123#comment-14079123
 ] 

Ramkumar Aiyengar commented on LUCENE-5857:
-------------------------------------------

bq. It's somewhat dangerous to add this logic to try up to N commits backwards, 
e.g. in an app that saves multiple commit points, this could silently lose data 
if there is a transient IOException loading the "true" segments_N file. It's 
already spooky enough that Lucene tries up to N commits forwards...

We had initially considered trying up to N commits backwards but not going 
behind {{segments.gen}}.

The application has a very short soft commit interval (125ms) and a longer hard 
commit. Couldn't it happen that there was a soft commit, and the following hard 
commit was interrupted? See SOLR-6296 for the stack which was interrupted by 
Solr, IW.close was interrupted during fsync, that would have tried to sync two 
segments_N files right?

> make genLookaheadCountLimit configurable, add genLookbackCountLimit parameter
> -----------------------------------------------------------------------------
>
>                 Key: LUCENE-5857
>                 URL: https://issues.apache.org/jira/browse/LUCENE-5857
>             Project: Lucene - Core
>          Issue Type: Improvement
>            Reporter: Christine Poerschke
>
> The problem we saw was that an error-in-final-commit during solr-shutdown led 
> to a corrupted segments_.... file which prevented subsequent solr-start, 
> details below.
> this change:
> * adds genLookbackCountLimit similar to the existing genLookaheadCountLimit
> * makes both parameters configurable (initial values defaulted to existing 
> behaviour)
> error-in-final-commit result:
> * segments_2fi5 file present and zero-bytes long 
> (https://issues.apache.org/jira/i#browse/SOLR-6296 concerns root cause)
> * segments_2fi4 file absent on disk (speculation: 2fi4 was result of 
> in-memory segment merging)
> * segments_2fi3 file present and usable (but not found by existing 
> looking-logic)
> * segments.gen file referenced 2fi3



--
This message was sent by Atlassian JIRA
(v6.2#6252)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to