[ https://issues.apache.org/jira/browse/KAFKA-5953?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16192183#comment-16192183 ]
Randall Hauch edited comment on KAFKA-5953 at 10/4/17 11:07 PM: ---------------------------------------------------------------- A potential workaround is to put all of the JDBC driver JARs on the classpath. Obviously this is not ideal, and we're looking at a proper fix that hopefully will make 1.0. was (Author: rhauch): A potential workaround is to put all of the JDBC driver JARs on the classpath. Obviously this is not ideal, and we're looking at a proper fix for 1.0. > Connect classloader isolation may be broken for JDBC drivers > ------------------------------------------------------------ > > Key: KAFKA-5953 > URL: https://issues.apache.org/jira/browse/KAFKA-5953 > Project: Kafka > Issue Type: Bug > Components: KafkaConnect > Affects Versions: 0.11.0.0 > Reporter: Jiri Pechanec > Priority: Critical > > Let's suppose there are two connectors deployed > # using JDBC driver (Debezium MySQL connector) > # using PostgreSQL JDBC driver (JDBC sink). > Connector 1 is started first - it executes a statement > {code:java} > Connection conn = DriverManager.getConnection(url, props); > {code} > As a result a {{DriverManager}} calls {{ServiceLoader}} and searches for all > JDBC drivers. The postgres driver from connector 2) is found associated with > classloader from connector 1). > Connector 2 is started after that - it executes a statement > {code:java} > connection = DriverManager.getConnection(url, username, password); > {code} > DriverManager finds the connector that was loaded in step before but becuase > the classloader is different - now we use classloader 2) so it refuses to > load the class and no JDBC driver is found. -- This message was sent by Atlassian JIRA (v6.4.14#64029)