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

Robert Muir commented on LUCENE-5837:
-------------------------------------

{quote}
I'm surprised that you think of it as a specialization as this is actually 
making things simpler? The handling of the missing value is done once for all 
in setNextReader and then the comparator only needs to care about the 
NumericDocValues instance. And it makes it easier (and potentially more 
efficient) to write selectors.
{quote}

It is a specialization, because instead of a branch for null, you have a branch 
checking class of the numericdocvalues. and if this one fails, the whole thing 
gets deoptimized and hotspot goes crazy.

> Only check docsWithField when necessary in numeric comparators
> --------------------------------------------------------------
>
>                 Key: LUCENE-5837
>                 URL: https://issues.apache.org/jira/browse/LUCENE-5837
>             Project: Lucene - Core
>          Issue Type: Improvement
>            Reporter: Adrien Grand
>            Assignee: Adrien Grand
>            Priority: Minor
>             Fix For: 5.0, 4.10
>
>         Attachments: LUCENE-5837.patch, LUCENE-5837.patch
>
>
> Our numeric comparators have branches to deal with missing values. However 
> there are some cases when checking docs that have a field is not useful:
>  - if all docs have a value
>  - if no docs have a value
>  - if the missing value is 0



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