event,:variable => true" />
开发者

Rails 3.1, memory leak for missing local partial variables (Ruby 1.9.2-p290)

If I render a partial like so:

= render :partial => "event_news_item", :object => event, :variable => true

And then reference variable in the partial a memory leak is triggered. It seems rails goes into a recursion. I have to then quickly restart my server before memory usage spirals out of control.

Anyone knows why the memory leak is triggered here? Can anyone confirm this on their machine?

If I do

= render :partial => "event_news_item", :object => event

An error is raised correctly when trying to reference variable in the partial.

(The correct way of doing this 开发者_开发技巧by the way is

= render :partial => "event_news_item", :object => event, :locals => { :variable => true })


I have seen a really bad memory leak in similar environment. I've tracked it to the innocently looking association fetch (comment.author, to be precise), then tried to debug it for some time, and finally gave up and ran on 1.9.3-rc1.

Surprisingly, that fixed this particular memory leak, and, moreover, reduced the unicorns' startup size by 15M (from 85M to 70M; i386).

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜