运行example文件时能连上数据库但是无法执行ngql语句

  • nebula 版本:2.6.1
  • 部署方式:单机
  • 安装方式: RPM
  • 是否为线上版本:Y
  • 硬件信息
    • 磁盘 500G
    • CPU、内存信息 8核16G
  • 问题的具体描述
    运行example里的GraphClientSimpleExample.py文件,能连上数据库,但是当执行到ngql语句时报错,具体的报错信息如下:
    Traceback (most recent call last):
    File “D:/pycharm/nebula-python-master/example/GraphClientSimpleExample.py”, line 33, in
    resp_json = client.execute(“yield 1”)
    File “D:\pycharm\nebula-python-master\nebula2\gclient\net\Session.py”, line 74, in execute
    return self.execute_parameter(stmt, None)
    File “D:\pycharm\nebula-python-master\nebula2\gclient\net\Session.py”, line 39, in execute_parameter
    resp = self._connection.execute_parameter(self._session_id, stmt, params)
    File “D:\pycharm\nebula-python-master\nebula2\gclient\net\Connection.py”, line 140, in execute_parameter
    resp = self._connection.executeWithParameter(session_id, stmt, params)
    File “D:\pycharm\nebula-python-master\nebula2\graph\GraphService.py”, line 1652, in executeWithParameter
    return self.recv_executeWithParameter()
    File “D:\pycharm\nebula-python-master\nebula2\graph\GraphService.py”, line 1670, in recv_executeWithParameter
    raise x
    nebula2.fbthrift.Thrift.TApplicationException: Method name executeWithParameter not found

Python 的客户端贴一下,还有相关的代码 ip 端口配置。

使用的pycharm,端口ip配置都没有问题,因为我把代码放到官方的example文件夹外面就能够正常运行了,但是在example文件夹里面无法正常运行,会报最上边贴出来的错误。有没有可能是包之间调用的错误。

这个executeWithParameter是 3.0 才有的,你是用 nebula-python repo 里的代码么?不要用 master哈,那个是对应下一个版本的 checkout 到 2.6.0 的nebula-python tag 跑对应 2.6.0的 nebula-graph

2 个赞

是不是报这个“executeWithParameter”的错误基本都是版本问题,因为我又碰见了这种情况,这次是在使用importer工具的时候碰到的

这个应该是我们的各个客户端的参数化查询的一个函数,:thinking: 应该是新版本的。如果你遇到的话应该是用了最新的还未发行的版本,如果你的版本不对齐的话(master 的客户端用在了 v2.6.1 以及其他的发行版内核上)应该是会报错。

2 个赞

嗯呢,好的,谢谢您

1 个赞

nebula Graph 选择了2.0.1, nebula_python 选择了2.0.0, nebula Studio 选择了2.2.2, 这样应该不会再出现这个问题了吧

可以都选更新一点:2.6 哈,不要用 nightly/master

1 个赞

此话题已在最后回复的 7 天后被自动关闭。不再允许新回复。