在Heroku上,“ Pgerror:致命:终止连接”的原因是什么?

问题描述 投票:0回答:7
我在Heroku上有一个Rails应用程序,用户登录到。我定期得到这个例外:

userSessionsController# (activerecord ::语句Invalid) “ pgerror:致命:终止 由管理员引起的连接 命令 服务器关闭连接 不料 这可能意味着 服务器终止 异常 bef ...

url

POST http://secure.huckberry.com/user_sessions
这可能是什么原因?我感谢任何帮助。
    

ruby-on-rails postgresql heroku
7个回答
21
投票


5
投票
这可能意味着某些东西向服务器过程发送了Sigterm信号。这可能发生的是,如果邮政局长从某物中获得

Sigint。但是,如果您能够重新连接并非如此,因为邮政局长会禁止新连接。 您的应用程序可能会发生某种冲突。启用QueryLoggging

并检查一些与众不同的内容。

我发生了这个错误。 我的应用程序服务器具有与数据库的开放连接。 在我的SSH终端中,我在ph_hba.conf文件中添加了iPaddress,并重新启动了PostgreSQLServer.

是当出现此错误时。 我一次刷新了我的网页,错误消失了。

3
投票

如果您运行了使用数据库连接的测试套件(在这种情况下为PSQL),并且测试仍在运行(异步)。 当测试仍在运行时,拆卸挂钩可能会终止连接,这在此错误消息中结束。


3
投票
/var/log/apt/history.log

) - 在Postgresql的日志中,您将看到


1
投票

在这里对我有用的解决方案只是为了使我的肿的桌子发射。
您也可以为您的DB关闭Autovaccum,但我不建议您对您的数据库性能产生巨大的负面影响。

VACUUM FULL VERBOSE ANALYZE <table_name>;
    

0
投票
对于我来说,这是由无人看管的升级引起的,如此答案所述

https://stackoverflow.com/a/76928063/2828480

但有趣的事实是,Postgres本身并没有升级,而是导致重新启动的邮政的某些依赖性。
我做了一些挖掘,我偶然发现了这个答案。
solution

0
投票
IN

/etc/needrestart/conf.d目录创建文件并将其命名为postgres-no-restart.conf

并粘贴此内容:

# Disable automatic restart of PostgreSQL services $nrconf{override_rc} = { '[email protected]' => 0, qr/^postgresql[@].*\.service$/ => 0 # This will match all postgresql@ services };

当它的依赖项之一自动升级unattended-upgrades

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.