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

Niels Basjes commented on HIVE-29852:
-------------------------------------

{{For clarity.}}
{{I think this is the key error in this:}}
{{
Suppressed: java.lang.UnsupportedClassVersionError: Preview features are not 
enabled for org/jline/terminal/impl/ffm/FfmTerminalProvider (class file version 
65.65535). Try running with '--enable-preview'}}

> Published docker image fails with UnsupportedClassVersionError on commandline 
> hive command.
> -------------------------------------------------------------------------------------------
>
>                 Key: HIVE-29852
>                 URL: https://issues.apache.org/jira/browse/HIVE-29852
>             Project: Hive
>          Issue Type: Bug
>    Affects Versions: 4.2.0, 4.2.1
>            Reporter: Niels Basjes
>            Priority: Major
>
> On a Linux machine (I used UbuntuĀ  24.04) with docker:
> {code:java}
> docker run --rm --name hive-server -e SERVICE_NAME=hiveserver2 
> apache/hive:4.2.1 {code}
> Then after it has started in a separate terminal do a simple commandline 
> query:
> {code:java}
> docker exec "hive-server" hive -u 'jdbc:hive2://localhost:10000/' -e "show 
> databases;" {code}
> The output of this command:
> {code:java}
> SLF4J: Class path contains multiple SLF4J bindings.SLF4J: Found binding in 
> [jar:file:/opt/hive/lib/log4j-slf4j-impl-2.24.3.jar!/org/slf4j/impl/StaticLoggerBinder.class]SLF4J:
>  Found binding in 
> [jar:file:/opt/hadoop/share/hadoop/common/lib/slf4j-reload4j-1.7.36.jar!/org/slf4j/impl/StaticLoggerBinder.class]SLF4J:
>  See http://www.slf4j.org/codes.html#multiple_bindings for an 
> explanation.SLF4J: Actual binding is of type 
> [org.apache.logging.slf4j.Log4jLoggerFactory]SLF4J: Class path contains 
> multiple SLF4J bindings.SLF4J: Found binding in 
> [jar:file:/opt/hive/lib/log4j-slf4j-impl-2.24.3.jar!/org/slf4j/impl/StaticLoggerBinder.class]SLF4J:
>  Found binding in 
> [jar:file:/opt/hadoop/share/hadoop/common/lib/slf4j-reload4j-1.7.36.jar!/org/slf4j/impl/StaticLoggerBinder.class]SLF4J:
>  See http://www.slf4j.org/codes.html#multiple_bindings for an 
> explanation.SLF4J: Actual binding is of type 
> [org.apache.logging.slf4j.Log4jLoggerFactory]Exception in thread "main" 
> java.lang.IllegalStateException: Unable to create a terminal at 
> org.jline.terminal.TerminalBuilder.doBuild(TerminalBuilder.java:394) at 
> org.jline.terminal.TerminalBuilder.build(TerminalBuilder.java:362)   at 
> org.apache.hive.beeline.BeeLine.buildTerminal(BeeLine.java:1554)     at 
> org.apache.hive.beeline.BeeLine.initializeLineReader(BeeLine.java:1470)      
> at org.apache.hive.beeline.BeeLine.begin(BeeLine.java:1125)     at 
> org.apache.hive.beeline.BeeLine.begin(BeeLine.java:1101)     at 
> org.apache.hive.beeline.BeeLine.mainWithInputRedirection(BeeLine.java:567)   
> at org.apache.hive.beeline.BeeLine.mainWithInputRedirection(BeeLine.java:561) 
>   at org.apache.hive.beeline.BeeLine.main(BeeLine.java:544)       at 
> java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
>         at java.base/java.lang.reflect.Method.invoke(Method.java:580)   at 
> org.apache.hadoop.util.RunJar.run(RunJar.java:330)   at 
> org.apache.hadoop.util.RunJar.main(RunJar.java:245)  Suppressed: 
> java.lang.UnsupportedClassVersionError: Preview features are not enabled for 
> org/jline/terminal/impl/ffm/FfmTerminalProvider (class file version 
> 65.65535). Try running with '--enable-preview'             at 
> java.base/java.lang.ClassLoader.defineClass1(Native Method)          at 
> java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1027)           
> at 
> java.base/java.security.SecureClassLoader.defineClass(SecureClassLoader.java:150)
>             at 
> java.base/jdk.internal.loader.BuiltinClassLoader.defineClass(BuiltinClassLoader.java:862)
>             at 
> java.base/jdk.internal.loader.BuiltinClassLoader.findClassOnClassPathOrNull(BuiltinClassLoader.java:760)
>              at 
> java.base/jdk.internal.loader.BuiltinClassLoader.loadClassOrNull(BuiltinClassLoader.java:681)
>                 at 
> java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:639)
>               at 
> java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
>            at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:580) 
>              at 
> java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:526)              
> at org.jline.terminal.spi.TerminalProvider.load(TerminalProvider.java:68)     
>           at 
> org.jline.terminal.TerminalBuilder.checkProvider(TerminalBuilder.java:665)    
>        at 
> org.jline.terminal.TerminalBuilder.getProviders(TerminalBuilder.java:630)     
>        at 
> org.jline.terminal.TerminalBuilder.doBuild(TerminalBuilder.java:395)         
> ... 12 more
>  {code}
> On docker image version 4.1.0 this does work as expected.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to