You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jira@kafka.apache.org by "Konstantine Karantasis (JIRA)" <ji...@apache.org> on 2019/05/23 16:00:00 UTC
[jira] [Updated] (KAFKA-8415) Interface
ConnectorClientConfigOverridePolicy needs to be excluded from class loading
isolation
[ 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)