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

Peter Vary commented on FLINK-25857:
------------------------------------

If you check the discussion [1] the diamond inheritance of the 
`Sink.createWriter` method prevents any backward compatible change of the 
method. One could argue that this is a flawed design.

*About the process and the compatibility*
[~Weijie Guo]: Here is my understanding of the FLIP process, please correct me, 
if I am wrong somewhere:
- If there is a change which modifies or creates a new API we should create a 
FLIP to discuss the change [2]
- We start the discussion on the mailing list, so everyone who is interested 
in, could participate [3]
- If there is a consensus on the design, we start a voting thread [4]
- If the voting is successful, we announce the result and close the FLIP [5]
- If during the implementation we found issues we discuss it there - we do not 
modify the finalised FLIP [6]

Maybe it would be good to have an additional step, that when there is a change 
related to the original design of the FLIP. We should send a letter to the 
mailing list as well, to notify interested parties who are not following the 
actual implementation.

About the deprecation process, I have been working based on the API 
compatibility guarantees [7] stated in the docs. Based on the table there a 
PublicEvolving API should be source and binary compatible for patch releases, 
but there is no guarantees for minor releases. Maybe the same redesign process 
happened during the implementation of FLIP-321 [8]? I was not involved there, 
so I do not have a first hand information.

[1] - https://github.com/apache/flink/pull/23555#discussion_r1371740397
[2] - 
https://cwiki.apache.org/confluence/display/FLINK/FLIP-371%3A+Provide+initialization+context+for+Committer+creation+in+TwoPhaseCommittingSink
[3] - https://lists.apache.org/thread/v3mrspdlrqrzvbwm0lcgr0j4v03dx97c
[4] - https://lists.apache.org/thread/4f7w4n3nywk8ygnwlxk39oncl3cntp3n
[5] - https://lists.apache.org/thread/jw39s55tzzpdkzmlh0vshmjnfrjg02nr
[6] - https://github.com/apache/flink/pull/23555#discussion_r1369177945
[7] - 
https://nightlies.apache.org/flink/flink-docs-master/docs/ops/upgrading/#api-compatibility-guarantees
[8] - 
https://cwiki.apache.org/confluence/display/FLINK/FLIP-321%3A+Introduce+an+API+deprecation+process



> Add committer metrics to track the status of committables
> ---------------------------------------------------------
>
>                 Key: FLINK-25857
>                 URL: https://issues.apache.org/jira/browse/FLINK-25857
>             Project: Flink
>          Issue Type: Sub-task
>          Components: Connectors / Common
>            Reporter: Fabian Paul
>            Assignee: Peter Vary
>            Priority: Major
>              Labels: pull-request-available
>             Fix For: 1.19.0
>
>         Attachments: image-2023-10-20-17-23-09-595.png, screenshot-1.png
>
>
> With Sink V2 we can now track the progress of a committable during committing 
> and show metrics about the committing status. (i.e. failed, retried, 
> succeeded).



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to