Project

General

Profile

This project is closed and read-only.

Actions

Backport #2564

closed

[patch] re-initialize timer_thread_{lock,cond} after fork

Backport #2564: [patch] re-initialize timer_thread_{lock,cond} after fork

Added by alk (Aliaksey Kandratsenka) over 16 years ago. Updated over 15 years ago.


Description

=begin
After fork ruby clears timer_thread_id and then creates new timer thread in new process. But because new process inherits memory of old process it may see locked timer_thread_lock and well as invalid state of timer_thread_cond.

This patch simply initializes both this variables before their first use.

This bug causes lockup of Rails apps under phusion passenger on ruby 1.9.1.
=end


Files

Actions

Also available in: PDF Atom