- nebula 版本:v3.0.0
- 部署方式:单机
- 安装方式: Docker
- 是否为线上版本:N
- 硬件信息
- 磁盘( 推荐使用 SSD)
- CPU、内存信息
- 问题的具体描述
我想要在multiprocessing里使用nebula服务,访问nebula图数据库来做一些数据处理。
我尝试过两种方式,但是都报了错:
第一种:
在每个process里,都重新申明了一个conneciton_pool,然后用connection_pool.init([(‘graphd’, 9669)], config)来初始化这个pool,然后再用connection_pool.get_session(‘root’, ‘nebula’)来得到一个session,在这个session里访问nebula,也就是如果我有n个process,同时就会声明n个connection_pool,以及对应n个session
报错:cannot assign requested address
第二种:
我怀疑第一种方式是同时开n个connection_pool,都用connection_pool.init([(‘graphd’, 9669)], config)初始化导致的报错,所以我又改成了只申明一个connecion_pool,然后在multiprocess的每个process里,都用这一个connecion_pool来get每个process里的一个session,也就是声明1个connection_pool,n个session
报错:程序到multiprocess调用nebula的时候,就卡死了,进程的状态是Z+
- 相关的 meta / storage / graph info 日志信息