Should decRef perhaps set closed=true? Otherwise, calling close() would
result in an IllegalStateException, which is not very useful or necessary I
think.

Shai

On Wed, Oct 5, 2011 at 12:34 PM, Michael McCandless <
[email protected]> wrote:

> Right, when you call IR.close() what that translates to is "drop the
> ref that had been returned when this IR was opened".
>
> Mike McCandless
>
> http://blog.mikemccandless.com
>
> On Wed, Oct 5, 2011 at 5:20 AM, Uwe Schindler <[email protected]> wrote:
> > Hi Shai,
> >
> >
> >
> > We implement java.io.Closeable and the semantics in the interface
> Closeable
> > require that you can call close() multiple times without effect:
> >
> > http://download.oracle.com/javase/6/docs/api/java/io/Closeable.html
> >
> >
> >
> > “Closes this stream and releases any system resources associated with it.
> If
> > the stream is already closed then invoking this method has no effect.”
> >
> >
> >
> > -----
> >
> > Uwe Schindler
> >
> > H.-H.-Meier-Allee 63, D-28213 Bremen
> >
> > http://www.thetaphi.de
> >
> > eMail: [email protected]
> >
> >
> >
> > From: Shai Erera [mailto:[email protected]]
> > Sent: Wednesday, October 05, 2011 11:17 AM
> > To: [email protected]; [email protected]
> > Subject: Re: IndexReader.close
> >
> >
> >
> > After I made the change, TestIndexReaderReopen failed. Reason is that it
> is
> > assumed that one can call close() many times, without it affecting the
> > IndexReader instance. However, if I change the call to use refCount
> instead
> > of closes, then calling close() multiple times decreases the ref count
> > multiple times, until it is 0.
> >
> > So I think we better keep closed, just in case someone out there relies
> on
> > this behavior.
> >
> > Shai
> >
> > On Wed, Oct 5, 2011 at 9:35 AM, Simon Willnauer
> > <[email protected]> wrote:
> >
> > +1
> >
> > On Wed, Oct 5, 2011 at 6:26 AM, Shai Erera <[email protected]> wrote:
> >> Hi
> >>
> >> I noticed that IndexReader.close() sets a 'close' member to true, but we
> >> never check this member. Can we eliminate it and change close() to check
> >> refCount.get() > 0?
> >>
> >> Shai
> >>
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [email protected]
> > For additional commands, e-mail: [email protected]
> >
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
>
>

Reply via email to