微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

调试PostgreSQL用户定义的函数

我正在接管为Postgresql编写的一组用户定义函数用户定义聚合的开发,并且我很难诊断导致代码不断出错的原因.有没有人知道是否可以将GDB与用C语言编写的UDF一起使用?一些谷歌搜索没有发现任何东西.我之前使用ELOG来调试UDF,但是这个项目很复杂,我需要更强大的功能.

谢谢,
凯文

解决方法

您应该能够将gdb附加到正在运行的 postgresql后端 – 尽管您可能希望确保postgresql构建中包含调试符号以使其易于理解.如果你确实选择了pg_backend_pid(),你将得到你正在处理的后端的进程ID,然后可以将gdb附加到它(使用–pid switch或attach命令).这种方法仅在您可以使用psql重现问题时才有用,例如:将新的后端进程自动附加为gdb是更难的.例如,您可以设置post_auth_delay等选项,以便在身份验证完成后使postgresql等待,从而使您有机会在继续处理之前附加调试器.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐