You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@kafka.apache.org by "Konstantine Karantasis (JIRA)" <ji...@apache.org> on 2017/11/28 03:20:01 UTC

[jira] [Created] (KAFKA-6277) Make loadClass thread-safe for class loaders of Connect plugins

Konstantine Karantasis created KAFKA-6277:
---------------------------------------------

             Summary: Make loadClass thread-safe for class loaders of Connect plugins
                 Key: KAFKA-6277
                 URL: https://issues.apache.org/jira/browse/KAFKA-6277
             Project: Kafka
          Issue Type: Bug
          Components: KafkaConnect
    Affects Versions: 0.11.0.2, 1.0.0
            Reporter: Konstantine Karantasis
            Assignee: Konstantine Karantasis
             Fix For: 1.0.1, 0.11.0.3



In Connect's classloading isolation framework, {{PluginClassLoader}} class encounters a race condition when several threads corresponding to tasks using a specific plugin (e.g. a Connector) try to load the same class at the same time on a single JVM. 

The race condition is related to calls to method {{defineClass}} which, contract to {{findClass}}, is not thread safe for classloaders that override {{loadClass}}. More details here: 

https://docs.oracle.com/javase/7/docs/technotes/guides/lang/cl-mt.html





--
This message was sent by Atlassian JIRA
(v6.4.14#64029)