yanlin-Lynn commented on a change in pull request #1642: [CALCITE-3583] Support
serialized to json and deserialized from json for Exchange relation operator
URL: https://github.com/apache/calcite/pull/1642#discussion_r357499754
##########
File path: core/src/main/java/org/apache/calcite/rel/core/Exchange.java
##########
@@ -68,8 +68,7 @@ protected Exchange(RelOptCluster cluster, RelTraitSet
traitSet, RelNode input,
* Creates an Exchange by parsing serialized output.
*/
public Exchange(RelInput input) {
Review comment:
There are some test case that has empty trait when creating LogicalExchange.
So, I suggest we keep it still in this PR. And if needed, we should create
another PR to do this.
```
org.apache.calcite.test.RelMetadataTest > testRowCountExchange() FAILED
java.lang.AssertionError: traits=, distributionhash
at org.apache.calcite.rel.core.Exchange.<init>(Exchange.java:62)
at
org.apache.calcite.rel.logical.LogicalExchange.<init>(LogicalExchange.java:36)
at
org.apache.calcite.rel.logical.LogicalExchange.create(LogicalExchange.java:59)
at
org.apache.calcite.test.RelMetadataTest.testRowCountExchange(RelMetadataTest.java:653)
FAILURE 0.0sec, org.apache.calcite.test.RelMetadataTest >
testNodeTypeCountExchange()
org.apache.calcite.test.RelMetadataTest > testNodeTypeCountExchange() FAILED
java.lang.AssertionError: traits=, distributionhash
at org.apache.calcite.rel.core.Exchange.<init>(Exchange.java:62)
at
org.apache.calcite.rel.logical.LogicalExchange.<init>(LogicalExchange.java:36)
at
org.apache.calcite.rel.logical.LogicalExchange.create(LogicalExchange.java:59)
at
org.apache.calcite.test.RelMetadataTest.testNodeTypeCountExchange(RelMetadataTest.java:2641)
FAILURE 0.0sec, org.apache.calcite.test.RelMetadataTest >
testDistributionHashEmpty()
org.apache.calcite.test.RelMetadataTest > testDistributionHashEmpty() FAILED
java.lang.AssertionError: traits=, distributionhash
at org.apache.calcite.rel.core.Exchange.<init>(Exchange.java:62)
at
org.apache.calcite.rel.logical.LogicalExchange.<init>(LogicalExchange.java:36)
at
org.apache.calcite.rel.logical.LogicalExchange.create(LogicalExchange.java:59)
at
org.apache.calcite.test.RelMetadataTest.testDistributionHashEmpty(RelMetadataTest.java:1999)
FAILURE 0.0sec, org.apache.calcite.test.RelMetadataTest >
testColumnUniquenessForExchangeWithConstantColumns()
org.apache.calcite.test.RelMetadataTest >
testColumnUniquenessForExchangeWithConstantColumns() FAILED
java.lang.AssertionError: traits=NONE.[], distributionhash[1]
at org.apache.calcite.rel.core.Exchange.<init>(Exchange.java:62)
at
org.apache.calcite.rel.logical.LogicalExchange.<init>(LogicalExchange.java:36)
at
org.apache.calcite.rel.logical.LogicalExchange.create(LogicalExchange.java:59)
at
org.apache.calcite.rel.core.RelFactories$ExchangeFactoryImpl.createExchange(RelFactories.java:206)
at org.apache.calcite.tools.RelBuilder.exchange(RelBuilder.java:2306)
at
org.apache.calcite.test.RelMetadataTest.testColumnUniquenessForExchangeWithConstantColumns(RelMetadataTest.java:1106)
FAILURE 0.0sec, org.apache.calcite.test.RelMetadataTest >
testDistributionSingleton()
```
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
With regards,
Apache Git Services