指定端口时出现impyla错误

p4rjhz4m  于 2021-06-26  发布在  Impala
关注(0)|答案(1)|浏览(637)

如果我在connect中指定port,那么我使用的是impyla0.9.0

  1. conn = impala.dbapi.connect(host='n1', port=21000)

我将得到以下错误

  1. Traceback (most recent call last):
  2. File "./myquery.py", line 78, in <module>
  3. main(len(sys.argv), sys.argv)
  4. File "./myquery.py", line 58, in main
  5. cur = conn.cursor()
  6. File "/usr/lib/python2.6/site-packages/impala/dbapi/hiveserver2.py", line 55, in cursor
  7. rpc.open_session(self.service, user, configuration))
  8. File "/usr/lib/python2.6/site-packages/impala/_rpc/hiveserver2.py", line 132, in wrapper
  9. return func(*args,**kwargs)
  10. File "/usr/lib/python2.6/site-packages/impala/_rpc/hiveserver2.py", line 214, in open_session
  11. resp = service.OpenSession(req)
  12. File "/usr/lib/python2.6/site-packages/impala/_thrift_gen/TCLIService/TCLIService.py", line 175, in OpenSession
  13. return self.recv_OpenSession()
  14. File "/usr/lib/python2.6/site-packages/impala/_thrift_gen/TCLIService/TCLIService.py", line 191, in recv_OpenSession
  15. raise x
  16. thrift.Thrift.TApplicationException: Invalid method name: 'OpenSession'

但它是一个有效的端口。

  1. impala-shell -i n1:21000
  2. Starting Impala Shell without Kerberos authentication
  3. Connected to n1:21000
  4. Server version: impalad version 2.1.1-cdh5 RELEASE (build 7901877736e29716147c4804b0841afc4ebc9037)
  5. Welcome to the Impala shell. Press TAB twice to see a list of available commands.
  6. Copyright (c) 2012 Cloudera, Inc. All rights reserved.
  7. (Shell build version: Impala Shell v2.1.1-cdh5 (7901877) built on Tue Jan 27 16:23:42 PST 2015)
  8. [n1:21000] >

一旦我移除端口

  1. conn = impala.dbapi.connect(host='n1')

它又起作用了。

qltillow

qltillow1#

impyla正在尝试使用hiveserver2协议连接到impala,因此您应该使用端口21050。端口21000用于蜂蜡协议(impala shell使用)。

相关问题