Ewen Cheslack-Postava created KAFKA-3487:
--------------------------------------------

             Summary: Support per-connector/per-task classloaders in Connect
                 Key: KAFKA-3487
                 URL: https://issues.apache.org/jira/browse/KAFKA-3487
             Project: Kafka
          Issue Type: New Feature
          Components: copycat
    Affects Versions: 0.10.0.0
            Reporter: Ewen Cheslack-Postava
            Assignee: Ewen Cheslack-Postava


Currently we just use the default ClassLoader in Connect. However, this limits 
how we can compatibly load conflicting connector plugins. Ideally we would use 
a separate class loader per connector/task that is instantiated to avoid 
potential conflicts.

Note that this also opens up options for other ways to provide jars to 
instantiate connectors. For example, Spark uses this to dynamically publish 
classes defined in the REPL and load them via URL: 
https://ardoris.wordpress.com/2014/03/30/how-spark-does-class-loading/ But much 
simpler examples (include URL in the connector class instead of just class 
name) are also possible and could be a nice way to more support dynamic sets of 
connectors, multiple versions of the same connector, etc.




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to