morozov commented on PR #3646: URL: https://github.com/apache/flink-cdc/pull/3646#issuecomment-2417745420
@lvyanquan please see the temporary reproducer in the second commit. > and I don't get the point that you said "the sink never receives the end-of-input signal", can you provide a more detailed description? I got confused. The problem is not that the sink never receives the end-of-input signal but that the two-phase committing sink doesn't commit the last checkpoint. In order to reproduce the issue I had to make the following temporary changes: 1. Make `ValuesSink` a `TwoPhaseCommittingSink`. 2. Bypass the usage of reflection in `DataSinkTranslator`. Otherwise, the test would fail with an IllegalAccessException, which I didn't know how to address. The point is that with the fix from the first commit, when the newly added test runs, it produces the following log message: https://github.com/apache/flink-cdc/blob/2274b7ea82635787df5b6020b2c3d556e0385136/flink-cdc-connect/flink-cdc-pipeline-connectors/flink-cdc-pipeline-connector-values/src/main/java/org/apache/flink/cdc/connectors/values/sink/ValuesDataSink.java#L123 > 4890 [PostPartition -> Sink Writer: Value Sink -> Sink Committer: Value Sink (1/1)#0] INFO org.apache.flink.cdc.connectors.values.sink.ValuesDataSink$ValuesSink - Find me in the logs. Committing 1 committables. If the first commit is reverted, this message won't be produced because the sink won't commit. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@flink.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org