HBase插入错误:没有协议版本头

2024-09-26 22:51:37 发布

您现在位置:Python中文网/ 问答频道 /正文

我知道这个问题还有更多的问题,但似乎没有一个能说明如何解决这个问题。在

我正在使用happybase python包连接到HBase thrift服务器,在尝试插入数据时遇到了这个错误。在

我安装了HappyBase1.1.0,我正在用Hortonworks数据平台来对付HBase 2.0.0。在

我用以下命令启动了我的thrift服务器:

 /usr/hdp/current/hbase-master/bin/hbase-daemon.sh start thrift -p 12345

我尝试用以下代码连接到服务器:

^{pr2}$

当我尝试放入数据时,得到错误“no protocol version header”。在

这是异常stacktrace:

Traceback (most recent call last):   
 File "/usr/local/airflow/dags/Helpers.py", line 161, 
 in insertImageIntoHBase
     table.put(rowKey, {"raw_data:image_bytes": data})   
 File "/usr/local/lib/python3.6/site-packages/happybase/table.py", line 464,
 in put
     batch.put(row, data)
 File "/usr/local/lib/python3.6/site-packages/happybase/batch.py", line 137,
 in __exit__
     self.send()
 File "/usr/local/lib/python3.6/site-packages/happybase/batch.py", line 60,
 in send
     self._table.connection.client.mutateRows(self._table.name, bms, {})
 File "/usr/local/lib/python3.6/site-packages/thriftpy/thrift.py", line 198,
 in _req
     return self._recv(_api)
 File "/usr/local/lib/python3.6/site-packages/thriftpy/thrift.py", line 210,
 in _recv
     fname, mtype, rseqid = self._iprot.read_message_begin()
 File "thriftpy/protocol/cybin/cybin.pyx", line 439, 
 in cybin.TCyBinaryProtocol.read_message_begin
   (thriftpy/protocol/cybin/cybin.c:6470) cybin.ProtocolError: No protocol version header

提前谢谢你


Tags: inpyselflibpackagesusrlocalline
1条回答
网友
1楼 · 发布于 2024-09-26 22:51:37

我对happybase了解不多,但错误追溯到this piece of code

由此可以推断出一端已启用严格的读/写(可能是客户端),而另一端(服务器)则不启用。我无法分辨的是,在快乐的环境中,这将被配置在哪里。

相关问题 更多 >

    热门问题