You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@spark.apache.org by "Apache Spark (Jira)" <ji...@apache.org> on 2021/11/30 03:01:00 UTC

[jira] [Commented] (SPARK-37486) an error occurred while using the udf jars located in the lakefs, a inner filesystem in Tencent Cloud DLC.

    [ https://issues.apache.org/jira/browse/SPARK-37486?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17450820#comment-17450820 ] 

Apache Spark commented on SPARK-37486:
--------------------------------------

User 'kevincmchen' has created a pull request for this issue:
https://github.com/apache/spark/pull/34742

> an error occurred while using the udf jars located in the lakefs, a inner filesystem in Tencent Cloud DLC.
> ----------------------------------------------------------------------------------------------------------
>
>                 Key: SPARK-37486
>                 URL: https://issues.apache.org/jira/browse/SPARK-37486
>             Project: Spark
>          Issue Type: Bug
>          Components: SQL
>    Affects Versions: 3.2.0
>            Reporter: Kevin Pis
>            Priority: Major
>
> when using livy to execute sql statements that will call the udf jars located in lakefs, a inner filesystem in Tencent Cloud DLC. it will threw the following exceptions:
>  
> {code:java}
> 21/11/25 21:12:43 ERROR Session: Exception when executing code
> java.lang.LinkageError: loader constraint violation: loader (instance of sun/misc/Launcher$AppClassLoader) previously initiated loading for a different type with name "com/qcloud/cos/auth/COSCredentials"
> 	at java.lang.ClassLoader.defineClass1(Native Method)
> 	at java.lang.ClassLoader.defineClass(ClassLoader.java:756)
> 	at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
> 	at java.net.URLClassLoader.defineClass(URLClassLoader.java:468)
> 	at java.net.URLClassLoader.access$100(URLClassLoader.java:74)
> 	at java.net.URLClassLoader$1.run(URLClassLoader.java:369)
> 	at java.net.URLClassLoader$1.run(URLClassLoader.java:363)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at java.net.URLClassLoader.findClass(URLClassLoader.java:362)
> 	at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
> 	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:352)
> 	at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
> 	at java.lang.Class.forName0(Native Method)
> 	at java.lang.Class.forName(Class.java:348)
> 	at org.apache.hadoop.conf.Configuration.getClassByNameOrNull(Configuration.java:2306)
> 	at org.apache.hadoop.conf.Configuration.getClassByName(Configuration.java:2271)
> 	at org.apache.hadoop.conf.Configuration.getClasses(Configuration.java:2344)
> 	at org.apache.hadoop.fs.CosNUtils.loadCosProviderClasses(CosNUtils.java:68)
> 	at org.apache.hadoop.fs.CosFileSystem.initRangerClientImpl(CosFileSystem.java:848)
> 	at org.apache.hadoop.fs.CosFileSystem.initialize(CosFileSystem.java:95)
> 	at com.tencent.cloud.fs.CompatibleFileSystem.initialize(CompatibleFileSystem.java:20)
> 	at com.tencent.cloud.fs.LakeFileSystem.initialize(LakeFileSystem.java:56)
> 	at org.apache.hadoop.fs.FileSystem.createFileSystem(FileSystem.java:2812)
> 	at org.apache.hadoop.fs.FileSystem.access$200(FileSystem.java:100)
> 	at org.apache.hadoop.fs.FileSystem$Cache.getInternal(FileSystem.java:2849)
> 	at org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:2831)
> 	at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:389)
> 	at org.apache.hadoop.fs.FsUrlConnection.connect(FsUrlConnection.java:49)
> 	at org.apache.hadoop.fs.FsUrlConnection.getInputStream(FsUrlConnection.java:59)
> 	at sun.net.www.protocol.jar.URLJarFile.retrieve(URLJarFile.java:214)
> 	at sun.net.www.protocol.jar.URLJarFile.getJarFile(URLJarFile.java:71)
> 	at sun.net.www.protocol.jar.JarFileFactory.get(JarFileFactory.java:84)
> 	at sun.net.www.protocol.jar.JarURLConnection.connect(JarURLConnection.java:122)
> 	at sun.net.www.protocol.jar.JarURLConnection.getJarFile(JarURLConnection.java:89)
> 	at sun.misc.URLClassPath$JarLoader.getJarFile(URLClassPath.java:944)
> 	at sun.misc.URLClassPath$JarLoader.access$800(URLClassPath.java:801)
> 	at sun.misc.URLClassPath$JarLoader$1.run(URLClassPath.java:886)
> 	at sun.misc.URLClassPath$JarLoader$1.run(URLClassPath.java:879)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at sun.misc.URLClassPath$JarLoader.ensureOpen(URLClassPath.java:878)
> 	at sun.misc.URLClassPath$JarLoader.<init>(URLClassPath.java:829)
> 	at sun.misc.URLClassPath$3.run(URLClassPath.java:575)
> 	at sun.misc.URLClassPath$3.run(URLClassPath.java:565)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at sun.misc.URLClassPath.getLoader(URLClassPath.java:564)
> 	at sun.misc.URLClassPath.getLoader(URLClassPath.java:529)
> 	at sun.misc.URLClassPath.getNextLoader(URLClassPath.java:494)
> 	at sun.misc.URLClassPath.access$100(URLClassPath.java:66)
> 	at sun.misc.URLClassPath$1.next(URLClassPath.java:276)
> 	at sun.misc.URLClassPath$1.hasMoreElements(URLClassPath.java:287)
> 	at java.net.URLClassLoader$3$1.run(URLClassLoader.java:604)
> 	at java.net.URLClassLoader$3$1.run(URLClassLoader.java:602)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at java.net.URLClassLoader$3.next(URLClassLoader.java:601)
> 	at java.net.URLClassLoader$3.hasMoreElements(URLClassLoader.java:626)
> 	at sun.misc.CompoundEnumeration.next(CompoundEnumeration.java:45)
> 	at sun.misc.CompoundEnumeration.hasMoreElements(CompoundEnumeration.java:54)
> 	at java.util.ServiceLoader$LazyIterator.hasNextService(ServiceLoader.java:354)
> 	at java.util.ServiceLoader$LazyIterator.hasNext(ServiceLoader.java:393)
> 	at java.util.ServiceLoader$1.hasNext(ServiceLoader.java:474)
> 	at javax.xml.stream.FactoryFinder$1.run(FactoryFinder.java:352)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at javax.xml.stream.FactoryFinder.findServiceProvider(FactoryFinder.java:341)
> 	at javax.xml.stream.FactoryFinder.find(FactoryFinder.java:313)
> 	at javax.xml.stream.FactoryFinder.find(FactoryFinder.java:227)
> 	at javax.xml.stream.XMLInputFactory.newInstance(XMLInputFactory.java:154)
> 	at com.qcloud.cos.internal.CosErrorResponseHandler.<clinit>(CosErrorResponseHandler.java:49)
> 	at com.qcloud.cos.http.DefaultCosHttpClient.<init>(DefaultCosHttpClient.java:92)
> 	at com.qcloud.cos.COSClient.<init>(COSClient.java:277)
> 	at org.apache.hadoop.fs.CosNativeFileSystemStore.initCOSClient(CosNativeFileSystemStore.java:188)
> 	at org.apache.hadoop.fs.CosNativeFileSystemStore.initialize(CosNativeFileSystemStore.java:194)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 	at java.lang.reflect.Method.invoke(Method.java:498)
> 	at org.apache.hadoop.io.retry.RetryInvocationHandler.invokeMethod(RetryInvocationHandler.java:409)
> 	at org.apache.hadoop.io.retry.RetryInvocationHandler$Call.invokeMethod(RetryInvocationHandler.java:163)
> 	at org.apache.hadoop.io.retry.RetryInvocationHandler$Call.invoke(RetryInvocationHandler.java:155)
> 	at org.apache.hadoop.io.retry.RetryInvocationHandler$Call.invokeOnce(RetryInvocationHandler.java:95)
> 	at org.apache.hadoop.io.retry.RetryInvocationHandler.invoke(RetryInvocationHandler.java:346)
> 	at com.sun.proxy.$Proxy38.initialize(Unknown Source)
> 	at org.apache.hadoop.fs.CosFileSystem.initialize(CosFileSystem.java:103)
> 	at com.tencent.cloud.fs.CompatibleFileSystem.initialize(CompatibleFileSystem.java:20)
> 	at com.tencent.cloud.fs.LakeFileSystem.initialize(LakeFileSystem.java:56)
> 	at org.apache.hadoop.fs.FileSystem.createFileSystem(FileSystem.java:2812)
> 	at org.apache.hadoop.fs.FileSystem.access$200(FileSystem.java:100)
> 	at org.apache.hadoop.fs.FileSystem$Cache.getInternal(FileSystem.java:2849)
> 	at org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:2831)
> 	at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:389)
> 	at org.apache.hadoop.hive.ql.util.ResourceDownloader.downloadResource(ResourceDownloader.java:103)
> 	at org.apache.hadoop.hive.ql.util.ResourceDownloader.resolveAndDownloadInternal(ResourceDownloader.java:88)
> 	at org.apache.hadoop.hive.ql.util.ResourceDownloader.resolveAndDownload(ResourceDownloader.java:74)
> 	at org.apache.hadoop.hive.ql.session.SessionState.resolveAndDownload(SessionState.java:1398)
> 	at org.apache.hadoop.hive.ql.session.SessionState.add_resources(SessionState.java:1350)
> 	at org.apache.hadoop.hive.ql.session.SessionState.add_resources(SessionState.java:1336)
> 	at org.apache.hadoop.hive.ql.processors.AddResourceProcessor.run(AddResourceProcessor.java:74)
> 	at org.apache.spark.sql.hive.client.HiveClientImpl.$anonfun$runHive$1(HiveClientImpl.scala:874)
> 	at org.apache.spark.sql.hive.client.HiveClientImpl.$anonfun$withHiveState$1(HiveClientImpl.scala:312)
> 	at org.apache.spark.sql.hive.client.HiveClientImpl.liftedTree1$1(HiveClientImpl.scala:229)
> 	at org.apache.spark.sql.hive.client.HiveClientImpl.retryLocked(HiveClientImpl.scala:228)
> 	at org.apache.spark.sql.hive.client.HiveClientImpl.withHiveState(HiveClientImpl.scala:292)
> 	at org.apache.spark.sql.hive.client.HiveClientImpl.runHive(HiveClientImpl.scala:836)
> 	at org.apache.spark.sql.hive.client.HiveClientImpl.runSqlHive(HiveClientImpl.scala:823)
> 	at org.apache.spark.sql.hive.client.HiveClientImpl.addJar(HiveClientImpl.scala:983)
> 	at org.apache.spark.sql.hive.HiveSessionResourceLoader.addJar(HiveSessionStateBuilder.scala:127)
> 	at org.apache.spark.sql.internal.SessionResourceLoader.loadResource(SessionState.scala:151)
> 	at org.apache.spark.sql.catalyst.catalog.SessionCatalog.$anonfun$loadFunctionResources$1(SessionCatalog.scala:1325)
> 	at org.apache.spark.sql.catalyst.catalog.SessionCatalog.$anonfun$loadFunctionResources$1$adapted(SessionCatalog.scala:1325)
> 	at scala.collection.mutable.ResizableArray.foreach(ResizableArray.scala:62)
> 	at scala.collection.mutable.ResizableArray.foreach$(ResizableArray.scala:55)
> 	at scala.collection.mutable.ArrayBuffer.foreach(ArrayBuffer.scala:49)
> 	at org.apache.spark.sql.catalyst.catalog.SessionCatalog.loadFunctionResources(SessionCatalog.scala:1325)
> 	at org.apache.spark.sql.catalyst.catalog.SessionCatalog.lookupFunction(SessionCatalog.scala:1470)
> 	at org.apache.spark.sql.hive.HiveSessionCatalog.super$lookupFunction(HiveSessionCatalog.scala:135)
> 	at org.apache.spark.sql.hive.HiveSessionCatalog.$anonfun$lookupFunction0$2(HiveSessionCatalog.scala:135)
> 	at scala.util.Try$.apply(Try.scala:213)
> 	at org.apache.spark.sql.hive.HiveSessionCatalog.lookupFunction0(HiveSessionCatalog.scala:135)
> 	at org.apache.spark.sql.hive.HiveSessionCatalog.lookupFunction(HiveSessionCatalog.scala:121)
> 	at org.apache.spark.sql.catalyst.analysis.Analyzer$ResolveFunctions$$anonfun$apply$16$$anonfun$applyOrElse$103.$anonfun$applyOrElse$106(Analyzer.scala:1852)
> 	at org.apache.spark.sql.catalyst.analysis.package$.withPosition(package.scala:53)
> 	at org.apache.spark.sql.catalyst.analysis.Analyzer$ResolveFunctions$$anonfun$apply$16$$anonfun$applyOrElse$103.applyOrElse(Analyzer.scala:1852)
> 	at org.apache.spark.sql.catalyst.analysis.Analyzer$ResolveFunctions$$anonfun$apply$16$$anonfun$applyOrElse$103.applyOrElse(Analyzer.scala:1835)
> 	at org.apache.spark.sql.catalyst.trees.TreeNode.$anonfun$transformDown$1(TreeNode.scala:315)
> 	at org.apache.spark.sql.catalyst.trees.CurrentOrigin$.withOrigin(TreeNode.scala:73)
> 	at org.apache.spark.sql.catalyst.trees.TreeNode.transformDown(TreeNode.scala:315)
> 	at org.apache.spark.sql.catalyst.trees.TreeNode.$anonfun$transformDown$3(TreeNode.scala:320)
> 	at org.apache.spark.sql.catalyst.trees.TreeNode.$anonfun$mapChildren$1(TreeNode.scala:405)
> 	at org.apache.spark.sql.catalyst.trees.TreeNode.mapProductIterator(TreeNode.scala:243)
> 	at org.apache.spark.sql.catalyst.trees.TreeNode.mapChildren(TreeNode.scala:403)
> 	at org.apache.spark.sql.catalyst.trees.TreeNode.mapChildren(TreeNode.scala:356)
> 	at org.apache.spark.sql.catalyst.trees.TreeNode.transformDown(TreeNode.scala:320)
> 	at org.apache.spark.sql.catalyst.plans.QueryPlan.$anonfun$transformExpressionsDown$1(QueryPlan.scala:98)
> 	at org.apache.spark.sql.catalyst.plans.QueryPlan.$anonfun$mapExpressions$1(QueryPlan.scala:120)
> 	at org.apache.spark.sql.catalyst.trees.CurrentOrigin$.withOrigin(TreeNode.scala:73)
> 	at org.apache.spark.sql.catalyst.plans.QueryPlan.transformExpression$1(QueryPlan.scala:120)
> 	at org.apache.spark.sql.catalyst.plans.QueryPlan.recursiveTransform$1(QueryPlan.scala:131)
> 	at org.apache.spark.sql.catalyst.plans.QueryPlan.$anonfun$mapExpressions$3(QueryPlan.scala:136)
> 	at scala.collection.TraversableLike.$anonfun$map$1(TraversableLike.scala:238)
> 	at scala.collection.immutable.List.foreach(List.scala:392)
> 	at scala.collection.TraversableLike.map(TraversableLike.scala:238)
> 	at scala.collection.TraversableLike.map$(TraversableLike.scala:231)
> 	at scala.collection.immutable.List.map(List.scala:298)
> 	at org.apache.spark.sql.catalyst.plans.QueryPlan.recursiveTransform$1(QueryPlan.scala:136)
> 	at org.apache.spark.sql.catalyst.plans.QueryPlan.$anonfun$mapExpressions$4(QueryPlan.scala:141)
> 	at org.apache.spark.sql.catalyst.trees.TreeNode.mapProductIterator(TreeNode.scala:243)
> 	at org.apache.spark.sql.catalyst.plans.QueryPlan.mapExpressions(QueryPlan.scala:141)
> 	at org.apache.spark.sql.catalyst.plans.QueryPlan.transformExpressionsDown(QueryPlan.scala:98)
> 	at org.apache.spark.sql.catalyst.plans.QueryPlan.transformExpressions(QueryPlan.scala:89)
> 	at org.apache.spark.sql.catalyst.analysis.Analyzer$ResolveFunctions$$anonfun$apply$16.applyOrElse(Analyzer.scala:1835)
> 	at org.apache.spark.sql.catalyst.analysis.Analyzer$ResolveFunctions$$anonfun$apply$16.applyOrElse(Analyzer.scala:1833)
> 	at org.apache.spark.sql.catalyst.plans.logical.AnalysisHelper.$anonfun$resolveOperatorsUp$3(AnalysisHelper.scala:90)
> 	at org.apache.spark.sql.catalyst.trees.CurrentOrigin$.withOrigin(TreeNode.scala:73)
> 	at org.apache.spark.sql.catalyst.plans.logical.AnalysisHelper.$anonfun$resolveOperatorsUp$1(AnalysisHelper.scala:90)
> 	at org.apache.spark.sql.catalyst.plans.logical.AnalysisHelper$.allowInvokingTransformsInAnalyzer(AnalysisHelper.scala:212)
> 	at org.apache.spark.sql.catalyst.plans.logical.AnalysisHelper.resolveOperatorsUp(AnalysisHelper.scala:86)
> 	at org.apache.spark.sql.catalyst.plans.logical.AnalysisHelper.resolveOperatorsUp$(AnalysisHelper.scala:84)
> 	at org.apache.spark.sql.catalyst.plans.logical.LogicalPlan.resolveOperatorsUp(LogicalPlan.scala:29)
> 	at org.apache.spark.sql.catalyst.analysis.Analyzer$ResolveFunctions$.apply(Analyzer.scala:1833)
> 	at org.apache.spark.sql.catalyst.analysis.Analyzer$ResolveFunctions$.apply(Analyzer.scala:1831)
> 	at org.apache.spark.sql.catalyst.rules.RuleExecutor.$anonfun$execute$2(RuleExecutor.scala:149)
> 	at scala.collection.LinearSeqOptimized.foldLeft(LinearSeqOptimized.scala:126)
> 	at scala.collection.LinearSeqOptimized.foldLeft$(LinearSeqOptimized.scala:122)
> 	at scala.collection.immutable.List.foldLeft(List.scala:89)
> 	at org.apache.spark.sql.catalyst.rules.RuleExecutor.$anonfun$execute$1(RuleExecutor.scala:146)
> 	at org.apache.spark.sql.catalyst.rules.RuleExecutor.$anonfun$execute$1$adapted(RuleExecutor.scala:138)
> 	at scala.collection.immutable.List.foreach(List.scala:392)
> 	at org.apache.spark.sql.catalyst.rules.RuleExecutor.execute(RuleExecutor.scala:138)
> 	at org.apache.spark.sql.catalyst.analysis.Analyzer.org$apache$spark$sql$catalyst$analysis$Analyzer$$executeSameContext(Analyzer.scala:171)
> 	at org.apache.spark.sql.catalyst.analysis.Analyzer.execute(Analyzer.scala:165)
> 	at org.apache.spark.sql.catalyst.analysis.Analyzer.execute(Analyzer.scala:130)
> 	at org.apache.spark.sql.catalyst.rules.RuleExecutor.$anonfun$executeAndTrack$1(RuleExecutor.scala:116)
> 	at org.apache.spark.sql.catalyst.QueryPlanningTracker$.withTracker(QueryPlanningTracker.scala:88)
> 	at org.apache.spark.sql.catalyst.rules.RuleExecutor.executeAndTrack(RuleExecutor.scala:116)
> 	at org.apache.spark.sql.catalyst.analysis.Analyzer.$anonfun$executeAndCheck$1(Analyzer.scala:149)
> 	at org.apache.spark.sql.catalyst.plans.logical.AnalysisHelper$.markInAnalyzer(AnalysisHelper.scala:219)
> 	at org.apache.spark.sql.catalyst.analysis.Analyzer.executeAndCheck(Analyzer.scala:148)
> 	at org.apache.spark.sql.execution.QueryExecution.$anonfun$analyzed$1(QueryExecution.scala:68)
> 	at org.apache.spark.sql.catalyst.QueryPlanningTracker.measurePhase(QueryPlanningTracker.scala:111)
> 	at org.apache.spark.sql.execution.QueryExecution.$anonfun$executePhase$1(QueryExecution.scala:138)
> 	at org.apache.spark.sql.SparkSession.withActive(SparkSession.scala:771)
> 	at org.apache.spark.sql.execution.QueryExecution.executePhase(QueryExecution.scala:138)
> 	at org.apache.spark.sql.execution.QueryExecution.analyzed$lzycompute(QueryExecution.scala:68)
> 	at org.apache.spark.sql.execution.QueryExecution.analyzed(QueryExecution.scala:66)
> 	at org.apache.spark.sql.execution.QueryExecution.assertAnalyzed(QueryExecution.scala:58)
> 	at org.apache.spark.sql.Dataset$.$anonfun$ofRows$2(Dataset.scala:99)
> 	at org.apache.spark.sql.SparkSession.withActive(SparkSession.scala:771)
> 	at org.apache.spark.sql.Dataset$.ofRows(Dataset.scala:97)
> 	at org.apache.spark.sql.SparkSession.$anonfun$sql$1(SparkSession.scala:614)
> 	at org.apache.spark.sql.SparkSession.withActive(SparkSession.scala:771)
> 	at org.apache.spark.sql.SparkSession.sql(SparkSession.scala:609)
> 	at org.apache.livy.repl.SQLInterpreter.execute(SQLInterpreter.scala:93)
> 	at org.apache.livy.repl.Session.$anonfun$executeCode$1(Session.scala:330)
> 	at scala.Option.map(Option.scala:230)
> 	at org.apache.livy.repl.Session.executeCode(Session.scala:328)
> 	at org.apache.livy.repl.Session.$anonfun$execute$1(Session.scala:175)
> 	at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:23)
> 	at scala.concurrent.Future$.$anonfun$apply$1(Future.scala:659)
> 	at scala.util.Success.$anonfun$map$1(Try.scala:255)
> 	at scala.util.Success.map(Try.scala:213)
> 	at scala.concurrent.Future.$anonfun$map$1(Future.scala:292)
> 	at scala.concurrent.impl.Promise.liftedTree1$1(Promise.scala:33)
> 	at scala.concurrent.impl.Promise.$anonfun$transform$1(Promise.scala:33)
> 	at scala.concurrent.impl.CallbackRunnable.run(Promise.scala:64)
> 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
> 	at java.lang.Thread.run(Thread.java:748) {code}
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@spark.apache.org
For additional commands, e-mail: issues-help@spark.apache.org