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