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

Robert Muir updated LUCENE-5570:
--------------------------------

    Attachment: LUCENE-5570.patch

here is the updated patch. its unclear to me if we can do anything for 4.7.x 
(because of java6), but i think we should fix this for 4.8/5.0

> FSDirectory's fsync() is lenient
> --------------------------------
>
>                 Key: LUCENE-5570
>                 URL: https://issues.apache.org/jira/browse/LUCENE-5570
>             Project: Lucene - Core
>          Issue Type: Bug
>          Components: core/store
>            Reporter: Robert Muir
>         Attachments: LUCENE-5570.patch, LUCENE-5570.patch, 
> LUCENE-5570_zerobyte.patch
>
>
> This method has a lot of problems:
> 1. it tracks 'stale files' as it writes (this seems pointless), and only 
> actually fsyncs the intersection of that 'stale files' and the filenames 
> passed as argument to sync(). So any bogus names passed to sync() are just 
> silently ignored
> 2. if "something bad happens" (e.g. two indexwriters/dirs on the same path, 
> or some other shenanigans), and the file is actually in stale files, but was 
> say actually deleted on the filesystem, the underlying fsync() call will 
> create a new 0-byte file and fsync that.
> In my opinion we should do none of this. we should throw exceptions when this 
> stuff is wrong.



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