[ 
https://issues.apache.org/jira/browse/SOLR-5661?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13882535#comment-13882535
 ] 

Raintung Li commented on SOLR-5661:
-----------------------------------

Yes, I ask the many rows that it is max integer. The root node will collect the 
results from different node(shards) to combin and meger the results. For this 
case, will directly create the queue .

Fix the Lucene side, it is enough.

For solr issue, should be how to handle the biggest rowid, for biggest rowid 
should have the different logic. Can't direct create the biggest queue.

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

Reply via email to