[
https://issues.apache.org/jira/browse/SOLR-5661?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13882338#comment-13882338
]
Shalin Shekhar Mangar commented on SOLR-5661:
---------------------------------------------
{quote}
If you have multiple shard for one collection, send the query url for max
integer rowid, it can easy replicate.
Caused by: java.lang.OutOfMemoryError: Requested array size exceeds VM limit
at org.apache.lucene.util.PriorityQueue.<init>(PriorityQueue.java:64)
at org.apache.lucene.util.PriorityQueue.<init>(PriorityQueue.java:37)
at
org.apache.solr.handler.component.ShardFieldSortedHitQueue.<init>(ShardDoc.java:113)
at
org.apache.solr.handler.component.QueryComponent.mergeIds(QueryComponent.java:790)
{quote}
Raintung, please correct me if I am wrong but the max integer value is being
used in the constructor only because you have explicitly asked for that many
rows? Solr doesn't pass such a big value to the PriorityQueue constructor by
itself.
Also, I think the fix committed to Lucene takes care of the problem on Solr's
side as well. Even if we implement a check on Solr's side, the error message
can't be any different.
> PriorityQueue has OOM (Requested array size exceeds VM limit) issue
> -------------------------------------------------------------------
>
> Key: SOLR-5661
> URL: https://issues.apache.org/jira/browse/SOLR-5661
> Project: Solr
> Issue Type: Bug
> Components: contrib - Solr Cell (Tika extraction)
> Affects Versions: 4.3.1, 4.4, 4.5, 4.5.1, 4.6
> Environment: JDK 7
> Reporter: Raintung Li
> Assignee: Michael McCandless
> Fix For: 5.0, 4.7
>
> Attachments: patch-5661.txt
>
>
> It look like JDK7 change the design for max_array_length logic, it isn't
> max_jint, and it should be max_jint - header_size(type).
> If you deliver the Integer.MaxValue to create the PriorityQueue and have
> enough memory, you will find it is ok in JVM6 but not work in JVM7.
>
> JVM7 will throw OOM error while do array rang checking.
> It should the compatible issue between JVM6 and JVM7.
> Maybe need protect in the code logic, throw OOM look like big issues for
> customer.
--
This message was sent by Atlassian JIRA
(v6.1.5#6160)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]