【问题标题】:Postgresql, Rails - could not fork autovacuum worker process: Resource temporarily unavailablePostgresql,Rails - 无法分叉 autovacuum 工作进程:资源暂时不可用
【发布时间】:2017-02-25 07:40:54
【问题描述】:

在我的本地环境 Mac OSX 中,每次我启动服务器 - puma - 和工作人员 - resque 时,都会发生这种情况。

日志没有说任何有用的信息,只是重复,“无法分叉 autovacuum 工作进程:资源暂时不可用。”

在我将 ctr-c 关闭服务器之前,它会锁定我的整个计算机。当我尝试在浏览器中访问一个站点时,它会挂起,当我在终端中打开一个新选项卡时,它会显示“管道损坏”并关闭它。 MAC控制台没有吐出任何有用的东西,至少据我所知。

有人知道这是为什么吗?

我已经多次重启 Postgres 无济于事。

编辑:

日志刚刚开始吐出,'LOG: could not fork new process for connection: 资源暂时不可用'

Puma 线程数:

threads_count = ENV.fetch("RAILS_MAX_THREADS") { 10 }.to_i

数据库:pool: 100

编辑2:

尝试将 max_connection 计数从 100 增加到 200,仍然没有。遇到重复的 postmaster.id 错误。删除它,重新启动 Postgres,但仍然存在相同的问题 - 清除了 postmaster.id 错误。

【问题讨论】:

    标签: ruby-on-rails macos postgresql rails-postgresql autovacuum


    【解决方案1】:

    我关注了这两篇文章,到目前为止这似乎有效。如果有变化会更新。

    https://github.com/sociam/indx/wiki/Increasing-max-connections-under-os-x

    http://big-elephants.com/2012-12/tuning-postgres-on-macos/

    编辑:根据我的经验,这对我没有帮助。删除 postmaster.pid 似乎也没有多大作用,但似乎比上面说的要多。如果有人偶然发现并解决了这个问题,如果你能发布它,那就太好了。如果有其他变化,我会更新。 FWIW,当这种情况发生时,有时 Reddis 会大吃一惊,并说它不再可以保存到磁盘。

    【讨论】:

      【解决方案2】:

      我遇到了同样的问题,并尝试了@jack-rothrock 在他的回答中提出的修复,但无济于事。

      我注意到当我尝试使用自制服务从命令行启动 postgres 时,我会收到一条消息说 postgres 已经在运行,这提醒我已经安装了“Postgres 应用程序”(您可以下载的 postgres 应用程序)来自http://postgresapp.com/。我重新启动了该应用程序,但并非一切正常。

      开始新的一年的好方法!

      【讨论】:

      • 我注意到的是,这只会在我让服务器运行一段时间并且计算机在某个时候进入睡眠模式时才会发生 - 从未完全关闭。当我重新启动计算机时,它总是会修复它,而且我在第一次会话中从未遇到过问题。您是否也注意到了这一点?
      • 这是我第一次遇到这个问题,所以我不确定。过去,当我重新启动计算机时,postgres 应用程序无法正常关闭,我遇到了不同的问题。
      • 有人找到解决方案了吗?我还在为此苦苦挣扎
      猜你喜欢
      • 2018-08-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-08-17
      • 1970-01-01
      • 2016-04-02
      • 2012-04-11
      相关资源
      最近更新 更多