zongxing.li created CALCITE-5620:
------------------------------------

             Summary: DruidQuery can not work with RelJson
                 Key: CALCITE-5620
                 URL: https://issues.apache.org/jira/browse/CALCITE-5620
             Project: Calcite
          Issue Type: Bug
          Components: core, druid-adapter
    Affects Versions: 1.34.0
            Reporter: zongxing.li


DruidQuery put intervals property to items in explainTerms function. But 
RelJson not support serializable Interval type.
{code:java}
@Override public RelWriter explainTerms(RelWriter pw) {
  for (RelNode rel : rels) {
    if (rel instanceof TableScan) {
      TableScan tableScan = (TableScan) rel;
      pw.item("table", tableScan.getTable().getQualifiedName());
      pw.item("intervals", intervals); {code}
{code:java}
java.lang.UnsupportedOperationException: type not serializable: 
1900-01-09T00:00:00.000Z/2992-01-10T00:00:00.000Z (type org.joda.time.Interval)
    at org.apache.calcite.rel.externalize.RelJson.toJson(RelJson.java:465)
    at org.apache.calcite.rel.externalize.RelJson.toJson(RelJson.java:444)
    at 
org.apache.calcite.rel.externalize.RelJsonWriter.put(RelJsonWriter.java:102)
    at 
org.apache.calcite.rel.externalize.RelJsonWriter.explain_(RelJsonWriter.java:85)
    at 
org.apache.calcite.rel.externalize.RelJsonWriter.done(RelJsonWriter.java:135)
    at org.apache.calcite.rel.AbstractRelNode.explain(AbstractRelNode.java:251)
    at org.apache.calcite.plan.RelOptUtil.dumpPlan(RelOptUtil.java:2105){code}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to