PG ::在Heroku Cedar上检测到错误EOF,轨道3.2.11

时间:2013-05-23 22:14:39

标签: ruby-on-rails postgresql heroku connection pg

经历了几段停机时间后,我们最近升级到Heroku的生产环境(Crane数据库加2 x web dynos),但我们看到没有任何改进。事实上,自升级以来,可靠性似乎已经下降。

根本原因似乎是以下异常:  PG ::错误(SSL SYSCALL错误:检测到EOF 这会导致dyno失败并最终重启,但不会导致停机。

我不知道是什么导致了它。常见的罪魁祸首似乎是Resque和Unicorn,我都没有使用过。我们在Heroku Cedar的rails 3.2.11上,使用pg gem 1.14.1

日志在崩溃时报告以下内容:

    2013-05-23T19:01:33+00:00 app[heroku-postgres]: source=HEROKU_POSTGRESQL_PINK measure.current_transaction=34490 measure.db_size=38311032bytes measure.tables=19 measure.active-connections=7 measure.waiting-connections=0 measure.index-cache-hit-rate=0.99438 measure.table-cache-hit-rate=0.8824     
2013-05-23T19:01:35.123633+00:00 app[web.2]: 
2013-05-23T19:01:35.123633+00:00 app[web.2]: PG::Error (SSL SYSCALL error: EOF detected
2013-05-23T19:01:35.123633+00:00 app[web.2]: ):

我已阅读以下内容:https://groups.google.com/forum/?fromgroups#!topic/heroku/a6iviwAFgdY但找不到任何可能有帮助的内容。

1 个答案:

答案 0 :(得分:1)

https://gist.github.com/ktopping/5657474

以上修复了异常,这很有用(因为它应该整理我的日志,甚至有助于加快重新连接到数据库)但实际上并没有停止我的主要问题,即Heroku web dynos比我更频繁地崩溃等。

正在调查其他一些路线(Unicorn,机架超时)。