2011/3/21 Shai Erera <ser...@gmail.com>:
>> So the proper behaviour is to return false & IOE (on proper occasion)?
>
> I don't object to it, as I think it's reasonable (as today we may be hiding
> some info from the app). However, given that today we never throw IOE, and
> that if we start doing so, we'll change runtime behavior, I lean towards
> keeping the method simple and remove the throws declaration. Well, it's
> either we change the impl to throw IOE, or remove the declaration
> altogether.
>
> Changing the impl to throw IOE "on proper occasion" might be problematic --
> IndexNotFoundException is thrown when an empty index directory was given,
> however by its Javadocs, it can also indicate the index is corrupted.
> Perhaps the jdocs are wrong and it's thrown only if the index directory is
> empty, or no segments files are found. If that's the case, then we should
> change its javadocs. Otherwise, it will be difficult to know whether the
> INFE indicates an empty directory, for which you'll want to return false, or
> a corrupt index, for which you'll want to throw the exception.
>
> Besides, I consider this method almost like File.exists() which doesn't
> throw an exception. If indexExists() returns false, the app can decide to
> investigate further by trying to open IndexReader or read the SegmentInfos.
> But the API as-is needs to be simple IMO.
File.exists() parallel is a good one.
So, maybe, it's ok )

>> Otherwise please keep the throws declaration so that you won't break
>> public APIs if this changes implementation.
>
> Removing the throws declaration doesn't break apps. In the worse case,
> they'll have a catch block which is redundant?
>
> Shai
>
> On Mon, Mar 21, 2011 at 4:12 PM, Sanne Grinovero <sanne.grinov...@gmail.com>
> wrote:
>>
>> 2011/3/21 Earwin Burrfoot <ear...@gmail.com>:
>> > Technically, there's a big difference between "I checked, and there
>> > was no index", and "I was unable to check the disk because file system
>> > went BANG!".
>> > So the proper behaviour is to return false & IOE (on proper occasion)?
>>
>> +1 to throw the exception when proper to do so
>>
>> Otherwise please keep the throws declaration so that you won't break
>> public APIs if this changes implementation.
>>
>> >
>> > On Mon, Mar 21, 2011 at 13:53, Michael McCandless
>> > <luc...@mikemccandless.com> wrote:
>> >> On Mon, Mar 21, 2011 at 12:52 AM, Shai Erera <ser...@gmail.com> wrote:
>> >>> Can we remove the declaration? The method never throws IOE, but
>> >>> instead
>> >>> catches it and returns false. I think it's reasonable that such a
>> >>> method
>> >>> will not throw exceptions.
>> >>
>> >> +1
>> >>
>> >> --
>> >> Mike
>> >>
>> >> http://blog.mikemccandless.com
>> >>
>> >> ---------------------------------------------------------------------
>> >> To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
>> >> For additional commands, e-mail: dev-h...@lucene.apache.org
>> >>
>> >>
>> >
>> >
>> >
>> > --
>> > Kirill Zakharenko/Кирилл Захаренко
>> > E-Mail/Jabber: ear...@gmail.com
>> > Phone: +7 (495) 683-567-4
>> > ICQ: 104465785
>> >
>> > ---------------------------------------------------------------------
>> > To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
>> > For additional commands, e-mail: dev-h...@lucene.apache.org
>> >
>> >
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
>> For additional commands, e-mail: dev-h...@lucene.apache.org
>>
>
>



-- 
Kirill Zakharenko/Кирилл Захаренко
E-Mail/Jabber: ear...@gmail.com
Phone: +7 (495) 683-567-4
ICQ: 104465785

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

Reply via email to