[prev in list] [next in list] [prev in thread] [next in thread]
List: lucene-dev
Subject: Re: java.io.IOException: Access is denied on java.io.WinNTFileSystem.createFileExclusively
From: Michael McCandless <lucene () mikemccandless ! com>
Date: 2006-08-27 20:39:50
Message-ID: 44F20316.7070208 () mikemccandless ! com
[Download RAW message or body]
Transplanting this thread off of java-user to discuss a more java-dev
question I have (below):
http://www.gossamer-threads.com/lists/lucene/java-user/39382
> Yonik Seeley wrote:
>> On 8/27/06, Doron Cohen <DORONC@il.ibm.com> wrote:
>>> I plan to submit an update to that patch later today accommodating your
>>> comments (and others); It will most probably retry for IOExceptions (not
>>> analyzing the exception text); also, it would return false if the
>>> *retry*
>>> for obtain() failed with exception.
>>
>> Lock.obtain(timeout) already has retry/timeout logic around
>> Lock.obtain(), so wouldn't the change to return false on an
>> IOException be sufficient? User level applications should then use
>> obtain(timeout) rather than obtain() unless they want to do
>> timeout/retry logic themselves.
>
> I would agree: the retry/timeout logic already exists above so let's
> just return false on hitting any IOException when calling createNewFile.
>
> (Doron, this still wouldn't fix the other strange "across the board" IO
> problems you see on Windows. I'd really like to reproduce this but so
> far (running your stress test) I can't -- are you sure it's not a virus
> checker or something?).
I think on hitting the IOException on java.io.File.createNewFile, we
should return false (so timeout/retry logic can handle it).
However we should also message this to the user to make debugging
simple (vs just silently swallowing the exception).
But: how to do so? I like the infoStream that IndexWriter supports,
but, should we adopt [one of] the Java logging APIs (Apache commons
logging, java.util.logging, log4j, etc.)?
As far as I can tell Lucene doesn't do so now, so, what's the "right
way" to let the user know that an IOException occurred and this is why
the "lock obtain" failed?
Mike
---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: java-dev-help@lucene.apache.org
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic