我正在将Rails 4.2应用程序升级到Rails 5.0。我们正在使用capybara-minitest-rails
进行功能测试。所有功能测试目前都已超时。我们正在使用ruby 2.4.2p198
。
使用gdb
检查进程时,我得到以下输出:
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
185 ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S: No such file or directory.
我添加了ActionDispatch::DebugLocks
中间件,它在/rails/locks
/home/user/.rvm/gems/ruby-2.4.2@jilt/gems/activerecord-5.0.6/lib/active_record/connection_adapters/postgresql_adapter.rb:598:in `async_exec'
/home/user/.rvm/gems/ruby-2.4.2@jilt/gems/activerecord-5.0.6/lib/active_record/connection_adapters/postgresql_adapter.rb:598:in `block in exec_no_cache'
/home/user/.rvm/gems/ruby-2.4.2@jilt/gems/activerecord-5.0.6/lib/active_record/connection_adapters/abstract_adapter.rb:590:in `block in log'
/home/user/.rvm/gems/ruby-2.4.2@jilt/gems/activesupport-5.0.6/lib/active_support/notifications/instrumenter.rb:21:in `instrument'
/home/user/.rvm/gems/ruby-2.4.2@jilt/gems/activerecord-5.0.6/lib/active_record/connection_adapters/abstract_adapter.rb:583:in `log'
...
/home/user/.rvm/gems/ruby-2.4.2@jilt/gems/railties-5.0.6/lib/rails/engine.rb:522:in `call'
/home/user/.rvm/gems/ruby-2.4.2@jilt/gems/puma-3.10.0/lib/puma/configuration.rb:225:in `call'
/home/user/.rvm/gems/ruby-2.4.2@jilt/gems/puma-3.10.0/lib/puma/server.rb:605:in `handle_request'
/home/user/.rvm/gems/ruby-2.4.2@jilt/gems/puma-3.10.0/lib/puma/server.rb:437:in `process_client'
/home/user/.rvm/gems/ruby-2.4.2@jilt/gems/puma-3.10.0/lib/puma/server.rb:301:in `block in run'
/home/user/.rvm/gems/ruby-2.4.2@jilt/gems/puma-3.10.0/lib/puma/thread_pool.rb:120:in `block in spawn_thread'
我已经换掉了稀薄的美洲狮,我仍然得到同样的问题。试图强迫puma运行1个进程和1个线程,以及设置eager_load=true
没有产生任何积极的结果。