我正在接管为PostgreSQL编写的一组用户定义函数和用户定义聚合的开发,并且我很难诊断导致代码不断出错的原因.有没有人知道是否可以使用GDB和用C++编写的UDF?一些谷歌搜索没有发现任何东西.我之前使用ELOG来调试UDF,但是这个项目很复杂,我需要更强大的功能.
谢谢,凯文
您应该能够将 gdb 连接到正在运行的 postgresql 后端 - 尽管您可能希望确保您的 postgresql 构建中保留了调试符号以使其易于理解。如果这样做,select pg_backend_pid()您将获得正在处理的后端进程 ID,然后可以将 gdb 附加到它(使用 --pid 开关或attach命令)。这种方法只有在您可以使用 psql 重现问题时才有用,例如:将新的后端进程自动附加到 gdb 会更困难。例如,您可以设置选项,例如post_auth_delay让 postgresql 在身份验证完成后等待,以便您有机会在继续处理之前附加调试器。
| 归档时间: |
|
| 查看次数: |
905 次 |
| 最近记录: |