[
https://issues.apache.org/jira/browse/FLINK-13253?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jark Wu resolved FLINK-13253.
-----------------------------
Resolution: Fixed
Fixed in
- 1.10.0:
https://github.com/apache/flink/commit/30587cbc68f881cc7cc43c83b3551902fd05c9c9
- 1.9.0:
https://github.com/apache/flink/commit/98a4b6042769e21c33a8be6b63de9de0327d4e85
> Deadlock may occur in JDBCUpsertOutputFormat
> --------------------------------------------
>
> Key: FLINK-13253
> URL: https://issues.apache.org/jira/browse/FLINK-13253
> Project: Flink
> Issue Type: Bug
> Components: Connectors / JDBC
> Affects Versions: 1.9.0
> Reporter: Jingsong Lee
> Assignee: Jingsong Lee
> Priority: Major
> Labels: pull-request-available
> Fix For: 1.9.0, 1.10.0
>
> Time Spent: 0.5h
> Remaining Estimate: 0h
>
> In close, it await the flush scheduler terminal, but it hold the lock of
> JDBCUpsertOutputFormat instance, maybe the async thread is waiting for this
> lock in the flush method, so there might be a deadlock here.
> First, it should not await scheduler terminal, because it has flushed all
> data to jdbc, what we should do is let async thread quit.
> Second, we should add lock outside the closed check in the flusher, in this
> way, we can ensure async thread secure exiting.
--
This message was sent by Atlassian JIRA
(v7.6.14#76016)