From 813cdd3cbc35a86ebf33aaf028937e70a15ddba0 Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Mon, 25 Jan 2010 18:07:52 -0800 Subject: KNOWN_ISSUES: background threads + Logger monkey patch Thanks to Michael Guterl for informing us of the issues and testing the monkey patch. --- KNOWN_ISSUES | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'KNOWN_ISSUES') diff --git a/KNOWN_ISSUES b/KNOWN_ISSUES index 83b3584..e83e34e 100644 --- a/KNOWN_ISSUES +++ b/KNOWN_ISSUES @@ -3,6 +3,14 @@ Occasionally odd {issues}[link:ISSUES.html] arise without a transparent or acceptable solution. Those issues are documented here. +* When using "preload_app true", with apps using background threads + need to restart them in the after_fork hook because threads are never + shared with child processes. Additionally, any synchronization + primitives (Mutexes, Monitors, ConditionVariables) should be + reinitialized in case they are held during fork time to avoid + deadlocks. The core Ruby Logger class needlessly uses a MonitorMutex + which can be disabled with a {monkey patch}[link:examples/logger_mp_safe.rb] + * Rails 2.3.2 bundles its own version of Rack. This may cause subtle bugs when simultaneously loaded with the system-wide Rack Rubygem which Unicorn depends on. Upgrading to Rails 2.3.4 (or later) is -- cgit v1.2.3-24-ge0c7