Thanks, Phil. Here is a typical full traceback:

  1) AccountActivationsController GET 'edit' should have 'Account Activation' 
as the title
     Failure/Error: @user = User.find_by_activation_token(params[:id])
     
     ThreadError:
       deadlock; recursive locking
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/test-prof-0.7.5/lib/test_prof/recipes/active_record_shared_connection.rb:50:in
 `synchronize'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/test-prof-0.7.5/lib/test_prof/recipes/active_record_shared_connection.rb:50:in
 `exec_no_cache'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/activerecord-5.0.6/lib/active_record/connection_adapters/postgresql_adapter.rb:585:in
 `execute_and_clear'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/activerecord-5.0.6/lib/active_record/connection_adapters/postgresql/database_statements.rb:13:in
 `select_value'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/activerecord-5.0.6/lib/active_record/connection_adapters/postgresql/schema_statements.rb:322:in
 `schema_search_path'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/activerecord-5.0.6/lib/active_record/connection_adapters/postgresql_adapter.rb:647:in
 `sql_key'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/activerecord-5.0.6/lib/active_record/connection_adapters/postgresql_adapter.rb:653:in
 `prepare_statement'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/activerecord-5.0.6/lib/active_record/connection_adapters/postgresql_adapter.rb:602:in
 `exec_cache'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/test-prof-0.7.5/lib/test_prof/recipes/active_record_shared_connection.rb:46:in
 `block in exec_cache'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/test-prof-0.7.5/lib/test_prof/recipes/active_record_shared_connection.rb:46:in
 `synchronize'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/test-prof-0.7.5/lib/test_prof/recipes/active_record_shared_connection.rb:46:in
 `exec_cache'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/activerecord-5.0.6/lib/active_record/connection_adapters/postgresql_adapter.rb:589:in
 `execute_and_clear'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/activerecord-5.0.6/lib/active_record/connection_adapters/postgresql/database_statements.rb:103:in
 `exec_query'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/activerecord-5.0.6/lib/active_record/connection_adapters/abstract/database_statements.rb:377:in
 `select_prepared'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/activerecord-5.0.6/lib/active_record/connection_adapters/abstract/database_statements.rb:39:in
 `select_all'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/activerecord-5.0.6/lib/active_record/connection_adapters/abstract/query_cache.rb:95:in
 `select_all'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/activerecord-5.0.6/lib/active_record/querying.rb:39:in
 `find_by_sql'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/activerecord-5.0.6/lib/active_record/statement_cache.rb:109:in
 `execute'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/activerecord-5.0.6/lib/active_record/core.rb:203:in
 `find_by'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/activerecord-5.0.6/lib/active_record/dynamic_matchers.rb:65:in
 `find_by_activation_token'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/activerecord-5.0.6/lib/active_record/dynamic_matchers.rb:19:in
 `method_missing'
     # ./app/controllers/account_activations_controller.rb:8:in `edit'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/actionpack-5.0.6/lib/action_controller/metal/basic_implicit_render.rb:4:in
 `send_action'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/actionpack-5.0.6/lib/abstract_controller/base.rb:188:in
 `process_action'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/actionpack-5.0.6/lib/action_controller/metal/rendering.rb:30:in
 `process_action'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/actionpack-5.0.6/lib/abstract_controller/callbacks.rb:20:in
 `block in process_action'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/activesupport-5.0.6/lib/active_support/callbacks.rb:126:in
 `call'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/activesupport-5.0.6/lib/active_support/callbacks.rb:506:in
 `block (2 levels) in compile'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/activesupport-5.0.6/lib/active_support/callbacks.rb:455:in
 `call'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/activesupport-5.0.6/lib/active_support/callbacks.rb:101:in
 `__run_callbacks__'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/activesupport-5.0.6/lib/active_support/callbacks.rb:750:in
 `_run_process_action_callbacks'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/activesupport-5.0.6/lib/active_support/callbacks.rb:90:in
 `run_callbacks'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/actionpack-5.0.6/lib/abstract_controller/callbacks.rb:19:in
 `process_action'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/actionpack-5.0.6/lib/action_controller/metal/rescue.rb:20:in
 `process_action'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/actionpack-5.0.6/lib/action_controller/metal/instrumentation.rb:32:in
 `block in process_action'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/activesupport-5.0.6/lib/active_support/notifications.rb:164:in
 `block in instrument'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/activesupport-5.0.6/lib/active_support/notifications/instrumenter.rb:21:in
 `instrument'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/activesupport-5.0.6/lib/active_support/notifications.rb:164:in
 `instrument'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/actionpack-5.0.6/lib/action_controller/metal/instrumentation.rb:30:in
 `process_action'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/actionpack-5.0.6/lib/action_controller/metal/params_wrapper.rb:248:in
 `process_action'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/activerecord-5.0.6/lib/active_record/railties/controller_runtime.rb:18:in
 `process_action'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/actionpack-5.0.6/lib/abstract_controller/base.rb:126:in
 `process'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/actionview-5.0.6/lib/action_view/rendering.rb:30:in
 `process'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/actionpack-5.0.6/lib/action_controller/metal.rb:190:in
 `dispatch'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/actionpack-5.0.6/lib/action_controller/test_case.rb:547:in
 `process'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/actionpack-5.0.6/lib/action_controller/test_case.rb:644:in
 `process_with_kwargs'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/actionpack-5.0.6/lib/action_controller/test_case.rb:389:in
 `get'
     # ./spec/controllers/account_activations_controller_spec.rb:11:in `block 
(3 levels) in <top (required)>'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/example.rb:455:in
 `instance_exec'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/example.rb:455:in
 `instance_exec'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/hooks.rb:365:in
 `run'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/hooks.rb:529:in
 `block in run_owned_hooks_for'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/hooks.rb:528:in
 `each'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/hooks.rb:528:in
 `run_owned_hooks_for'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/hooks.rb:615:in
 `block in run_example_hooks_for'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/hooks.rb:614:in
 `reverse_each'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/hooks.rb:614:in
 `run_example_hooks_for'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/hooks.rb:484:in
 `run'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/example.rb:502:in
 `run_before_example'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/example.rb:261:in
 `block in run'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/example.rb:508:in
 `block in with_around_and_singleton_context_hooks'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/example.rb:465:in
 `block in with_around_example_hooks'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/hooks.rb:486:in
 `block in run'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/hooks.rb:626:in
 `block in run_around_example_hooks_for'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/example.rb:350:in
 `call'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-rails-3.9.1/lib/rspec/rails/example/controller_example_group.rb:191:in
 `block (2 levels) in <module:ControllerExampleGroup>'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/example.rb:455:in
 `instance_exec'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/example.rb:455:in
 `instance_exec'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/hooks.rb:390:in
 `execute_with'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/hooks.rb:628:in
 `block (2 levels) in run_around_example_hooks_for'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/example.rb:350:in
 `call'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-rails-3.9.1/lib/rspec/rails/adapters.rb:127:in
 `block (2 levels) in <module:MinitestLifecycleAdapter>'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/example.rb:455:in
 `instance_exec'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/example.rb:455:in
 `instance_exec'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/hooks.rb:390:in
 `execute_with'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/hooks.rb:628:in
 `block (2 levels) in run_around_example_hooks_for'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/example.rb:350:in
 `call'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/hooks.rb:629:in
 `run_around_example_hooks_for'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/hooks.rb:486:in
 `run'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/example.rb:465:in
 `with_around_example_hooks'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/example.rb:508:in
 `with_around_and_singleton_context_hooks'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/example.rb:259:in
 `run'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/example_group.rb:644:in
 `block in run_examples'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/example_group.rb:640:in
 `map'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/example_group.rb:640:in
 `run_examples'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/example_group.rb:606:in
 `run'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/example_group.rb:607:in
 `block in run'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/example_group.rb:607:in
 `map'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/example_group.rb:607:in
 `run'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/runner.rb:121:in
 `block (3 levels) in run_specs'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/runner.rb:121:in
 `map'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/runner.rb:121:in
 `block (2 levels) in run_specs'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/configuration.rb:2061:in
 `with_suite_hooks'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/runner.rb:116:in
 `block in run_specs'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/reporter.rb:74:in
 `report'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/runner.rb:115:in
 `run_specs'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/runner.rb:89:in
 `run'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/runner.rb:71:in
 `run'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/lib/rspec/core/runner.rb:45:in
 `invoke'
     # 
/Users/jackrg/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/rspec-core-3.9.3/exe/rspec:4:in
 `<top (required)>'
     # /Users/jackrg/.rbenv/versions/2.3.8/bin/rspec:22:in `load'
     # /Users/jackrg/.rbenv/versions/2.3.8/bin/rspec:22:in `<main>'


> On Nov 23, 2020, at 12:00 PM, Phil Pirozhkov <[email protected]> wrote:
> 
> Jack,
> 
> Congrats, it's a huge leap in your epic update story!
> 
> Can you please post an example trace?
> 
> On Mon, Nov 23, 2020 at 10:06 PM Jack Royal-Gordon <[email protected] 
> <mailto:[email protected]>> wrote:
> After migrating from Ruby 2.2 / Rails 4.2 to Ruby 2.3 / Rails 5.0, I’m 
> getting hundreds of “ThreadError: deadlock; recursive locking” error messages 
> on 40% of my tests (~800 of 2000 examples). All  of the failures are on 
> ActiveRecord calls — <rec>.reload, <model>.last, <model>.find_by_<field>, 
> etc. They happen in controller, helper, model, and feature specs.
> 
> I do not get any of these errors when exercising my app in Development, only 
> when running tests. I saw one writeup that tied deadlock errors with 
> Celluloid 0.17.3 and Ruby 2.2.5 and 2.3.1, but I’m not running that version 
> of Celluloid (0.15.2).
> 
> I don’t expect that the problem is actually in RSpec, but since it only 
> happens when running RSpec, perhaps someone on this list has seen this 
> problem before.
> 
> BTW, I’m using RSpec 3.9.1
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "rspec" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to [email protected] 
> <mailto:rspec%[email protected]>.
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/rspec/73130943-1E26-4319-8433-3DBD5E65217B%40pobox.com
>  
> <https://groups.google.com/d/msgid/rspec/73130943-1E26-4319-8433-3DBD5E65217B%40pobox.com>.
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "rspec" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to [email protected] 
> <mailto:[email protected]>.
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/rspec/CAAk5Ok9yW32ADwodG11xWPfbsAuyuoqYWf_jhcGn_SkHwfVw5Q%40mail.gmail.com
>  
> <https://groups.google.com/d/msgid/rspec/CAAk5Ok9yW32ADwodG11xWPfbsAuyuoqYWf_jhcGn_SkHwfVw5Q%40mail.gmail.com?utm_medium=email&utm_source=footer>.

-- 
You received this message because you are subscribed to the Google Groups 
"rspec" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/rspec/EE24F610-706C-43B7-A5F3-51055C5675EA%40pobox.com.

Reply via email to