Michael McCandless created LUCENE-5910:
------------------------------------------

             Summary: Cutover to Java7 nio APIS to improve SegmentInfos 
fallback logic
                 Key: LUCENE-5910
                 URL: https://issues.apache.org/jira/browse/LUCENE-5910
             Project: Lucene - Core
          Issue Type: Improvement
            Reporter: Michael McCandless


Spinoff from LUCENE-5904 ...

Today we have crazy logic (SegmentInfos.FindSegmentsFile) to try to locate the 
"latest" segments_N file from the index directory, even while a writer commits 
(writes a new segments_N+1 and removes the old one) concurrently while we try 
to open a DirectoryReader on the index.

But it's scary because it catches any IOException and assumes that segments_N 
was no good and tries to find an older one to load.

Really it should be more picky, and only fall back e.g. if it hit EOFE, or if 
one of the SegmentReaders hit FNFE, and for other exceptions e.g. transient 
problems like "out of file desctriptors" or OOME or "access denied" it should 
immediately throw these back to caller instead of falling back which risks 
losing documents in the index.



--
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