使用eclipse调试nebula v1.2源码进行源码开发

nebula 版本: v1.2
使用Eclipse 调试nebula 1.2源码失败
我的过程: File->Import->Existing code as Makefile Project
导入项目后右键项目名build失败

https://marketplace.eclipse.org/category/free-tagging/cmake/updated

好像有个cmake插件 似乎需要安装一下?

1 个赞

感谢您的回答,目前我已经更换了IDE,采用了对cmake更友好的clion进行源码开发。

在使用clion的时候,我已经build project成功,在attach to process的时候我应该选择哪一个呢?

另外 这几个进程我都试着连接过 但是在设置断点的时候全部都出现了问题 → 断点一旦设置 就会自动变为灰色的invalid状态 即断点不能成功设置

你的调试过程是怎么样的?是打算在代码中设置断点然后运行query吗?attach的进程要看你想调试哪部分代码,例如想调试graph部分的那就需要attach graph进程

能在起服务后执行下 ps -ef | grep nebula

目的:观察CreateTagExecutor::execute()函数的执行过程
思路:在nebula服务启动的前提下,在CreateTagExecutor::execute()函数中设置断点,此时断点可以成功设置(红色),选择Run->Attach to process,选择nebula(pid:32104)


成功连接到进程

此时发现断点变为灰色,执行create tag a(); 不会停下

输入ps -ef | grep nebula命令,结果如下:

服务端收到客户端发来的ngql请求才会执行下去,才有可能走到断点处:

  1. attach nebula-graphd的pid;
  2. 在CreateTagExecutor::execute()函数中设置断点;
  3. 用nebula-console连接上nebula-graph服务,发送一条ngql语句:create tag player(name string). 回车.然后就可以调试了

问题在我更新代码至2.0版本时得到解决 感谢您的时间

1 个赞