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

Properly implements processing-time temporal table join

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Open
    • Major
    • Resolution: Unresolved
    • None
    • None
    • Table SQL / Runtime
    • None

    Description

      The exsiting TemporalProcessTimeJoinOperator has already supported temporal table join.
      However, the semantic of this implementation is problematic, because the join processing for left stream doesn't wait for the complete snapshot of temporal table, this may mislead users in production environment.

      Under the processing time temporal join semantics, to get the complete snapshot of temporal table may need introduce new mechanism in FLINK SQL in the future.

      *Background* :

      • The reason why we turn off the switch[1] for `FOR SYSTEM_TIME AS OF` syntax for temporal table join is only the semantic consideration as above.
      • The reason why we turn on temporal table function  is that it has been alive for a long time, thus although it exists same semantic problem, but we still support it from the perspective of compatibility.

      [1] https://github.com/apache/flink/blob/4fe9f525a92319acc1e3434bebed601306f7a16f/flink-table/flink-table-planner/src/main/java/org/apache/flink/table/planner/plan/nodes/exec/stream/StreamExecTemporalJoin.java#L257

      Attachments

        Activity

          People

            leonard Leonard Xu
            leonard Leonard Xu
            Votes:
            3 Vote for this issue
            Watchers:
            20 Start watching this issue

            Dates

              Created:
              Updated: