[
https://issues.apache.org/jira/browse/LUCENE-6835?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Michael McCandless updated LUCENE-6835:
---------------------------------------
Attachment: LUCENE-6835.patch
I think the branch is in pretty good shape ... tests pass, even when forcing
{{VirusCheckingFS}} usage.
I'm attaching an applyable a "createPatch.py" patch.
I have one nocommit left: what to do about IndexFileDeleter's previous heroics
around not removing any files referenced by a stale segments_N when that
segments_N itself cannot be deleted. I think we should just remove this
(OS-specific) behavior?
I'm a little nervous about the changes to FSDirectory, holding onto pending
deletions, retrying them periodically on new write operations ... but I do
think it's important we get this OS-specific behavior in Lucene down lower in
the stack ...
I also fixed the new {{VirusCheckingFS}} to not use {{Random}} instance
anymore, but do its own pseudo-random behavior based on the hash of the
incoming {{Path}}.
> Directory.deleteFile should "own" retrying deletions on Windows
> ---------------------------------------------------------------
>
> Key: LUCENE-6835
> URL: https://issues.apache.org/jira/browse/LUCENE-6835
> Project: Lucene - Core
> Issue Type: Improvement
> Reporter: Michael McCandless
> Fix For: 5.5, master
>
> Attachments: LUCENE-6835.patch, LUCENE-6835.patch
>
>
> Rob's idea:
> Today, we have hairy logic in IndexFileDeleter to deal with Windows file
> systems that cannot delete still open files.
> And with LUCENE-6829, where OfflineSorter now must deal with the situation
> too ... I worked around it by fixing all tests to disable the virus checker.
> I think it makes more sense to push this "platform specific problem" lower in
> the stack, into Directory? I.e., its deleteFile method would catch the
> access denied, and then retry the deletion later. Then we could re-enable
> virus checker on all these tests, simplify IndexFileDeleter, etc.
> Maybe in the future we could further push this down, into WindowsDirectory,
> and fix FSDirectory.open to return WindowsDirectory on windows ...
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]