[
https://issues.apache.org/jira/browse/JENA-2333?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Georgy Litvinov updated JENA-2333:
----------------------------------
Description:
{color:#172b4d}Sorting by labels fail on this data set.{color}
{color:#172b4d}Simple Java example to reproduce attached.{color}
{color:#172b4d}Looks like a race condition involved.{color}
{color:#172b4d}SELECT ?label WHERE { {color}
{color:#172b4d}?object <[http://www.w3.org/2000/01/rdf-schema#label]> ?label .
} ORDER BY ASC(?label){color}
java.lang.IllegalArgumentException: Comparison method violates its general
contract!
win
at java.base/java.util.TimSort.mergeLo(TimSort.java:781)
at java.base/java.util.TimSort.mergeAt(TimSort.java:518)
at java.base/java.util.TimSort.mergeCollapse(TimSort.java:448)
at java.base/java.util.TimSort.sort(TimSort.java:245)
at java.base/java.util.Arrays.sort(Arrays.java:1441)
at
org.apache.jena.atlas.data.AbortableComparator.abortableSort(AbortableComparator.java:57)
at org.apache.jena.atlas.data.SortedDataBag.iterator(SortedDataBag.java:205)
at org.apache.jena.atlas.data.SortedDataBag.iterator(SortedDataBag.java:192)
at
org.apache.jena.sparql.engine.iterator.QueryIterSort$SortedBindingIterator.initializeIterator(QueryIterSort.java:88)
at
org.apache.jena.atlas.iterator.IteratorDelayedInitialization.init(IteratorDelayedInitialization.java:38)
at
org.apache.jena.atlas.iterator.IteratorDelayedInitialization.hasNext(IteratorDelayedInitialization.java:48)
at
org.apache.jena.sparql.engine.iterator.QueryIterPlainWrapper.hasNextBinding(QueryIterPlainWrapper.java:59)
at
org.apache.jena.sparql.engine.iterator.QueryIteratorBase.hasNext(QueryIteratorBase.java:114)
at
org.apache.jena.sparql.engine.iterator.QueryIterConvert.hasNextBinding(QueryIterConvert.java:58)
at
org.apache.jena.sparql.engine.iterator.QueryIteratorBase.hasNext(QueryIteratorBase.java:114)
at
org.apache.jena.sparql.engine.iterator.QueryIteratorWrapper.hasNextBinding(QueryIteratorWrapper.java:38)
at
org.apache.jena.sparql.engine.iterator.QueryIteratorBase.hasNext(QueryIteratorBase.java:114)
at
org.apache.jena.sparql.engine.iterator.QueryIteratorWrapper.hasNextBinding(QueryIteratorWrapper.java:38)
at
org.apache.jena.sparql.engine.iterator.QueryIteratorBase.hasNext(QueryIteratorBase.java:114)
at org.apache.jena.sparql.exec.RowSetStream.hasNext(RowSetStream.java:47)
at
org.apache.jena.sparql.engine.ResultSetStream.hasNext(ResultSetStream.java:81)
at javaBug.JenaBug.isReproduced(JenaBug.java:61)
at javaBug.JenaBug.main(JenaBug.java:47)
was:
{color:#172b4d}Sorting by labels fail on this data set.{color}
{color:#172b4d}Simple Java example to reproduce attached.{color}
{color:#172b4d}Looks like a race condition involved.{color}
{color:#172b4d}SELECT ?label WHERE { {color}
{color:#172b4d}?object <[http://www.w3.org/2000/01/rdf-schema#label]> ?label
.{color}
{color:#172b4d}} ORDER BY ASC(?label){color}
java.lang.IllegalArgumentException: Comparison method violates its general
contract!
win
at java.base/java.util.TimSort.mergeLo(TimSort.java:781)
at java.base/java.util.TimSort.mergeAt(TimSort.java:518)
at java.base/java.util.TimSort.mergeCollapse(TimSort.java:448)
at java.base/java.util.TimSort.sort(TimSort.java:245)
at java.base/java.util.Arrays.sort(Arrays.java:1441)
at
org.apache.jena.atlas.data.AbortableComparator.abortableSort(AbortableComparator.java:57)
at org.apache.jena.atlas.data.SortedDataBag.iterator(SortedDataBag.java:205)
at org.apache.jena.atlas.data.SortedDataBag.iterator(SortedDataBag.java:192)
at
org.apache.jena.sparql.engine.iterator.QueryIterSort$SortedBindingIterator.initializeIterator(QueryIterSort.java:88)
at
org.apache.jena.atlas.iterator.IteratorDelayedInitialization.init(IteratorDelayedInitialization.java:38)
at
org.apache.jena.atlas.iterator.IteratorDelayedInitialization.hasNext(IteratorDelayedInitialization.java:48)
at
org.apache.jena.sparql.engine.iterator.QueryIterPlainWrapper.hasNextBinding(QueryIterPlainWrapper.java:59)
at
org.apache.jena.sparql.engine.iterator.QueryIteratorBase.hasNext(QueryIteratorBase.java:114)
at
org.apache.jena.sparql.engine.iterator.QueryIterConvert.hasNextBinding(QueryIterConvert.java:58)
at
org.apache.jena.sparql.engine.iterator.QueryIteratorBase.hasNext(QueryIteratorBase.java:114)
at
org.apache.jena.sparql.engine.iterator.QueryIteratorWrapper.hasNextBinding(QueryIteratorWrapper.java:38)
at
org.apache.jena.sparql.engine.iterator.QueryIteratorBase.hasNext(QueryIteratorBase.java:114)
at
org.apache.jena.sparql.engine.iterator.QueryIteratorWrapper.hasNextBinding(QueryIteratorWrapper.java:38)
at
org.apache.jena.sparql.engine.iterator.QueryIteratorBase.hasNext(QueryIteratorBase.java:114)
at org.apache.jena.sparql.exec.RowSetStream.hasNext(RowSetStream.java:47)
at
org.apache.jena.sparql.engine.ResultSetStream.hasNext(ResultSetStream.java:81)
at javaBug.JenaBug.isReproduced(JenaBug.java:61)
at javaBug.JenaBug.main(JenaBug.java:47)
> Sorting by labels in SPARQL query fail
> --------------------------------------
>
> Key: JENA-2333
> URL: https://issues.apache.org/jira/browse/JENA-2333
> Project: Apache Jena
> Issue Type: Bug
> Components: ARQ, Jena
> Affects Versions: Jena 2.10.1, Jena 3.16.0, Jena 4.5.0
> Reporter: Georgy Litvinov
> Priority: Major
> Attachments: SortingBug.java, bad_data_out.n3
>
>
> {color:#172b4d}Sorting by labels fail on this data set.{color}
> {color:#172b4d}Simple Java example to reproduce attached.{color}
> {color:#172b4d}Looks like a race condition involved.{color}
> {color:#172b4d}SELECT ?label WHERE { {color}
> {color:#172b4d}?object <[http://www.w3.org/2000/01/rdf-schema#label]> ?label
> . } ORDER BY ASC(?label){color}
>
> java.lang.IllegalArgumentException: Comparison method violates its general
> contract!
> win
> at java.base/java.util.TimSort.mergeLo(TimSort.java:781)
> at java.base/java.util.TimSort.mergeAt(TimSort.java:518)
> at java.base/java.util.TimSort.mergeCollapse(TimSort.java:448)
> at java.base/java.util.TimSort.sort(TimSort.java:245)
> at java.base/java.util.Arrays.sort(Arrays.java:1441)
> at
> org.apache.jena.atlas.data.AbortableComparator.abortableSort(AbortableComparator.java:57)
> at
> org.apache.jena.atlas.data.SortedDataBag.iterator(SortedDataBag.java:205)
> at
> org.apache.jena.atlas.data.SortedDataBag.iterator(SortedDataBag.java:192)
> at
> org.apache.jena.sparql.engine.iterator.QueryIterSort$SortedBindingIterator.initializeIterator(QueryIterSort.java:88)
> at
> org.apache.jena.atlas.iterator.IteratorDelayedInitialization.init(IteratorDelayedInitialization.java:38)
> at
> org.apache.jena.atlas.iterator.IteratorDelayedInitialization.hasNext(IteratorDelayedInitialization.java:48)
> at
> org.apache.jena.sparql.engine.iterator.QueryIterPlainWrapper.hasNextBinding(QueryIterPlainWrapper.java:59)
> at
> org.apache.jena.sparql.engine.iterator.QueryIteratorBase.hasNext(QueryIteratorBase.java:114)
> at
> org.apache.jena.sparql.engine.iterator.QueryIterConvert.hasNextBinding(QueryIterConvert.java:58)
> at
> org.apache.jena.sparql.engine.iterator.QueryIteratorBase.hasNext(QueryIteratorBase.java:114)
> at
> org.apache.jena.sparql.engine.iterator.QueryIteratorWrapper.hasNextBinding(QueryIteratorWrapper.java:38)
> at
> org.apache.jena.sparql.engine.iterator.QueryIteratorBase.hasNext(QueryIteratorBase.java:114)
> at
> org.apache.jena.sparql.engine.iterator.QueryIteratorWrapper.hasNextBinding(QueryIteratorWrapper.java:38)
> at
> org.apache.jena.sparql.engine.iterator.QueryIteratorBase.hasNext(QueryIteratorBase.java:114)
> at org.apache.jena.sparql.exec.RowSetStream.hasNext(RowSetStream.java:47)
> at
> org.apache.jena.sparql.engine.ResultSetStream.hasNext(ResultSetStream.java:81)
> at javaBug.JenaBug.isReproduced(JenaBug.java:61)
> at javaBug.JenaBug.main(JenaBug.java:47)
--
This message was sent by Atlassian Jira
(v8.20.7#820007)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]