系统调用正在终止

时间:2010-06-17 15:07:41

标签: ruby-on-rails ruby

我正在运行rake任务(必须启动~24小时)但它会在意外时间停止。 STRERR是空的。 运行任务的代码:

@bucket = Bucket.find(params[:id])
cmd = "#{`which rake`.chomp} bucket:generate[#{@bucket.id}] --trace 2>&1 > #{Rails.root}/log/bucket-#{@network.id}.log &" # 2> #{Rails.root}/log/bucket-#{@network.id}-error.log &"
system(cmd)
flash[:notice] = "Generation started"
redirect_to buckets_path

如果我从控制台运行任务,它会正常执行,但是从控制器执行的任务会在一段时间后停止......

1 个答案:

答案 0 :(得分:1)

请求最终超时;这不是这种命令的正确位置。

相反,尝试其他方法来安排任务,例如cron或我的调度程序守护程序gem:

http://www.github.com/ssoroka/scheduler_daemon

如果需要从控制器驱动它,请让它更新数据库条目,甚至改写文件。