You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Michael McCandless (JIRA)" <ji...@apache.org> on 2009/12/06 12:23:18 UTC
[jira] Updated: (LUCENE-2119) If you pass Integer.MAX_VALUE as 2nd
param to search(Query, int) you hit unexpected NegativeArraySizeException
[ https://issues.apache.org/jira/browse/LUCENE-2119?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Michael McCandless updated LUCENE-2119:
---------------------------------------
Attachment: LUCENE-2119.patch
Patch attached. In PQ if incoming size is Integer.MAX_VALUE, I don't try to +1 it. And, in IndexSearcher.search, when I create PQ, I now use min(nDocs, maxDoc()). I'll commit shortly.
> If you pass Integer.MAX_VALUE as 2nd param to search(Query, int) you hit unexpected NegativeArraySizeException
> --------------------------------------------------------------------------------------------------------------
>
> Key: LUCENE-2119
> URL: https://issues.apache.org/jira/browse/LUCENE-2119
> Project: Lucene - Java
> Issue Type: Bug
> Components: Search
> Reporter: Michael McCandless
> Assignee: Michael McCandless
> Priority: Minor
> Fix For: 3.1
>
> Attachments: LUCENE-2119.patch
>
>
> Note that this is a nonsense value to pass in, since our PQ impl allocates the array up front.
> It's because PQ takes 1+ this value (which wraps to -1), and attempts to allocate that. We should bounds check it, and drop PQ size by one in this case.
> Better, maybe: in IndexSearcher, if that n is ever > maxDoc(), set it to maxDoc().
> This trips users up fairly often because they assume our PQ doesn't statically pre-allocate (a reasonable assumption...).
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: java-dev-help@lucene.apache.org