2011-10-15 40 views
-1

我有一个应用程序使用rufus-scheduler来运行各种后台任务。在最近升级到Ruby 1.9.2后,我们继续发生间歇性分段错误和/或总线错误。错误将发生在不同的库中。rufus-scheduler中运行的分段错误

我发现的一件事是,在rufus-scheduler下运行时会导致分段错误的相同函数在从控制台运行时不会失败。

这发生在两个平台(OSX for development,ubuntu for production)上。

有没有人有什么不同的rufus调度程序环境之间的运行时间和直接从“rails c”控制台运行的东西?

在此先感谢...

罗素

回答

0

你似乎在暗示它使用Ruby 1.8.x.工作反正什么Ruby 1.9.2 patchlevel?

鲁弗斯调度是一个非常愚蠢的图书馆,你可以用的东西完全取代它像

Thread.new do 
    loop do 
    sleep 60 * 60 
    trigger_my_hourly_task 
    end 
end 
Thread.new do 
    loop do 
    sleep 24 * 60 * 60 
    trigger_my_daily_task 
    end 
end 

,看看问题是否仍然存在。

没有rufus调度程序环境,rufus调度程序是纯ruby,它生活在您的服务器和您的rails应用程序的环境中。在“rails c”控制台中运行的东西正在运行一个全新的过程,没有累积的内存使用,这是“蓝天”。

如果你真的认为这是一个rufus调度问题,你应该能够想出一个复制问题的详细方法。