rails heroku api delayed_job 错误 Heroku::API::Errors::ErrorWithResponse:预期(200)<=> 实际(410 消失)

rails heroku api delayed_job error Heroku::API::Errors::ErrorWithResponse: Expected(200) <=> Actual(410 Gone)

自 2017 年 6 月 26 日以来,由于缺少 heroku api,我收到了一个 heroku api 错误。

错误如下:

   (1.9ms)  COMMIT
   (1.9ms)  COMMIT
   (8.0ms)  SELECT COUNT(*) FROM "delayed_jobs" WHERE "delayed_jobs"."failed_at" IS NULL
   (8.0ms)  SELECT COUNT(*) FROM "delayed_jobs" WHERE "delayed_jobs"."failed_at" IS NULL
    Heroku::API::Errors::ErrorWithResponse: Expected(200) <=> Actual(410 Gone)

    body: "{\"id\":\"gone\",\"error\":\"This version of the API has been Sunset.\nPlease see https://devcenter.heroku.com/changelog-items/1147 for more information.\n\"}"
    from /app/vendor/bundle/ruby/2.2.0/gems/excon-0.57.0/lib/excon/middlewares/expects.rb:7:in `response_call'

错误很容易解释,我查看了 url https://devcenter.heroku.com/changelog-items/1147,其中显示 api 已被删除,但在更新所有内容后我仍然得到错误。我没有直接使用 API,我想我已经将它缩小到 deleyed_job gem,因为我可以在 heroku 控制台 运行

    Product.some_function() 

它工作正常,但是如果我 运行:

    Product.delay.some_function()

我收到上面粘贴的错误。我在我的 gem 文件中使用延迟的工作和无用的 gems,并且两者都已更新,没有任何变化。

这是我的 Gemfile.lock

的片段
    .
    .
    .
    delayed_job (4.1.3)
      activesupport (>= 3.0, < 5.2)
    delayed_job_active_record (4.1.2)
      activerecord (>= 3.0, < 5.2)
      delayed_job (>= 3.0, < 5)
    .
    .
    .
    heroku-api (0.4.2)
    .
    .
    .
    workless (1.2.3)
     delayed_job (>= 2.0.7)
     heroku-api
     rails
     rush
    .
    .
    .
    DEPENDENCIES
    .
    .
    .
    delayed_job_active_record
    .
    .
    .

有谁知道 API 和 delayed_job gem 使用的是哪一部分导致了错误?我是否必须进入并猴子修补 gem 才能使其正常工作,还是我遗漏了其他问题。任何帮助是极大的赞赏!为了这个我一直在用头撞墙,因为似乎没有任何效果!

谢谢!

所以它毕竟是 'workless' gem。对于发现这个的任何其他人,只需用 davidakachao 的这个替换无用的 gem : https://github.com/davidakachaos/workless_revived

要使其正常工作需要一些小改动,因为它并不完全相同。只需确保您使用的是他的最新版本 gem (2.1) 并按照他的设置说明进行操作即可。

感谢 davidakachaos 的工作(less)!