[ https://issues.apache.org/jira/browse/LUCENE-8592?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Jim Ferenczi resolved LUCENE-8592. ---------------------------------- Resolution: Fixed > MultiSorter#sort incorrectly sort Integer/Long#MIN_VALUE when the natural > sort is reversed > ------------------------------------------------------------------------------------------ > > Key: LUCENE-8592 > URL: https://issues.apache.org/jira/browse/LUCENE-8592 > Project: Lucene - Core > Issue Type: Bug > Affects Versions: 7.5, master (8.0) > Reporter: Jim Ferenczi > Priority: Blocker > Fix For: 7.6, master (8.0) > > Attachments: LUCENE-8592.patch, LUCENE-8592.patch > > > MultiSorter#getComparableProviders on an integer or long field doesn't handle > MIN_VALUE correctly when the natural order is reversed. To handle reverse > sort we use the negation of the value but there is no check for overflows so > MIN_VALUE for ints and longs are always sorted first (even if the natural > order is reversed). > This method is used by index sorting when merging already sorted segments > together. This means that a sorted index can be incorrectly sorted if it uses > a reverse sort and a missing value set to MIN_VALUE (long or int or values > inside the segment that are equals to MIN_VALUE). > This a bad bug because it affects the documents order inside segments and > only a reindex can restore the correct sort order. -- This message was sent by Atlassian JIRA (v7.6.3#76005) --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org