GitHub user pnowojski opened a pull request: https://github.com/apache/flink/pull/4561
[FLINK-7476][streaming] Continue using previous transaction on failures First commit comes from #4557. Previously when using TwoPhaseCommitSinkFunction, if there was some intermittent failure in "beginTransaction", not only the snapshot that triggered this call failed, but also any subsequent write requests would fail also. This caused such sink unusable until application restart. This PR changes order of execution of the methods from `PublicEvolving` class that has not been yet released. PR is covered by existing tests in `TwoPhaseCommitSinkFunctionTest` as well as two additional test cases (`testContinueWorkOnBeginTransactionFailure` would be failing before this PR). You can merge this pull request into a Git repository by running: $ git pull https://github.com/pnowojski/flink 2phase-recover Alternatively you can review and apply these changes as the patch at: https://github.com/apache/flink/pull/4561.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #4561 ---- commit 813c8121b406b60ea478f4765b33b7d75c221d1e Author: Piotr Nowojski <piotr.nowoj...@gmail.com> Date: 2017-08-14T14:40:45Z [hotifx][streaming] Simplify state of TwoPhaseCommitSinkFunction commit 249b6419af3d15414dc411838aba624d0ee2f3a1 Author: Piotr Nowojski <piotr.nowoj...@gmail.com> Date: 2017-08-14T13:09:39Z [hotfix][tests] Implement AutoCloseable in TestHarness commit a0ae6324dcaded581a3352c8ff4bae6e86e01fde Author: Piotr Nowojski <piotr.nowoj...@gmail.com> Date: 2017-08-17T13:46:47Z [hotfix][streaming] Refactor TwoPhaseCommitSinkFunctionTest commit e3c7dc83ccbce2505be5769fa0827b09dfa54875 Author: Piotr Nowojski <piotr.nowoj...@gmail.com> Date: 2017-08-17T10:29:16Z [FLINK-7476][streaming] Continue using previous transaction on failures Previuosly when using TwoPhaseCommitSinkFunction, if there was some intermittent failure in "beginTransaction", not only the snapshot that triggered this call failed, but also any subsequent write requests would fail also. This caused such sink unusable until application restart. ---- --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---