Uploaded image for project: 'Kafka'
  1. Kafka
  2. KAFKA-8415

Interface ConnectorClientConfigOverridePolicy needs to be excluded from class loading isolation

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Blocker
    • Resolution: Fixed
    • 2.3.0
    • 2.3.0
    • connect
    • None

    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: 

      [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)
      
      

      Attachments

        Issue Links

          Activity

            People

              kkonstantine Konstantine Karantasis
              kkonstantine Konstantine Karantasis
              Randall Hauch Randall Hauch
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: