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

Michael McCandless commented on LUCENE-3255:
--------------------------------------------

Actually, we can do something even simpler here: in the 1.9.x days Lucene never 
wrote a generation (_N) segments file.  It always wrote just "segments", so, if 
we see first int is a 0, and the file has a generation in it, then it's corrupt.

> Corrupted segment file not detected and wipes index contents
> ------------------------------------------------------------
>
>                 Key: LUCENE-3255
>                 URL: https://issues.apache.org/jira/browse/LUCENE-3255
>             Project: Lucene - Java
>          Issue Type: Bug
>    Affects Versions: 2.9.4, 3.2
>            Reporter: Mark Harwood
>            Assignee: Michael McCandless
>             Fix For: 3.4
>
>         Attachments: AllZerosSegmentFile, BadSegmentsFileTest.java, 
> CorruptionCheckerForPreLucene3.java, LUCENE-3255.patch, 
> LUCENE-3255_testcase.patch
>
>
> Lucene will happily wipe an existing index if presented with a latest 
> generation segments_n file of all zeros. File format documentation says 
> segments_N files should start with a format of -9 but SegmentInfos.read 
> accepts >=0 as valid for backward compatibility reasons.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

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

Reply via email to