[ 
https://issues.apache.org/jira/browse/KAFKA-8415?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Konstantine Karantasis updated KAFKA-8415:
------------------------------------------
    Description: 
Classes or interfaces that implement {{ConnectorClientConfigOverridePolicy}} 
were recently added in Connect as plugins that can be loaded in class loading 
isolation. 

However the interface itself was not excluded from isolation itself, which 
results into definition conflicts. Any interface that is considered a base 
Connect plugin interface needs to be excluded by isolation itself (it's 
considered a "system" type). 

Here's the exception: 
{code:java}
[2019-05-23 15:16:57,802] ERROR Stopping due to error 
(org.apache.kafka.connect.cli.ConnectDistributed:84)
java.util.ServiceConfigurationError: 
org.apache.kafka.connect.connector.policy.ConnectorClientConfigOverridePolicy: 
Provider 
org.apache.kafka.connect.connector.policy.AllConnectorClientConfigOverridePolicy
 not a subtype
at java.util.ServiceLoader.fail(ServiceLoader.java:239)
at java.util.ServiceLoader.access$300(ServiceLoader.java:185)
at java.util.ServiceLoader$LazyIterator.nextService(ServiceLoader.java:376)
at java.util.ServiceLoader$LazyIterator.next(ServiceLoader.java:404)
at java.util.ServiceLoader$1.next(ServiceLoader.java:480)
at 
org.apache.kafka.connect.runtime.isolation.DelegatingClassLoader.getServiceLoaderPluginDesc(DelegatingClassLoader.java:343)
at 
org.apache.kafka.connect.runtime.isolation.DelegatingClassLoader.scanPluginPath(DelegatingClassLoader.java:317)
at 
org.apache.kafka.connect.runtime.isolation.DelegatingClassLoader.scanUrlsAndAddPlugins(DelegatingClassLoader.java:244)
at 
org.apache.kafka.connect.runtime.isolation.DelegatingClassLoader.registerPlugin(DelegatingClassLoader.java:236)
at 
org.apache.kafka.connect.runtime.isolation.DelegatingClassLoader.initPluginLoader(DelegatingClassLoader.java:205)
at 
org.apache.kafka.connect.runtime.isolation.DelegatingClassLoader.initLoaders(DelegatingClassLoader.java:182)
at org.apache.kafka.connect.runtime.isolation.Plugins.<init>(Plugins.java:61)
at 
org.apache.kafka.connect.cli.ConnectDistributed.startConnect(ConnectDistributed.java:91)
at 
org.apache.kafka.connect.cli.ConnectDistributed.main(ConnectDistributed.java:78)

{code}

  was:
Classes or interfaces that implement {{ConnectorClientConfigOverridePolicy}} 
were recently added in Connect as plugins that can be loaded in class loading 
isolation. 

However the interface itself was not excluded from isolation itself, which 
results into definition conflicts. Any interface that is considered a base 
Connect plugin interface needs to be excluded by isolation itself (it's 
considered a "system" type). 

Here's the exception: 
{code:java}
[2019-05-23 15:16:57,802] ERROR Stopping due to error 
(org.apache.kafka.connect.cli.ConnectDistributed:84) 
java.util.ServiceConfigurationError: 
org.apache.kafka.connect.connector.policy.ConnectorClientConfigOverridePolicy: 
Provider 
org.apache.kafka.connect.connector.policy.AllConnectorClientConfigOverridePolicy
 not a subtype         at java.util.ServiceLoader.fail(ServiceLoader.java:239)  
       at java.util.ServiceLoader.access$300(ServiceLoader.java:185)         at 
java.util.ServiceLoader$LazyIterator.nextService(ServiceLoader.java:376)        
 at java.util.ServiceLoader$LazyIterator.next(ServiceLoader.java:404)         
at java.util.ServiceLoader$1.next(ServiceLoader.java:480)         at 
org.apache.kafka.connect.runtime.isolation.DelegatingClassLoader.getServiceLoaderPluginDesc(DelegatingClassLoader.java:343)
         at 
org.apache.kafka.connect.runtime.isolation.DelegatingClassLoader.scanPluginPath(DelegatingClassLoader.java:317)
         at 
org.apache.kafka.connect.runtime.isolation.DelegatingClassLoader.scanUrlsAndAddPlugins(DelegatingClassLoader.java:244)
         at 
org.apache.kafka.connect.runtime.isolation.DelegatingClassLoader.registerPlugin(DelegatingClassLoader.java:236)
         at 
org.apache.kafka.connect.runtime.isolation.DelegatingClassLoader.initPluginLoader(DelegatingClassLoader.java:205)
         at 
org.apache.kafka.connect.runtime.isolation.DelegatingClassLoader.initLoaders(DelegatingClassLoader.java:182)
         at 
org.apache.kafka.connect.runtime.isolation.Plugins.<init>(Plugins.java:61)      
   at 
org.apache.kafka.connect.cli.ConnectDistributed.startConnect(ConnectDistributed.java:91)
         at 
org.apache.kafka.connect.cli.ConnectDistributed.main(ConnectDistributed.java:78)
{code}


> Interface ConnectorClientConfigOverridePolicy needs to be excluded from class 
> loading isolation
> -----------------------------------------------------------------------------------------------
>
>                 Key: KAFKA-8415
>                 URL: https://issues.apache.org/jira/browse/KAFKA-8415
>             Project: Kafka
>          Issue Type: Bug
>          Components: KafkaConnect
>    Affects Versions: 2.3.0
>            Reporter: Konstantine Karantasis
>            Assignee: Konstantine Karantasis
>            Priority: Blocker
>             Fix For: 2.3.0
>
>
> Classes or interfaces that implement {{ConnectorClientConfigOverridePolicy}} 
> were recently added in Connect as plugins that can be loaded in class loading 
> isolation. 
> However the interface itself was not excluded from isolation itself, which 
> results into definition conflicts. Any interface that is considered a base 
> Connect plugin interface needs to be excluded by isolation itself (it's 
> considered a "system" type). 
> Here's the exception: 
> {code:java}
> [2019-05-23 15:16:57,802] ERROR Stopping due to error 
> (org.apache.kafka.connect.cli.ConnectDistributed:84)
> java.util.ServiceConfigurationError: 
> org.apache.kafka.connect.connector.policy.ConnectorClientConfigOverridePolicy:
>  Provider 
> org.apache.kafka.connect.connector.policy.AllConnectorClientConfigOverridePolicy
>  not a subtype
> at java.util.ServiceLoader.fail(ServiceLoader.java:239)
> at java.util.ServiceLoader.access$300(ServiceLoader.java:185)
> at java.util.ServiceLoader$LazyIterator.nextService(ServiceLoader.java:376)
> at java.util.ServiceLoader$LazyIterator.next(ServiceLoader.java:404)
> at java.util.ServiceLoader$1.next(ServiceLoader.java:480)
> at 
> org.apache.kafka.connect.runtime.isolation.DelegatingClassLoader.getServiceLoaderPluginDesc(DelegatingClassLoader.java:343)
> at 
> org.apache.kafka.connect.runtime.isolation.DelegatingClassLoader.scanPluginPath(DelegatingClassLoader.java:317)
> at 
> org.apache.kafka.connect.runtime.isolation.DelegatingClassLoader.scanUrlsAndAddPlugins(DelegatingClassLoader.java:244)
> at 
> org.apache.kafka.connect.runtime.isolation.DelegatingClassLoader.registerPlugin(DelegatingClassLoader.java:236)
> at 
> org.apache.kafka.connect.runtime.isolation.DelegatingClassLoader.initPluginLoader(DelegatingClassLoader.java:205)
> at 
> org.apache.kafka.connect.runtime.isolation.DelegatingClassLoader.initLoaders(DelegatingClassLoader.java:182)
> at org.apache.kafka.connect.runtime.isolation.Plugins.<init>(Plugins.java:61)
> at 
> org.apache.kafka.connect.cli.ConnectDistributed.startConnect(ConnectDistributed.java:91)
> at 
> org.apache.kafka.connect.cli.ConnectDistributed.main(ConnectDistributed.java:78)
> {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to