You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by "Yun Tang (Jira)" <ji...@apache.org> on 2020/12/07 03:30:00 UTC

[jira] [Commented] (FLINK-20480) Methods from CheckpointedFunction interface in FlinkKafkaConsumerBase are set to final

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

Yun Tang commented on FLINK-20480:
----------------------------------

I think setting {{CheckpointedFunction}} interfaces as final in {{FlinkKafkaConsumerBase}} is to ensure the snapshot & restore logic is not open for users within Kafka connector. Maybe kafka connector guys could help answer more.


You could implement a {{DataStreamSource}} wrapping {{FlinkKafkaConsumerBase}} which extends {{AbstractUdfStreamOperator}} and you could add some logic in {{AbstractUdfStreamOperator#snapshotState}} which is still open for users.

> Methods from CheckpointedFunction interface in FlinkKafkaConsumerBase are set to final
> --------------------------------------------------------------------------------------
>
>                 Key: FLINK-20480
>                 URL: https://issues.apache.org/jira/browse/FLINK-20480
>             Project: Flink
>          Issue Type: Wish
>          Components: Connectors / Kafka
>         Environment: Flink 1.11
>            Reporter: lidesheng
>            Priority: Major
>
>  I created a subclass from FlinkKafkaConsumerBase and wanna add some logic in checkpoint snapshot. I failed to do it because methods from CheckpointedFunction interface in FlinkKafkaConsumerBase are set to final. understand that these methods are set to final because offsets are required to hold and commit, so they do not want to be overridden by subclasses. Can we provide an additional abstract method to provide subclasses for their own state related operations? Call it in then end of final method default logic is emtpy. 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)