[ 
https://issues.apache.org/jira/browse/FLINK-7337?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16124600#comment-16124600
 ] 

ASF GitHub Bot commented on FLINK-7337:
---------------------------------------

Github user wuchong commented on a diff in the pull request:

    https://github.com/apache/flink/pull/4488#discussion_r132818559
  
    --- Diff: 
flink-libraries/flink-table/src/main/scala/org/apache/flink/table/plan/nodes/datastream/StreamTableSourceScan.scala
 ---
    @@ -46,29 +47,29 @@ class StreamTableSourceScan(
         val fieldNames = TableEnvironment.getFieldNames(tableSource).toList
         val fieldTypes = 
TableEnvironment.getFieldTypes(tableSource.getReturnType).toList
     
    -    val fieldCnt = fieldNames.length
    +    val fields = fieldNames.zip(fieldTypes)
     
    -    val rowtime = tableSource match {
    +    val withRowtime = tableSource match {
           case timeSource: DefinedRowtimeAttribute if 
timeSource.getRowtimeAttribute != null =>
    --- End diff --
    
    For the `DefinedRowtimeAttribute`, we hope the rowtime field can replace an 
existing field. Just like register a DataStream, the rowtime field can be 
appended but also can replace an existing field.
    
    It is not related to this PR, but we can discuss it at here and to do it in 
a separate issue.


> Refactor handling of time indicator attributes
> ----------------------------------------------
>
>                 Key: FLINK-7337
>                 URL: https://issues.apache.org/jira/browse/FLINK-7337
>             Project: Flink
>          Issue Type: Improvement
>          Components: Table API & SQL
>    Affects Versions: 1.4.0
>            Reporter: Fabian Hueske
>            Assignee: Fabian Hueske
>
> After a [discussion on the dev mailing 
> list|https://lists.apache.org/thread.html/735d55f9022df8ff73566a9f1553e14be94f8443986ad46559b35869@%3Cdev.flink.apache.org%3E]
>  I propose the following changes to the current handling of time indicator 
> attributes:
> * Remove the separation of logical and physical row type.
> ** Hold the event-time timestamp as regular Long field in Row
> ** Represent the processing-time indicator type as a null-valued field in Row 
> (1 bit overhead)
> * Remove materialization of event-time timestamps because timestamp is 
> already accessible in Row.
> * Add {{ProcessFunction}} to set timestamp into the timestamp field of a 
> {{StreamRecord}}.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to