[
https://issues.apache.org/jira/browse/FLINK-13535?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
ASF GitHub Bot updated FLINK-13535:
-----------------------------------
Labels: pull-request-available (was: )
> Do not abort transactions twice during KafkaProducer startup
> ------------------------------------------------------------
>
> Key: FLINK-13535
> URL: https://issues.apache.org/jira/browse/FLINK-13535
> Project: Flink
> Issue Type: Improvement
> Components: Connectors / Kafka
> Affects Versions: 1.8.1, 1.9.0
> Reporter: Nico Kruber
> Assignee: Nico Kruber
> Priority: Major
> Labels: pull-request-available
>
> During startup of a transactional Kafka producer from previous state, we
> recover in two steps:
> # in {{TwoPhaseCommitSinkFunction}}, we commit pending commit-transactions
> and abort pending transactions and then call into
> {{finishRecoveringContext()}}
> # in {{FlinkKafkaProducer#finishRecoveringContext()}} we iterate over all
> recovered transaction IDs and abort them.
> This may lead to some transactions being worked on twice. Since this is quite
> some expensive operation, we unnecessarily slow down the job startup but
> could easily give {{finishRecoveringContext()}} a set of transactions that
> {{TwoPhaseCommitSinkFunction}} already covered instead.
--
This message was sent by Atlassian JIRA
(v7.6.14#76016)