richardstartin commented on pull request #7400: URL: https://github.com/apache/pinot/pull/7400#issuecomment-923962965
@kkrugler I had a deeper look at this. I think adding the URLs to `PluginClassLoader.class.getClassLoader()` is an historical workaround for plugin classes being loaded through the wrong class loader. It's unfortunate because it breaks isolation between plugins (loading a plugin modifies `PluginClassLoader.class.getClassLoader()`'s classpath) and it's nondeterministic (when there are conflicts between different plugins, `PluginClassLoader.class.getClassLoader()` will load different classes depending on the order plugins are loaded). This mechanism also won't work on JDK9+ but it solves a problem for JDK8 users by reinstating the workaround. I would like to rework this mechanism entirely so that plugins are isolated properly and this step isn't necessary, but don't want to get in the way of you fixing this for JDK8 users. -- 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: commits-unsubscr...@pinot.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@pinot.apache.org For additional commands, e-mail: commits-h...@pinot.apache.org