Skip to content
  • Brent Wheeldon's avatar
    1f9f6f6c
    Prevent deadlocks with load interlock and DB lock. · 1f9f6f6c
    Brent Wheeldon authored
    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
    1f9f6f6c
    Prevent deadlocks with load interlock and DB lock.
    Brent Wheeldon authored
    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
Loading