8
我從Rails 3.0遷移到3.2。如何在Rails 3.2中找到「SystemStackError(堆棧級別太深)」的原點
我有一個錯誤,當我嘗試顯示一個網頁,只有這個小堆棧跟蹤:
SystemStackError in UserController#show
stack level too deep
SystemStackError (stack level too deep):
activesupport (3.2.1) lib/active_support/callbacks.rb:415
Rendered /home/barbacan/.rvm/gems/ruby-1.9.2-head/gems/actionpack-3.2.1/lib/action_dispatch/middleware/templates/rescues/_trace.erb (55.3ms)
Rendered /home/barbacan/.rvm/gems/ruby-1.9.2-head/gems/actionpack-3.2.1/lib/action_dispatch/middleware/templates/rescues/_request_and_response.erb (4.0ms)
Rendered /home/barbacan/.rvm/gems/ruby-1.9.2-head/gems/actionpack-3.2.1/lib/action_dispatch/middleware/templates/rescues/diagnostics.erb within rescues/layout (61.4ms)
日誌不詳細。
回調時發生此問題:它是動態代碼,並且很難調試。
您知道哪些工具或方法可以幫助我進行調試並找到此問題的根源嗎?
謝謝!
編輯:
在Ruby /回報率,有一種方法可以列出所有調用的方法,作爲一個上市?
如果他想撬動他,他需要[pry-nav](https://github.com/nixme/pry-nav)插件:)我也推薦[pry-stack_explorer](https:/ /github.com/pry/pry-stack_explorer)如果他想導航callstack – horseyguy 2012-02-08 15:24:04
謝謝,但不幸pry-nav不能用我的配置。 我使用rdebug進行了測試,但在WEBrick初始化之後斷點不工作(進程分叉?)... – barbacan 2012-02-13 08:58:21