[ https://issues.apache.org/jira/browse/KAFKA-14649?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Greg Harris updated KAFKA-14649: -------------------------------- Summary: Failures instantiating Connect plugins hides other plugins from REST API (was: Failures instantiating Connect plugins crash worker on startup) > Failures instantiating Connect plugins hides other plugins from REST API > ------------------------------------------------------------------------ > > Key: KAFKA-14649 > URL: https://issues.apache.org/jira/browse/KAFKA-14649 > Project: Kafka > Issue Type: Bug > Components: KafkaConnect > Affects Versions: 3.1.0, 3.0.0, 3.2.0, 3.3.0, 3.4.0 > Reporter: Greg Harris > Assignee: Greg Harris > Priority: Minor > > Connect plugin path scanning evaluates the version() method of plugins to > determine which version of a plugin to load, and what version to advertise as > part of the REST API. This process involves reflectively constructing an > instance of the class and calling the version method, which can fail in the > following scenarios: > 1. If a plugin throws an exception from a static initialization block > 2. If a plugin does not have a default constructor (such as a non-static > inner class) > 3. If a plugin has a default constructor is not public > 4. If a plugin throws an exception from the default constructor > 5. If a plugin's version method throws an exception > If any of the above is true for any single connector or rest extension on the > classpath or plugin.path, the worker will fail to start up entirely. This is > primarily an issue in development and test environments, because they are > easy-to-make code mistakes that would generally not make it to a release. > It is desirable for the worker to instead log these exceptions and continue. > This will prevent one mis-implemented plugin from affecting other plugins, > while still causing integration tests to fail against the plugin itself. We > can augment logging to make it clear how to correct these failures, where > before it was rather opaque and difficult to debug. -- This message was sent by Atlassian Jira (v8.20.10#820010)