lucene-solr-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Paul Tomblin <ptomb...@xcski.com>
Subject Re: SolrJ looping until I get all the results
Date Tue, 03 Nov 2009 01:43:24 GMT
On Mon, Nov 2, 2009 at 8:40 PM, Avlesh Singh <avlesh@gmail.com> wrote:
>>
>> final static int MAX_ROWS = 100;
>> int start = 0;
>> query.setRows(MAX_ROWS);
>> while (true)
>> {
>>   QueryResponse resp = solrChunkServer.query(query);
>>   SolrDocumentList docs = resp.getResults();
>>   if (docs.size() == 0)
>>     break;
>>   ....
>>  start += MAX_ROWS;
>>  query.setStart(start);
>> }
>>
> Yes. It will work as you think. But are you sure that you want to do this?
> How many documents do you have in the index? If the number is in an
> acceptable range, why not simply do a query.setRows(Integer.MAX_VALUE) once?

I was doing it that way, but what I'm doing with the documents is do
some manipulation and put the new classes into a different list.
Because I basically have two times the number of documents in lists,
I'm running out of memory.  So I figured if I do it 1000 documents at
a time, the SolrDocumentList will get garbage collected at least.



-- 
http://www.linkedin.com/in/paultomblin
http://careers.stackoverflow.com/ptomblin

Mime
View raw message