I'm working on a small project to get embedded Hive instances running in Docker
for testing Hive deployments. I'm getting the following error after DataGrip
connects and I'm trying to figure out if I'm missing a hive-site config as
currently I'm using all defaults or if there is something particular about the
Hive 1.x flavor in HDP 2.6.5. I don't get this error if I connect to a real
Hive instance on the HDP Sandbox.
The JDBC connection returns this error
[08S01] Required field 'functionName' is unset!
Struct:TGetFunctionsReq(sessionHandle:TSessionHandle(sessionId:THandleIdentifier(guid:EE
80 C0 96 99 30 45 2B A1 5D 83 34 8E 3B 73 C9, secret:D6 7E 36 AB 7B 08 4D C9
A7 3F EC D9 A6 10 FF B1)), catalogName:, schemaName:default, functionName:null)
(2 s 285 ms)
And the hiveserver2 returns this error
18/10/18 12:50:18 [HiveServer2-Handler-Pool: Thread-33]: WARN
thrift.ThriftCLIService: Error getting functions:
java.lang.NullPointerException
at
org.apache.hive.service.cli.thrift.ThriftCLIService.GetFunctions(ThriftCLIService.java:618)
at
org.apache.hive.service.cli.thrift.TCLIService$Processor$GetFunctions.getResult(TCLIService.java:1517)
at
org.apache.hive.service.cli.thrift.TCLIService$Processor$GetFunctions.getResult(TCLIService.java:1502)
at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:39)
at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:39)
at
org.apache.hive.service.auth.TSetIpAddressProcessor.process(TSetIpAddressProcessor.java:56)
at
org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:286)
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)
18/10/18 12:50:18 [HiveServer2-Handler-Pool: Thread-33]: ERROR
server.TThreadPoolServer: Thrift error occurred during processing of message.
org.apache.thrift.protocol.TProtocolException: Missing version in
readMessageBegin, old client?
at
org.apache.thrift.protocol.TBinaryProtocol.readMessageBegin(TBinaryProtocol.java:228)
at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:27)
at
org.apache.hive.service.auth.TSetIpAddressProcessor.process(TSetIpAddressProcessor.java:56)
at
org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:286)
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)
If anyone is curious the project is here
https://github.com/shawnweeks/hive_docker.
Thanks
Shawn Weeks