goutamadwant opened a new issue, #13106:
URL: https://github.com/apache/seatunnel/issues/13106

   ### Problem
   
   During #12983 restore testing, Flink sent restored committables through 
ordinary `commit` instead of `restoreCommit`, or lost their recovery status 
when retrying. If the external transaction committed before the failure, replay 
needs recovery reconciliation.
   
   Reproduced on the unreleased #11932 head 
`61eb51c29a5647288958da95e07ffdd34009c157`.
   
   ### Reproduction
   
   1. Restore a sink with pending committables from checkpoint/savepoint state.
   2. Pass them through aggregation/global commit, including a failed attempt 
and retry.
   3. Record the connector callback and retained retry requests.
   
   **Before:** `testLegacyRestoredCommittableUsesRecoveryCommit` expected 
`restoreCommit([batch])` but observed `commit([batch])`; separate probes lost 
recovery retries. **With the patch:** restored requests keep recovery handling 
through retries and partial progress. Fresh commits stay strict.
   
   ### Validation
   
   
[FlinkSimpleAggregatedCommitterTest](https://github.com/goutamadwant/seatunnel/blob/40627c9774b273700b03a8c9f9af536af312b1fe/seatunnel-translation/seatunnel-translation-flink/seatunnel-translation-flink-20/src/test/java/org/apache/seatunnel/translation/flink/sink/FlinkSimpleAggregatedCommitterTest.java)
 covers the legacy restore path. Additional tests cover recovery routing, 
serializers, retry failures and operator/state identities.
   
   Combined with the JDBC ownership and collector patches, the tree passed 62 
focused checks and nine native cases across Flink 1.13/1.15/1.18/1.20, 
including multi-table XA savepoint restore and worker loss. Full repository 
verify passed with tests skipped; tests ran separately. Hosted CI has not 
passed for the original branch; its failure is being investigated separately.
   
   ### Scope
   
   Track the 20-file Flink commit fix here. #12807 already handles API-level 
multi-table forwarding; #11958 covers the broader Flink schema protocol. 
Collector ownership/restore acceptance remains in #12983.
   
   Native configuration and job setup: [Flink restore 
fixture](https://github.com/goutamadwant/seatunnel/blob/0df6a72070699eaa6cacfbfa77ea9363e8999271/seatunnel-e2e/seatunnel-connector-v2-e2e/connector-cdc-mysql-e2e/src/test/java/org/apache/seatunnel/connectors/seatunnel/cdc/mysql/MysqlCDCWithFlinkSchemaChangeIT.java).
 Run `testFirstEvolvedRowsAfterSavepointRestoreExactlyOnce` after packaging the 
matching starter and MySQL CDC/JDBC connectors.
   


-- 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to