Github user parthchandra commented on a diff in the pull request:
https://github.com/apache/drill/pull/1079#discussion_r159508398
--- Diff:
exec/java-exec/src/main/java/org/apache/drill/exec/rpc/user/UserClient.java ---
@@ -344,7 +344,18 @@ private boolean
clientNeedsAuthExceptPlain(DrillProperties props) {
mechanismName = factory.getSimpleName();
logger.trace("Will try to authenticate to server using {} mechanism
with encryption context {}",
mechanismName, connection.getEncryptionCtxtString());
+
+ // Update the thread context class loader to current class loader
+ // See DRILL-6063 for detailed description
+ final ClassLoader oldThreadCtxtCL =
Thread.currentThread().getContextClassLoader();
+ final ClassLoader newThreadCtxtCL = this.getClass().getClassLoader();
+ Thread.currentThread().setContextClassLoader(newThreadCtxtCL);
+
--- End diff --
makes sense
---