[
https://issues.apache.org/jira/browse/KUDU-3677?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18009101#comment-18009101
]
Michael Smith commented on KUDU-3677:
-------------------------------------
I think this also impacts Impala, where I get
{code}
I20250722 14:19:48.151762 1400078 jni-util.cc:321]
b341b24a9469f25b:1632795400000000] java.lang.NoClassDefFoundError:
com/stumbleupon/async/Callback
at
org.apache.kudu.client.AsyncKuduClient$AsyncKuduClientBuilder.build(AsyncKuduClient.java:3109)
at
org.apache.kudu.client.KuduClient$KuduClientBuilder.build(KuduClient.java:769)
at
org.apache.impala.util.KuduUtil.lambda$getKuduClient$0(KuduUtil.java:98)
at
java.util.concurrent.ConcurrentHashMap.computeIfAbsent(ConcurrentHashMap.java:1660)
at org.apache.impala.util.KuduUtil.getKuduClient(KuduUtil.java:92)
at
org.apache.impala.catalog.KuduTable.getHiveMetastoreConfig(KuduTable.java:227)
at
org.apache.impala.catalog.KuduTable.isHMSIntegrationEnabled(KuduTable.java:245)
at
org.apache.impala.analysis.CreateTableStmt.analyzeSynchronizedKuduTableName(CreateTableStmt.java:532)
at
org.apache.impala.analysis.CreateTableStmt.analyzeSynchronizedKuduTableParams(CreateTableStmt.java:484)
at
org.apache.impala.analysis.CreateTableStmt.analyzeKuduFormat(CreateTableStmt.java:363)
at
org.apache.impala.analysis.CreateTableStmt.analyze(CreateTableStmt.java:271)
at
org.apache.impala.analysis.AnalysisContext$AnalysisDriverImpl.analyze(AnalysisContext.java:576)
at
org.apache.impala.analysis.AnalysisContext.analyzeAndAuthorize(AnalysisContext.java:496)
at
org.apache.impala.service.Frontend.doCreateExecRequest(Frontend.java:2933)
at
org.apache.impala.service.Frontend.getTExecRequest(Frontend.java:2505)
at
org.apache.impala.service.Frontend.getTExecRequestWithFallback(Frontend.java:2374)
at
org.apache.impala.service.Frontend.createExecRequest(Frontend.java:2063)
at
org.apache.impala.service.JniFrontend.createExecRequest(JniFrontend.java:176)
Caused by: java.lang.ClassNotFoundException: com.stumbleupon.async.Callback
at java.net.URLClassLoader.findClass(URLClassLoader.java:387)
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)
... 18 more
{code}
> Java kudu-client incorrectly declares com.stumbleupon:async as optional
> -----------------------------------------------------------------------
>
> Key: KUDU-3677
> URL: https://issues.apache.org/jira/browse/KUDU-3677
> Project: Kudu
> Issue Type: Bug
> Components: java
> Affects Versions: 1.18
> Reporter: James Netherton
> Assignee: Alexey Serbin
> Priority: Blocker
>
> There was a change in the Java kudu-client pom.xml between the 1.17.1 and
> 1.18.0 with regards to how dependency com.stumbleupon:async is declared.
> *1.17.1*
> {code:java}
> <dependency>
> <groupId>com.stumbleupon</groupId>
> <artifactId>async</artifactId>
> <version>1.4.1</version>
> <scope>compile</scope>
> <exclusions>
> <exclusion>
> <artifactId>slf4j-api</artifactId>
> <groupId>org.slf4j</groupId>
> </exclusion>
> </exclusions>
> </dependency>
> {code}
> *1.18.0*
> {code:java}
> <dependency>
> <groupId>com.stumbleupon</groupId>
> <artifactId>async</artifactId>
> <version>1.4.1</version>
> <scope>compile</scope>
> <exclusions>
> <exclusion>
> <groupId>org.slf4j</groupId>
> <artifactId>slf4j-api</artifactId>
> </exclusion>
> </exclusions>
> <optional>true</optional>
> </dependency>
> {code}
> Note the addition of <optional> in 1.18.0.
> Looking at the code from KuduClient and AsyncKuduClient, there are various
> references to Deferred & Callback types. If you try to invoke methods that
> use those types, then you'll get ClassNotFoundException. Unless you add the
> missing com.stumbleupon:async dependency to the classpath.
> Can the previous non-optional dependency declaration be restored for future
> releases?
--
This message was sent by Atlassian Jira
(v8.20.10#820010)