Himanshu created HDFS-8750:
------------------------------
Summary: FIleSystem does not honor Configuration.getClassLoader()
while loading FileSystem implementations
Key: HDFS-8750
URL: https://issues.apache.org/jira/browse/HDFS-8750
Project: Hadoop HDFS
Issue Type: Bug
Components: fs, HDFS
Reporter: Himanshu
In FileSystem.loadFileSystems(), at
https://github.com/apache/hadoop/blob/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/FileSystem.java#L2652
a "scheme" -> "FileSystem implementation" map is created from the jars
available on classpath. It uses Thread.currentThread().getClassLoader() via
ServiceLoader.load(FileSystem.class)
Instead, loadFileSystems() should take Configuration as an argument and should
first check if a classloader is configured in configuration.getClassLoader(),
if yes then ServiceLoader.load(FileSystem.class,
configuration.getClassLoader()) should be used.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)