This is how I debug SystemStackError when there is no stack trace.
My first attempt was:
begin
a_method_that_causes_infinite_recursion_in_a_not_obvious_way
rescue SystemStackError
puts caller
endThis is how I debug SystemStackError when there is no stack trace.
My first attempt was:
begin
a_method_that_causes_infinite_recursion_in_a_not_obvious_way
rescue SystemStackError
puts caller
end| class TasksController < ApplicationController | |
| def update | |
| tracker = TaskTracker.new(@task) | |
| if @task.update_attributes(params[:task]) | |
| TaskPusher.new(tracker, socket_id).push_changes | |
| TaskMailSender.new(tracker, current_user).deliver_email | |
| # success response | |
| else | |
| # failure respond | |
| end |
| --colour | |
| -I app |
| ## conduce - be conducive to; "The use of computers in the classroom lead to better writing" | |
| # | |
| # a model+view component for rails that combines the conductor and presenter | |
| # pattern via a model capable of generating view-centric methods | |
| # | |
| module Conducer | |
| # base class | |
| # |
| require 'test_helper' | |
| require 'minitest/autorun' | |
| module Tenderlove | |
| class Spec < MiniTest::Spec | |
| include ActiveSupport::Testing::SetupAndTeardown | |
| include ActiveRecord::TestFixtures | |
| alias :method_name :__name__ if defined? :__name__ | |
| self.fixture_path = File.join(Rails.root, 'test', 'fixtures') |
| class QueryTracer < ActiveSupport::LogSubscriber | |
| ACCEPT = %r{^(app|config|lib)}.freeze | |
| FRAMES = 5 | |
| THRESHOLD = 300 # In ms | |
| def sql(event) | |
| return unless event.duration > THRESHOLD | |
| callers = Rails. | |
| backtrace_cleaner. |