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

Robert Muir commented on LUCENE-7959:
-------------------------------------

{quote}
 An exception is thrown later, but it's an almost useless "NoSuchFileException"
{quote}

OK, this is the key: this happens in the call to .toRealPath(). 

So I think there is an easy safe fix, when we try to createFile(), save the 
exception we caught, and if toRealPath() then fails with IOE, 
addSuppressed(savedException) and rethrow it. It will never hurt anything.



> Throw more helpful error messages from failures in obtainFSLock, at least in 
> NativeFSLockFactory
> ------------------------------------------------------------------------------------------------
>
>                 Key: LUCENE-7959
>                 URL: https://issues.apache.org/jira/browse/LUCENE-7959
>             Project: Lucene - Core
>          Issue Type: Improvement
>            Reporter: Erick Erickson
>            Assignee: Erick Erickson
>            Priority: Minor
>
> This is one of those small changes that would save a lot of pain for end 
> users. Currently, any failure to obtain the lock reports:
> "Lock held by this virtual machine: " + realPath
> or 
> "Lock held by another program: " + realPath
> Let's say that there's a permissions issue with the index dir. This is an 
> unhelpful/misleading error message (recent user's list discussion about this).
> The problem is that when we try to create the lock file we swallow _all_ 
> exceptions, not just the one we don't care about (Thanks [~elyograg] for 
> pointing this out).
>  {{   
>    try {
>       Files.createFile(lockFile);
>     } catch (IOException ignore) {
>       // we must create the file to have a truly canonical path.
>       // if it's already created, we don't care. if it cant be created, it 
> will fail below.
>     }
> }}
> It fails later with one of the above error messages.



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

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to