You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Erick Erickson (JIRA)" <ji...@apache.org> on 2018/02/05 19:27:00 UTC

[jira] [Resolved] (LUCENE-8149) NRTCachingDirectory does not need to preemptively delete segment files and generate exceptions

     [ https://issues.apache.org/jira/browse/LUCENE-8149?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Erick Erickson resolved LUCENE-8149.
------------------------------------
       Resolution: Fixed
    Fix Version/s: 7.3

Thanks Robert and Adrien!

> NRTCachingDirectory does not need to preemptively delete segment files and generate exceptions
> ----------------------------------------------------------------------------------------------
>
>                 Key: LUCENE-8149
>                 URL: https://issues.apache.org/jira/browse/LUCENE-8149
>             Project: Lucene - Core
>          Issue Type: Improvement
>            Reporter: Erick Erickson
>            Assignee: Erick Erickson
>            Priority: Minor
>             Fix For: 7.3
>
>         Attachments: LUCENE-8149.patch
>
>
> Moving over here from SOLR-11892. After getting through my confusion I've found the following: NRTCachingDirectory.createOutput tries to delete segment files before creating them. We should at least add a bit of commentary as to what the pre-emptive delete is there for since on the surface it's not obvious.
> try {
>   in.deleteFile(name);
> {{ } catch (IOException ioe) {}}
>   // This is fine: file may not exist
> {{ }}}
> If I change to using MMapDirectory or NIOFSDirectory these exceptions are not thrown. What's special about NRTCachingDirectory that it needs this when two of the possible underlying FS implementations apparently do not? Or is this necessary for, say, Windows or file systems than the two I tried? Or is it some interaction between the RAM based segments and segments on disk?



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org