ITPub博客

首页 > Linux操作系统 > Linux操作系统 > pgpool 遭遇bug portal prepared statement does not exist

pgpool 遭遇bug portal prepared statement does not exist

原创 Linux操作系统 作者:babyyellow 时间:2012-05-15 14:27:51 0 删除 编辑
在pg 的测试中,发现了一个bug

portal  "" prepared statement  3234342  does not exist

这个错误,目前已经可以重现了,基本可以确定是一个bug

从这几次测试来看,跟并发有一定关系,跟jdbc 的连接池参数 prepared cache 的大小有一定关系。

刚才开始测试时,大约5分钟,就可以重现问题。当时的prepared cache 设置为8

换为高性能的机器, 并发扩大到20 , 在9个小时的压力测试中,共出现 24次

第一次出现错误实在压力测试开始后2小时左右。 prepared cache 设置为50 。


目前官方没有patch 发布 ,  没有patch 在线上使用是基本不太可能了,除非绕过去。


有没有办法绕过去?  , 从jdbc 的doc 上看, 如果能去掉 prepared statements 应该就可以绕过去,可能会涉及到jdbc 功能的降级。


网上有人提及: 在jdbc 的url 上面设置参数 : protocolVersion=2  ,让jdbc 运行在2.0 版本上。

可以规避这个问题。需要进一步测试。



【后记 】


Re:[lisiliang,1楼]

进行了一轮测试,发现 protocolVersion=2 不起作用,配置了,resin 无法启动。

] Caused by: org.postgresql.util.PSQLException: 无法以要求的通讯协定 2;characterEncoding=GBK 建立连线。


到目前为止这个问题无解啦。


网上讨论了一番

采用session 级的复用, resion-query_list=''  

运行过程中,会报很多错误,似乎引进了更多的问题。


这个问题暂时无解了。


如果修改应用代码,成本似乎太高。 需要开发同事确认。





来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/133735/viewspace-723606/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
oracle MySQL Postgresql 专职数据库dba。 系统架构师。 mysql 官方认知dba 。 15年专职dba 经验。 潜意识沟通实证者 心理咨询师。 禅修布道者, 禅修指导员。 禅定实证者。

注册时间:2010-12-02

  • 博文量
    367
  • 访问量
    1908788