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

Legacy planner incompatible with Timestamp backed by LocalDateTime

    XMLWordPrintableJSON

Details

    Description

      Recently I upgraded a simple application that inserts static data into a table from 1.9.0 to 1.10.0, and
      encountered a timestamp type incompatibility problem during the table sink validation.

      The SQL is like:
      ```
      insert into kafka.test.tbl_a # schema: (user_name STRING, user_id INT, login_time TIMESTAMP)
      select ("ann", 1000, TIMESTAMP "2019-12-30 00:00:00")
      ```

      And the error thrown:
      ```
      Field types of query result and registered TableSink `kafka`.`test`.`tbl_a` do not match.
      Query result schema: [EXPR$0: String, EXPR$1: Integer, EXPR$2: Timestamp]
      TableSink schema: [user_name: String, user_id: Integer, login_time: LocalDateTime]
      ```

      After some digging, I found the root cause might be that since FLINK-14645 timestamp fields defined via TableFactory had been bridged to LocalDateTime, but timestamp functions are still backed by java.sql.Timestamp.

      Attachments

        Activity

          People

            Unassigned Unassigned
            Paul Lin Paul Lin
            Votes:
            0 Vote for this issue
            Watchers:
            7 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: