[ https://issues.apache.org/jira/browse/CALCITE-2554?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Michael Mior resolved CALCITE-2554. ----------------------------------- Resolution: Fixed Assignee: Michael Mior (was: Julian Hyde) Fix Version/s: 1.19.0 Fixed in [416d8c9|https://github.com/apache/calcite/commit/416d8c91d6b3dbfad9673a5c9e8e7d97b5f15be0]. > Enrich enumerable join operators with order preserving information > ------------------------------------------------------------------ > > Key: CALCITE-2554 > URL: https://issues.apache.org/jira/browse/CALCITE-2554 > Project: Calcite > Issue Type: Improvement > Components: core > Affects Versions: 1.17.0 > Reporter: Stamatis Zampetakis > Assignee: Michael Mior > Priority: Minor > Labels: pull-request-available > Fix For: 1.19.0 > > > Calcite enumerable convention offers four ways to perform a join over two > inputs: > # EnumerableJoin > # EnumerableThetaJoin > # EnumerableSemiJoin > # EnumerableCorrelate > The algorithms that are used by the afforementioned operators : > # org.apache.calcite.linq4j.EnumerableDefaults#join_ > # org.apache.calcite.linq4j.EnumerableDefaults#thetaJoin > # org.apache.calcite.linq4j.EnumerableDefaults#semiJoin > # org.apache.calcite.linq4j.EnumerableDefaults#correlateJoin > in many cases can preserves the order of the left (outer) input. However, > this information is not reflected in the RelTraitSet and thus cannot be > exploited by the optimizer. Without this information, sort operators > following the join cannot be removed (using SortRemoveRule) leading to > suboptimal plans. > -- This message was sent by Atlassian JIRA (v7.6.3#76005)