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

Joel Bernstein commented on SOLR-6029:
--------------------------------------

Thanks Greg, this is a nasty bug.

> CollapsingQParserPlugin throws ArrayIndexOutOfBoundsException if elevated doc 
> has been deleted from a segment
> -------------------------------------------------------------------------------------------------------------
>
>                 Key: SOLR-6029
>                 URL: https://issues.apache.org/jira/browse/SOLR-6029
>             Project: Solr
>          Issue Type: Bug
>          Components: query parsers
>    Affects Versions: 4.7.1
>            Reporter: Greg Harris
>            Priority: Minor
>         Attachments: SOLR-6029.patch
>
>
> CollapsingQParserPlugin misidentifies if a document is not found in a segment 
> if the docid previously existed in a segment ie.... was deleted. 
> Relevant code bit from CollapsingQParserPlugin needs to be changed from:
> -if(doc != -1) {
> +if((doc != -1) && (doc != DocsEnum.NO_MORE_DOCS)) {
> What happens is if the doc is not found the returned value is 
> DocsEnum.NO_MORE_DOCS. This would then get set in the fq bitSet array as the 
> doc location causing an ArrayIndexOutOfBoundsException as the array is only 
> as big as maxDocs. 



--
This message was sent by Atlassian JIRA
(v6.2#6252)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to