[ 
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)

Reply via email to