前言
在impala执行sql时,报错“Caused by: org.apache.hive.service.cli.HiveSQLException: Invalid query handle: ba49fe5374bba89c:bf8f6dee00000000”,开始一直以为是sql编写错误的问题

解决
打断点排查后发现,while (resuleSet1.next())这个循环根本进不去。
原因是:
正常情况下如果使用Statement执行完一个查询,又去执行另一个查询时这时候第一个查询的结果集就会被关闭,也就是说,所有的Statement的查询对应的结果集是一个
如下图的代码,Statement先是给“resultSet1”赋值,之后Statement有给“resultSet2”赋值,而此时resultSet1已经没有结果集了,所以报错了。


本文讲述了在使用Impala执行SQL时遇到'Invalid query handle'错误,通过排查发现Statement多次执行查询导致结果集关闭问题。详细解释了原因并提供了解决方案,适合SQL开发者理解常见错误处理。
20万+

被折叠的 条评论
为什么被折叠?



