I reviewed this. The PR description (a bug fix) does not match the changes proposed (only adds a unit test). Feel free to ping me on the PR for follow-up review.
On Fri, Apr 24, 2026 at 10:38 AM Lalwani, Jayesh <[email protected]> wrote: > Hi all, > > I'd like to draw attention to HADOOP-19833 [1], which has an open PR [2] > that's been waiting for committer review since early March. > > The bug: fs.s3a.classloader.isolation=false has no effect because > S3AUtils.getInstanceFromReflection() hardcodes > S3AUtils.class.getClassLoader() instead of using the Configuration's > classloader set by maybeIsolateClassloader(). This means custom credential > providers loaded via application classpaths are invisible to S3A, resulting > in ClassNotFoundException. > > This is a regression introduced in 3.4.x during the SDK v1->v2 migration > and is actively impacting production workloads (Spark/Glue jobs using > custom AWS credential providers). > > The fix is straightforward -- use conf.getClassLoader() in > getInstanceFromReflection() instead of the hardcoded S3AUtils classloader. > The PR includes a unit test. > > Would a committer be able to take a look? Happy to help with any > additional testing or review needed to get this merged. > > [1] https://issues.apache.org/jira/browse/HADOOP-19833 > [2] https://github.com/apache/hadoop/pull/8303 > > Thanks, > Jayesh Lalwani >
