延迟作业在heroku上失败但在本地运行

时间:2012-07-16 16:48:53

标签: ruby-on-rails heroku amazon-s3 delayed-job

我有一个延迟作业,用aws / s3处理一堆S3对象。它通过“rake jobs:work”在本地工作,但在Heroku上失败,出现以下错误:

“{作业未能加载:未初始化的常量Net :: HTTP :: ConnectionPool ...”

我也可以通过“heroku run console”启动Heroku控制台并运行该作业的方法。 ConnectionPool来自aws所以我试图强制要求'aws / s3',但它没有帮助。有什么想法吗?

宝石: aws-sdk(1.5.6) 铁轨(3.1.0) delayed_job(3.0.3)

1 个答案:

答案 0 :(得分:0)

事实证明我正在重用模块中的s3连接。如果存在,模块将返回现有连接,如果不存在,则创建一个新连接。我不确定为什么它在我当地的DJ工作,而不是在Heroku工作者工作,因为我不认为在任何一个环境中都应该有现有的连接,并且在两种情况下工作都是通过rake任务启动的,就像工人。无论如何,在作业中通过AWS :: S3.new创建新的S3连接后,问题就解决了。

希望这有助于某人。

相关问题