Class ProcTimeRowsBoundedPrecedingFunction<K>

  • All Implemented Interfaces:
    Serializable, org.apache.flink.api.common.functions.Function, org.apache.flink.api.common.functions.RichFunction, CleanupState

    public class ProcTimeRowsBoundedPrecedingFunction<K>
    extends KeyedProcessFunctionWithCleanupState<K,​org.apache.flink.table.data.RowData,​org.apache.flink.table.data.RowData>
    Process Function for ROW clause processing-time bounded OVER window.

    E.g.: SELECT currtime, b, c, min(c) OVER (PARTITION BY b ORDER BY proctime ROWS BETWEEN 1 PRECEDING AND CURRENT ROW), max(c) OVER (PARTITION BY b ORDER BY proctime ROWS BETWEEN 1 PRECEDING AND CURRENT ROW) FROM T.

    See Also:
    Serialized Form
    • Constructor Detail

      • ProcTimeRowsBoundedPrecedingFunction

        public ProcTimeRowsBoundedPrecedingFunction​(long minRetentionTime,
                                                    long maxRetentionTime,
                                                    GeneratedAggsHandleFunction genAggsHandler,
                                                    org.apache.flink.table.types.logical.LogicalType[] accTypes,
                                                    org.apache.flink.table.types.logical.LogicalType[] inputFieldTypes,
                                                    long precedingOffset)
    • Method Detail

      • open

        public void open​(org.apache.flink.api.common.functions.OpenContext openContext)
                  throws Exception
        Throws:
        Exception
      • processElement

        public void processElement​(org.apache.flink.table.data.RowData input,
                                   org.apache.flink.streaming.api.functions.KeyedProcessFunction.Context ctx,
                                   org.apache.flink.util.Collector<org.apache.flink.table.data.RowData> out)
                            throws Exception
        Specified by:
        processElement in class org.apache.flink.streaming.api.functions.KeyedProcessFunction<K,​org.apache.flink.table.data.RowData,​org.apache.flink.table.data.RowData>
        Throws:
        Exception
      • onTimer

        public void onTimer​(long timestamp,
                            org.apache.flink.streaming.api.functions.KeyedProcessFunction.OnTimerContext ctx,
                            org.apache.flink.util.Collector<org.apache.flink.table.data.RowData> out)
                     throws Exception
        Overrides:
        onTimer in class org.apache.flink.streaming.api.functions.KeyedProcessFunction<K,​org.apache.flink.table.data.RowData,​org.apache.flink.table.data.RowData>
        Throws:
        Exception
      • close

        public void close()
                   throws Exception
        Specified by:
        close in interface org.apache.flink.api.common.functions.RichFunction
        Overrides:
        close in class org.apache.flink.api.common.functions.AbstractRichFunction
        Throws:
        Exception