ApplicationController的副本已从模块树中删除但仍处于活动状态

Mat*_*chu 17 ruby rubygems ruby-on-rails-plugins ruby-on-rails-2

每当两个并发HTTP请求转到我的Rails应用程序时,第二个总是返回以下错误:

ApplicationController的副本已从模块树中删除但仍处于活动状态!

从那里它给出了一个无益的堆栈跟踪效果"我们经历了标准服务器的东西,在ApplicationController上运行了你的第一个before_filter (我检查过;它只是先运行哪个过滤器) ",然后提供以下内容:

/home/matchu/rails/torch/vendor/rails/activesupport/lib/active_support/dependencies.rb:414:in"load_missing_constant'

/home/matchu/rails/torch/vendor/rails/activesupport/lib/active_support/dependencies.rb:96:in`const_missing'

我假设是一个通用的回应,并没有真正说太多.

谷歌似乎告诉我,开发Rails引擎的人会遇到这种情况,但我不这样做.我所做的就是将我的Rails应用程序从2.2(2.1?)升级到2.3.

导致此错误的可能原因是什么,以及如何跟踪实际发生的情况?我知道这个问题很模糊,所以其他任何信息都有帮助吗?

更重要的是:我刚刚尝试在"生产"环境中进行测试,并且错误似乎不会持续存在.那么这只会影响发展吗?我不需要太担心吗?

mix*_*nic 8

这是Rails 2.3.3中的一个错误:

在2-3稳定中有一个补丁(但不完整?):

您有几个选项可以解决此问题:

  • 恢复到Rails 2.3.2,等待2.3.4出现,可能是在8月底.2.3.3有几个不好的问题,所以这可能是最好的.
  • 问题不应该发生在生产模式中,也不会发生在Thin服务器下的开发模式中.如果您在生产模式下的Google Engines上遇到此问题,那么该修补程序是您唯一的希望.如果它仅在开发模式下,您可以使用Thin而不是Mongrel运行本地服务器.
  • 如果是Google Engines,您可以退出Google引擎并以其他方式托管您的应用.这似乎很多工作.

祝你好运,这是一个很多人遇到的非常糟糕的错误.