утечка памяти в режиме разработки - PullRequest
1 голос
/ 26 мая 2011

рельсы 3.0.7 / РЗЭ

Я вижу эту проблему в development , и настройка config.cache_classes = false устраняет проблему. Тем не менее, это не приемлемое решение для dev.

Эта проблема очень раздражает. Некоторые запросы теряют 40 МБ - в результате мой серверный процесс очень быстро получает 2 ГБ памяти, и все останавливается.

bleakhouse показывает множество экземпляров "active_model / attribute_methods.rb: 279", но я действительно не знаю, что с этим делать. Может быть, какой-то мой класс AR что-то пропускает?

Я пробовал какой-то подход к процессу исключения, который приводит к той или иной форме успеха. Затем я удаляю эту функцию и продолжаю только для того, чтобы снова увидеть проблему, которая заставляет меня думать, что это какие-то внутренние рельсы или гем / плагин. Тем не менее, действительно трудно играть в игры на удаление с моими драгоценными камнями в плагинах, так как без них целые контроллеры будут составлять стеки.

Сейчас я думаю, что мне нужен какой-то прямой подход к обнаружению этой (этой?) Утечки памяти.

Кроме того, что бы это ни стоило, это никогда не было проблемой с рельсами 2.3.x. И я, конечно, не могу винить rails 3.x, так как обновление 3.x также включало в себя многочисленные изменения gem / plugin - так что, кто точно знает, что его представило.

Буду признателен за предложения по решению этой проблемы и / или лучшую интерпретацию результатов работы пивной. Спасибо!

холодный дом:

91323 /Users/jsharpe/.rvm/gems/ruby-1.8.7-p334@testapp/gems/activemodel-3.0.7/lib/active_model/attribute_methods.rb:279:__node__
79903 /Users/jsharpe/.rvm/gems/ruby-1.8.7-p334@testapp/gems/activemodel-3.0.7/lib/active_model/attribute_methods.rb:278:__node__
28979 /Users/jsharpe/.rvm/gems/ruby-1.8.7-p334@testapp/gems/activerecord-3.0.7/lib/active_record/attribute_methods/read.rb:80:__node__
22828 /Users/jsharpe/.rvm/gems/ruby-1.8.7-p334@testapp/gems/activemodel-3.0.7/lib/active_model/attribute_methods.rb:278:Proc
19216 /Users/jsharpe/.rvm/gems/ruby-1.8.7-p334@testapp/gems/activemodel-3.0.7/lib/active_model/attribute_methods.rb:274:__varmap__
17314 /Users/jsharpe/.rvm/gems/ruby-1.8.7-p334@testapp/gems/activesupport-3.0.7/lib/active_support/callbacks.rb:404:__node__
16368 /Users/jsharpe/.rvm/gems/ruby-1.8.7-p334@testapp/gems/activesupport-3.0.7/lib/active_support/callbacks.rb:175:__node__
15112 /Users/jsharpe/.rvm/gems/ruby-1.8.7-p334@testapp/gems/hpricot-0.8.2/lib/hpricot/blankslate.rb:59:__node__
15082 /Users/jsharpe/.rvm/gems/ruby-1.8.7-p334@testapp/gems/activesupport-3.0.7/lib/active_support/core_ext/array/wrap.rb:40:Array
14899 /Users/jsharpe/.rvm/gems/ruby-1.8.7-p334@testapp/gems/activerecord-3.0.7/lib/active_record/attribute_methods.rb:21:String
14275 /Users/jsharpe/.rvm/gems/ruby-1.8.7-p334@testapp/gems/activerecord-3.0.7/lib/active_record/attribute_methods/write.rb:14:__node__
11429 /Users/jsharpe/.rvm/gems/ruby-1.8.7-p334@testapp/gems/activemodel-3.0.7/lib/active_model/attribute_methods.rb:274:__node__
11416 /Users/jsharpe/.rvm/gems/ruby-1.8.7-p334@testapp/gems/activemodel-3.0.7/lib/active_model/attribute_methods.rb:279:String
11415 /Users/jsharpe/.rvm/gems/ruby-1.8.7-p334@testapp/gems/activemodel-3.0.7/lib/active_model/attribute_methods.rb:278:String
11414 /Users/jsharpe/rubypatch/lib/ruby/1.8/set.rb:158:String
11414 /Users/jsharpe/.rvm/gems/ruby-1.8.7-p334@testapp/gems/activemodel-3.0.7/lib/active_model/attribute_methods.rb:337:__varmap__
11414 /Users/jsharpe/.rvm/gems/ruby-1.8.7-p334@testapp/gems/activemodel-3.0.7/lib/active_model/attribute_methods.rb:280:__node__
11414 /Users/jsharpe/.rvm/gems/ruby-1.8.7-p334@testapp/gems/activemodel-3.0.7/lib/active_model/attribute_methods.rb:272:String
11414 /Users/jsharpe/.rvm/gems/ruby-1.8.7-p334@testapp/gems/activemodel-3.0.7/lib/active_model/attribute_methods.rb:267:__varmap__
10937 /Users/jsharpe/.rvm/gems/ruby-1.8.7-p334@testapp/gems/activesupport-3.0.7/lib/active_support/callbacks.rb:407:__node__
...