Skip to content

Commit 5b482fc

Browse files
author
Xuecheng Shan
committed
test
1 parent 5659210 commit 5b482fc

File tree

2 files changed

+12
-1
lines changed

2 files changed

+12
-1
lines changed

core/src/main/java/org/apache/calcite/sql2rel/RelFieldTrimmer.java

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -662,13 +662,24 @@ public TrimResult trimFields(
662662
final ImmutableList<RexNode> fields =
663663
relBuilder.fields(RexUtil.apply(inputMapping, collation));
664664
relBuilder.sortLimit(offset, fetch, fields);
665+
handleEmpty(sort, relBuilder);
665666

666667
// The result has the same mapping as the input gave us. Sometimes we
667668
// return fields that the consumer didn't ask for, because the filter
668669
// needs them for its condition.
669670
return result(relBuilder.build(), inputMapping);
670671
}
671672

673+
private void handleEmpty(Sort sort, RelBuilder relBuilder) {
674+
RelNode relNode = relBuilder.peek();
675+
if ((relNode instanceof LogicalValues) && !(relNode.getTraitSet().equals(sort.getTraitSet()))) {
676+
relNode = new LogicalValues(relNode.getCluster(), sort.getTraitSet(), relNode.getRowType(),
677+
((LogicalValues) relNode).getTuples());
678+
}
679+
relBuilder.clear();
680+
relBuilder.push(relNode);
681+
}
682+
672683
public TrimResult trimFields(
673684
Exchange exchange,
674685
ImmutableBitSet fieldsUsed,

gradle.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ systemProp.org.gradle.internal.publish.checksums.insecure=true
2727
# This is version for Calcite itself
2828
# Note: it should not include "-SNAPSHOT" as it is automatically added by build.gradle.kts
2929
# Release version can be generated by using -Prelease or -Prc=<int> arguments
30-
calcite.version=1.30.0-kylin-4.x-r13
30+
calcite.version=1.30.0-kylin-4.x-r14-SNAPSHOT
3131
# This is a version to be used from Maven repository. It can be overridden by localAvatica below
3232
calcite.avatica.version=1.22.0
3333

0 commit comments

Comments
 (0)