lucene-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Benson Margulies" <bim2...@basistech.com>
Subject RE: isCurrent says no, but contents still invisible
Date Wed, 10 Jan 2007 22:03:50 GMT
#2 is a possible issue. I stared at the code some more:

The test case adds up to :

Create all the objects.

Add three docs.
Add a fourth doc.

Do a query aimed at the fourth doc.

isCurrent() returns false.

Close reader/searcher, open reader/searcher, numDocs() in the reader
returns 3. Not 4.

However, reading your message carefully, I realize that I'm probably
fundamentally misguided. There's no flush() API on a writer, so, of
course, the only possible way for a reader to see current contents is if
the writer gets closed and reopened. I keep trying to cook up some
scheme in which this is not true, but, with the stock classes, it now
seems self-evident to me that it has to be true.

I'll put in the requisite code, and slink away.


-----Original Message-----
From: Doron Cohen [mailto:DORONC@il.ibm.com] 
Sent: Wednesday, January 10, 2007 4:07 PM
To: java-user@lucene.apache.org
Subject: Re: isCurrent says no, but contents still invisible

That's strange. Since you don't close the writer usually adding the doc
would not modify the index (unless adding the doc triggered a merge).

You may want to check that:
1. writer and reader really opened against the same path;
2. reader isCurrent state also before adding the doc and after
re-opening;
3. searched terms vs. added terms - might not be related to concurrency
at
all.

Finally perhaps post here the code so people can take a look.

"Benson Margulies" <bim2006@basistech.com> wrote on 10/01/2007 12:45:08:

> I'm trying what should be the dumbest possible example of concurrency
> management with 2.0 in Java with an ordinary FSDirectory.
>
>
>
> I create an IndexWriter from a pathname, an IndexReader from the same
> pathname, and an IndexSearcher from the reader.
>
>
>
> I add one document.
>
>
>
> I call isCurrent() on the reader. It says, 'false'.
>
>
>
> So, I close the reader and the searcher, and I create a new reader and
a
> new searcher.  I search for the document, and I don't find it.
>
>
>
> I must be missing something simple.
>
>
>


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


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


Mime
View raw message