lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Robert Muir (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (LUCENE-7961) SimpleFSLockFactory should catch+box IOException (not FileAlreadyExistsException | AccessDeniedException)
Date Sat, 09 Sep 2017 06:37:01 GMT

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

Robert Muir commented on LUCENE-7961:
-------------------------------------

We can of course add a test like LUCENE-7959, but I think its overkill. 

The point is a filesystem can legally throw {{IOException("file already there")}} from this
method and the lockfactory will never deliver a LockObtainedFailedException. Also its confusing
today that we catch AccessDenied to handle the sporatic windows case, and deliver "lock held
elsewhere" (even though we chain the exception). it could just be a permissions error. And
it can always be the case its just a leftover file.

> SimpleFSLockFactory should catch+box IOException (not FileAlreadyExistsException | AccessDeniedException)
> ---------------------------------------------------------------------------------------------------------
>
>                 Key: LUCENE-7961
>                 URL: https://issues.apache.org/jira/browse/LUCENE-7961
>             Project: Lucene - Core
>          Issue Type: Bug
>            Reporter: Robert Muir
>         Attachments: LUCENE-7961.patch
>
>
> SimpleFSLockFactory will only convert {{FileAlreadyExistsException | AccessDeniedException}}
from Files.createFile() into LockObtainFailedException. Neither of these are guaranteed from
the API, only {{IOException}}.
> I think SimpleFSLockFactory should box any IOException from Files.createFile() into a
LockObtainFailedException instead of just these two optional ones. It is simpler and more
consistent behavior, even if its just theoretical problem for some FileSystem impl that doesn't
throw these. 



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

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


Mime
View raw message