[ https://issues.apache.org/jira/browse/IGNITE-24699?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Konstantin Orlov updated IGNITE-24699: -------------------------------------- Fix Version/s: 3.1 > Sql. Query with ORDER BY returns unsorted result > ------------------------------------------------ > > Key: IGNITE-24699 > URL: https://issues.apache.org/jira/browse/IGNITE-24699 > Project: Ignite > Issue Type: Bug > Components: sql > Reporter: Konstantin Orlov > Assignee: Konstantin Orlov > Priority: Major > Labels: ignite-3 > Fix For: 3.1 > > Time Spent: 10m > Remaining Estimate: 0h > > Run this test: > {code:java} > // org.apache.ignite.internal.sql.engine.ItSecondaryIndexTest > @Test > void ensurePartitionStreamsAreMergedCorrectlyWithRegardToProjection() { > assertQuery("SELECT /*+ FORCE_INDEX(" + NAME_CITY_IDX + ") */ name FROM > Developer WHERE id % 2 = 0 ORDER BY name DESC") > .matches(containsIndexScan("PUBLIC", "DEVELOPER", NAME_CITY_IDX)) > .matches(not(containsSubPlan("Sort"))) > .returns("Zimmer") > .returns("Stravinsky") > .returns("Strauss") > .returns("Shubert") > .returns("Rihter") > .returns("Prokofiev") > .returns("O'Halloran") > .returns("Einaudi") > .returns("Chaikovsky") > .returns("Beethoven") > .returns("Arnalds") > .ordered() > .check(); > } {code} > It fails with > {code} > org.opentest4j.AssertionFailedError: Collections are not equal (position 0): > Expected: Stravinsky <class java.lang.String> > Actual: Rihter <class java.lang.String> > {code} > The reason is that comparator created to join streams of partition is created > based on collation returned by relation node, which in turn may be adjusted > with regard to projection merged into the real, but merge of partition is > happening before the projection, therefore must account only for > {{requiredColumns}} bitset. -- This message was sent by Atlassian Jira (v8.20.10#820010)