【问题标题】:Delayed Jobs not executing Queue延迟作业不执行队列
【发布时间】:2020-03-20 09:08:18
【问题描述】:

在 v5.2 上运行的 Rails 应用。使用 puma 服务器和 postgres 数据库。未运行作业队列的延迟作业。在 DJ 服务启动时收到以下错误消息并且 DJ 终止但 rake jobs:work 命令正在运行作业而没有任何问题。

RAILS_ENV=development bin/delayed_job start

返回错误信息

E, [2018-06-23T15:43:34.630732 #4316] ERROR -- : 2018-06-23T15:43:34-0700: [Worker(delayed_job host:WA021Z7GTFM pid:4316)] Job UploadSpeechJob (id=2066014) FAILED (0 prior attempts) with ActiveRecord::StatementInvalid: PG::ConnectionBad: PQconsumeInput() server closed the connection unexpectedly
    This probably means the server terminated abnormally
    before or while processing the request.
:               SELECT a.attname, format_type(a.atttypid, a.atttypmod),
                     pg_get_expr(d.adbin, d.adrelid), a.attnotnull, a.atttypid, a.atttypmod,
                     c.collname, col_description(a.attrelid, a.attnum) AS comment
                FROM pg_attribute a
                LEFT JOIN pg_attrdef d ON a.attrelid = d.adrelid AND a.attnum = d.adnum
                LEFT JOIN pg_type t ON a.atttypid = t.oid
                LEFT JOIN pg_collation c ON a.attcollation = c.oid AND a.attcollation <> t.typcollation
               WHERE a.attrelid = '"asset_files"'::regclass
                 AND a.attnum > 0 AND NOT a.attisdropped
               ORDER BY a.attnum

此问题在所有环境中都存在。我曾尝试重新启动 DJ,但没有成功。 作为一种解决方法,我正在使用此命令。

RAILS_ENV=development rake jobs:work

应用程序最近从 4.2 迁移到 5.2。延迟作业是否支持 rails v5.2。有人能指出我正确的方向吗?

【问题讨论】:

  • 该查询只是询问asset_files 表中列的类型。您可以在该表上尝试reindex table vacuum_fullcluster,但这可能无济于事。你能做数据库备份吗?
  • 最近在本地环境中加载了备份。
  • 我确定,这不是asset_files 索引的问题。截断表并重置索引,但没有运气。
  • 你解决了吗?我遇到了类似的问题,延迟的作业对我来说根本没有运行,我也不知道如何调试

标签: ruby-on-rails postgresql delayed-job


【解决方案1】:

从 rails 5.1.6 升级到 rails 5.2.4.1 后,我遇到了类似的情况。在 5.1.6 中,有

config.active_job.queue_adapter = :delayed_job

在我的 config/application.rb 文件中,并且在任何特定于环境的文件中都不需要它。

百灵鸟,我放了

config.active_job.queue_adapter = :delayed_job

进入我的 config/environments/development.rb 文件,然后工作突然开始触发。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-02
    • 2012-03-29
    • 1970-01-01
    • 2023-03-22
    • 2018-08-16
    • 1970-01-01
    相关资源
    最近更新 更多