[ https://issues.apache.org/jira/browse/FLINK-19435?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17245646#comment-17245646 ]
Jark Wu commented on FLINK-19435: --------------------------------- I'm also fine with the Spark way: https://github.com/apache/spark/blob/master/sql/core/src/main/scala/org/apache/spark/sql/execution/datasources/jdbc/DriverRegistry.scala#L41 which looks like not change a lot. > jdbc JDBCOutputFormat open function invoke Class.forName(drivername) > -------------------------------------------------------------------- > > Key: FLINK-19435 > URL: https://issues.apache.org/jira/browse/FLINK-19435 > Project: Flink > Issue Type: Improvement > Components: Connectors / JDBC > Affects Versions: 1.10.2 > Reporter: xiaodao > Priority: Major > Fix For: 1.13.0, 1.12.1 > > Attachments: image-2020-10-09-20-48-48-261.png, > image-2020-10-09-20-49-23-644.png > > > when we sink data to multi jdbc outputformat , > {code} > protected void establishConnection() throws SQLException, > ClassNotFoundException { > Class.forName(drivername); > if (username == null) { > connection = DriverManager.getConnection(dbURL); > } else { > connection = DriverManager.getConnection(dbURL, username, password); > } > } > {code} > may cause jdbc driver deadlock. it need to change to synchronized function. -- This message was sent by Atlassian Jira (v8.3.4#803005)