Uploaded image for project: 'Flink'
  1. Flink
  2. FLINK-16315

throw JsonMappingException when using BatchTableEnvironment#explain to get the plan of sql with constant string

    XMLWordPrintableJSON

Details

    Description

      ExecutionEnvironment env = ExecutionEnvironment.getExecutionEnvironment();
      BatchTableEnvironment tEnv = BatchTableEnvironment.create(env);
      
      tEnv.registerTableSource("MyTable", CommonTestData.getCsvTableSource());
      
      Table table = tEnv.sqlQuery("select * from MyTable where first = '274' ");
      
      System.out.println(tEnv.explain(table));
      

      when executing the above code, the following exception will occur.

      exception

      org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.JsonMappingException: Unexpected character ('U' (code 85)): was expecting comma to separate Object entries
      at [Source: (String)"{
      "nodes": [

      {
      "id": 2,
      "type": "source",
      "pact": "Data Source",
      "contents": "CsvTableSource(read fields: first, id, score, last)",
      "parallelism": "8",
      "global_properties": [

      Unknown macro: { "name"}

      ,

      Unknown macro: { "name"}

      ,

      Unknown macro: { "name"}

      ],
      "local_properties": [

      Unknown macro: { "name"}

      ,

      Unknown macro: { "name"}

      ,
      { "name": "Uniq"[truncated 3501 chars]; line: 41, column: 15] (through reference chain: org.apache.flink.table.explain.PlanTree["nodes"]->java.util.ArrayList[1])

      at org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.JsonMappingException.wrapWithPath(JsonMappingException.java:394)
      at org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.JsonMappingException.wrapWithPath(JsonMappingException.java:365)
      at org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.deser.std.CollectionDeserializer.deserialize(CollectionDeserializer.java:302)
      at org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.deser.std.CollectionDeserializer.deserialize(CollectionDeserializer.java:245)
      at org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.deser.std.CollectionDeserializer.deserialize(CollectionDeserializer.java:27)
      at org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.deser.impl.FieldProperty.deserializeAndSet(FieldProperty.java:138)
      at org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.deser.BeanDeserializer.vanillaDeserialize(BeanDeserializer.java:288)
      at org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.deser.BeanDeserializer.deserialize(BeanDeserializer.java:151)
      at org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:4202)
      at org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:3205)
      at org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:3173)
      at org.apache.flink.table.explain.PlanJsonParser.getSqlExecutionPlan(PlanJsonParser.java:42)
      at org.apache.flink.table.api.internal.BatchTableEnvImpl.explain(BatchTableEnvImpl.scala:208)
      at org.apache.flink.table.api.internal.BatchTableEnvImpl.explain(BatchTableEnvImpl.scala:223)

      Attachments

        Activity

          People

            Unassigned Unassigned
            godfreyhe godfrey he
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: