Thanks for responding!
On 03/06/14 09:20, Alexandre Rafalovitch wrote:
I guess, there are two questions there:
1) Does SOLR allocate memory based on requested rows (not actual one)?
I am pretty sure it does. At least a colleague mine "confirmed" it by
doing the following in the same Solr env
* Restart Solrs, query with rows=700000. No problem
* Restart Solrs, query with rows=Integer.MAX_VALUE ---> OOM
2) Is there a way to get all the records?
For the second question, would paging with deep-paging support (added
in 4.8) solve the problem in the meantime? Or is use-case more
specific than that?
Guess we could use deep-paging. At least we are aware of that option.
But I would rather not use it - it seems like using an advanced tools to
do something simple - potentially doing multiple requests to fetch docs
you ought to be able to fetch in one go. If we really wanted to do
"workarounds" we could start by doing the query with rows=0, to get the
numFound, and then do the query again with rows=<numFound> (assuming
that no documents was added matching the query between q1 and q2)
This is not a request for someone to solve the problem for me. I guess I
can do that myself. You are very welcome of course :-) It is merely a
question if I missed something? There feature might already be there.
And if I did not miss it, if anyone would be against introducing the
feature some reason? I might have missed good arguments not to have the
feature.
Regards,
Alex.
Personal website: http://www.outerthoughts.com/
Current project: http://www.solr-start.com/ - Accelerating your Solr proficiency