1
0
Fork 0
mirror of https://github.com/rails/rails.git synced 2022-11-09 12:12:34 -05:00
rails--rails/activesupport/lib/active_support/concurrency
Brent Wheeldon 1f9f6f6cfc
Prevent deadlocks with load interlock and DB lock.
This fixes an issue where competing threads deadlock each other.

- Thread A holds the load interlock but is blocked on getting the DB lock
- Thread B holds the DB lock but is blocked on getting the load interlock (for example when there is a `Model.transaction` block that needs to autoload)

This solution allows for dependency loading in other threads while a thread is waiting to acquire the DB lock.

Fixes #31019
2017-11-09 10:46:01 -05:00
..
load_interlock_aware_monitor.rb Prevent deadlocks with load interlock and DB lock. 2017-11-09 10:46:01 -05:00
share_lock.rb [Active Support] rubocop -a --only Layout/EmptyLineAfterMagicComment 2017-07-11 13:12:32 +09:00