java 客户端连接 最新nebula2 出现 Auth failed: Authenticate failed: Expected protocol id ffffff82 but got 0

nebula的版本 70c6ca0(v2.0.1) ;java的版本为 2.0.0-SNAPSHOT ;连接出现 Authenticate failed:Exception protocal id ffffff82 but got 0

把 java 和 nebula 的具体版本号补充下,然后把配置文件贴下,以及报错信息麻烦换成文本,方便阅读

nebula的版本 70c6ca0 ;java的版本为 2.0.0-SNAPSHOT ;连接出现 Authenticate failed:Exception protocal id ffffff82 but got 0

哥,配置信息呢,连接报错的话,就说明是配置那块有问题啊,所以你得加上配置信息啊

通过 nebula-console 可以正常连接 的 ,应该不是nebula 配置问题吧

你好,你可以把你的使用代码贴出来吗?

image
nebula的版本 70c6ca0 meta端口配置改成29560 meta启动端口怎么还是19560

NebulaPoolConfig nebulaPoolConfig = new NebulaPoolConfig();
nebulaPoolConfig.setMaxConnSize(10);
List addresses = Arrays.asList(new HostAddress(“127.0.0.1”, 9669),
new HostAddress(“127.0.0.1”, 9670));
NebulaPool pool = new NebulaPool();
pool.init(addresses, nebulaPoolConfig);
Session session = pool.getSession(“root”, “nebula”, false);
session.execute(“SHOW HOSTS;”);
session.release();
pool.close();

pool.getSession的时候出现问题

我看了下 v2.0.1的版本,graphd的 git info 是 b4f6f0a, storaged 的 git info 是 6ed8590 . 请问你这个git info 是怎么来的,麻烦截图下

不好意思 nebula版本为 b4f6f0a

代码为
NebulaPoolConfig nebulaPoolConfig = new NebulaPoolConfig();
nebulaPoolConfig.setMaxConnSize(10);
List addresses = Arrays.asList(new HostAddress(“127.0.0.1”, 9669));
NebulaPool pool = new NebulaPool();

try {
    pool.init(addresses, nebulaPoolConfig);
    Session session = null;
    session = pool.getSession("root", "nebula", false);
    session.execute("SHOW HOSTS;");
    session.release();
    pool.close();
} catch (NotValidConnectionException e) {
    e.printStackTrace();
} catch (IOErrorException e) {
    e.printStackTrace();
} catch (AuthFailedException e) {
    e.printStackTrace();
} catch (UnknownHostException e) {
    e.printStackTrace();
} catch (UnsupportedEncodingException e) {
    e.printStackTrace();
}

nebula-java 版本为 2.0.0 、nebula-graph 版本为git 上master :70c6ca0

出现
com.vesoft.nebula.client.graph.exception.AuthFailedException: Auth failed: Authenticate failed: Expected protocol id ffffff82 but got 0
at com.vesoft.nebula.client.graph.net.SyncConnection.authenticate(SyncConnection.java:59)
at com.vesoft.nebula.client.graph.net.NebulaPool.getSession(NebulaPool.java:108)
at cn.bywin.business.util.graph.ClickHouseUtil.main(ClickHouseUtil.java:369)

nebula-java 版本为 git上master 编译版本、 nebula-graph 版本为git 上master : 70c6ca0

出现
Caused by: java.lang.ClassNotFoundException: org.apache.commons.pool2.PooledObjectFactory
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
… 1 more

nebula-java 版本为 git上master 编译版本、 nebula-graph 版本为git 上master :

出现

Expected protocol id ffffff82 but got 0

你用的版本,我都试过,都没有这个问题,版本的协议是兼容的,就算是不同版本也不会出现这个问题,之前经常出现这个问题都是多线程访问使用同个链接,会报这个错,但是看你的代码并没有。

你确定你的版本和使用都是和贴出来的一致吗?

我按这个java版本就没问题image

。执行结果

这个commit 只是更新了错误码的定义,是到数据解析才会用到,你出错的地方都还没到数据的解析,在处理消息头部就出错的

服务端版本

。目前确实是这现象。

服务端是你自己编译的吗?

服务端自己编译的。

我在nebula-graph的master上面没有搜索到你这个commitid