gharris1727 commented on PR #14055:
URL: https://github.com/apache/kafka/pull/14055#issuecomment-1652619220

   > The question of plugins that are installed directly onto the classpath 
might be a bit tricky... let me know if I've missed something. My current 
understanding is that these plugins will continue to be available on the worker 
regardless of which discovery mode is used (with the possible exception of 
HYBRID_FAIL, if they prevent workers from starting up), but that they may not 
be visible in portions of the REST API (I'm thinking GET /connector-plugins, 
though there may be others).
   
   > This is incorrect, and I think i've contributed to the confusion, sorry.
   
   I apologize, you are correct, and I was the one who was confused. Because 
someone can still specify the classname directly, and that classname is 
loadable in the AppClassLoader, then the plugin will still be "usable", but 
aliases will be missing and it will be hidden from the REST API.
   
   I don't think it's possible to make the classpath and plugins behave the 
consistently in this case. If SERVICE_LOAD doesn't discover the plugin, then 
it's indistinguishable from a non-plugin in the 
DelegatingClassLoader#loadClass. And we have to allow non-plugins to delegate 
upwards, because that's how every other class is loaded. We would make a 
situation where the runtime can't load a classpath plugin but the plugins can, 
which is a bit silly. Do you think this behavior is worth changing?
   
   I've updated the documentation string (and site docs) to be intentionally 
vague and say "may not be usable" to cover both cases, let me know if you'd 
like to adjust that.
   
   Also just small style choice: Do you think we should use all-caps or 
lowercase values for this configuration in docs?


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: jira-unsubscr...@kafka.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to