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

Reflections logs excessive warnings when scanning classpaths

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 0.10.0.0, 0.10.0.1, 0.10.1.0, 0.10.1.1, 0.10.2.0, 0.10.2.1
    • 0.11.0.0
    • connect

    Description

      We use Reflections to scan the classpath for available plugins (connectors, converters, transformations), but when doing so Reflections tends to generate a lot of log noise like this:

      [2017-05-12 14:59:48,224] WARN could not get type for name org.jboss.netty.channel.SimpleChannelHandler from any class loader (org.reflections.Reflections:396)
      org.reflections.ReflectionsException: could not get type for name org.jboss.netty.channel.SimpleChannelHandler
      	at org.reflections.ReflectionUtils.forName(ReflectionUtils.java:390)
      	at org.reflections.Reflections.expandSuperTypes(Reflections.java:381)
      	at org.reflections.Reflections.<init>(Reflections.java:126)
      	at org.apache.kafka.connect.runtime.PluginDiscovery.scanClasspathForPlugins(PluginDiscovery.java:68)
      	at org.apache.kafka.connect.runtime.AbstractHerder$1.run(AbstractHerder.java:391)
      	at java.lang.Thread.run(Thread.java:745)
      Caused by: java.lang.ClassNotFoundException: org.jboss.netty.channel.SimpleChannelHandler
      	at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
      	at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
      	at java.security.AccessController.doPrivileged(Native Method)
      	at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
      	at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
      	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
      	at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
      	at org.reflections.ReflectionUtils.forName(ReflectionUtils.java:388)
      	... 5 more
      

      Despite being benign, these warnings worry users, especially first time users.

      We should either a) see if we can get Reflections to turn off these specific warnings via some config or b) make Reflections only log at > WARN by default in our log4j config. (b) is probably safe since we should only be seeing these at startup and I don't think I've seen any actual issue logged at WARN.

      Attachments

        Issue Links

          Activity

            People

              bharat Bharat Viswanadham
              ewencp Ewen Cheslack-Postava
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: