lucene-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Mark Miller <markrmil...@gmail.com>
Subject Re: how to define a pool for Searcher?
Date Sun, 25 Feb 2007 14:41:56 GMT
If you never modify your index you should never need to close your 
reader (or searcher). Doing so would just slow you down.

Mohammad Norouzi wrote:
> Hi
> actually I dont have any writer or writing reader. I just have reader. 
> when
> a reader is created by the user because the document returned by hits is
> very much, for example 20,000 so I display the result page by page. 
> whenever
> user click to next page the hits will use the reader to load next 20
> records,
> besides, I dont have one directory, there are more than one directory and
> index on the server and each user may request for one of them.
> the problem is, a user may close his browser window and the reader 
> will stay
> open becasue I cant detect it. and either if his session expires my 
> destroy
> method will be called and searcher will close but in the cached 
> searcher i
> can not detect which one is closed and ready it for next user. if the
> searcher had a isClosed() method it was easy to determine but 
> unfortunately
> it's has'nt
>
> any idea?
> thanks again
>
> On 2/25/07, Mark Miller <markrmiller@gmail.com> wrote:
>>
>> I am a bit confused about what you are asking. Why do you need the
>> Searcher to time out? That code should release your searchers at the
>> appropriate times...when the index has been modified. The way that I use
>> it is to make a synchronized map that keeps around an index accessor for
>> each index that I open...from there the code should do the rest...when a
>> writer or a writing reader is released the code waits for all searchers
>> to be released and then clears the cache of searchers and new searchers
>> are created when requested until another writer or writing reader is
>> released...
>>
>> Mohammad Norouzi wrote:
>> > Thank you Mark for your useful help. the code you introduce was very
>> > helpful
>> > for me
>> >
>> > but my only question is that I need to place an idle time for each 
>> open
>> > searcher, so if it exceed the specific time then release that searcher
>> > and
>> > get ready for another thread.
>> >
>> > how can I put such this feature, I was thinking of a timeout listener,
>> > but
>> > dont know where tu put it. I have a SingleSearcher that wraps lucene's
>> > Searcher and it returns an ResultSet in which I put a Hits object. do
>> > I have
>> > to put the time in my ResultSet or my SingleSeacher?
>> >
>> > still I dont know ehrthrt the reader is important for Hits or 
>> Searcher?
>> > consider I passed a hits to my ResultSet, now, if I close searcher,
>> > will the
>> > Reader get closed?  or another vague thing is can a Reader work thread
>> > safely for every Searcher with differenet queries?
>> >
>> > Thank you very much again.
>> >
>> > On 2/22/07, Mark Miller <markrmiller@gmail.com> wrote:
>> >>
>> >> I would not do this from scratch...if you are interested in Solr go
>> that
>> >> route else I would build off
>> >> http://issues.apache.org/jira/browse/LUCENE-390
>> >>
>> >> - Mark
>> >>
>> >> Mohammad Norouzi wrote:
>> >> > Hi all,
>> >> > I am going to build a Searcher pooling. if any one has 
>> experience on
>> >> > this, I
>> >> > would be glad to hear his/her recommendation and suggestion. I want
>> to
>> >> > know
>> >> > what issues I should be apply. considering I am going to use 
>> this on
>> a
>> >> > web
>> >> > application with many user sessions.
>> >> >
>> >> > thank you very much in advance.
>> >>
>> >> ---------------------------------------------------------------------
>> >> 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
>>
>>
>
>

---------------------------------------------------------------------
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