Please sign in to comment.
KNOWN_ISSUES: background threads + Logger monkey patch
Thanks to Michael Guterl for informing us of the issues and testing the monkey patch.
- Loading branch information...
Showing with 33 additions and 0 deletions.
|@@ -0,0 +1,25 @@|
|+# Multi-Processing-safe monkey patch for Logger|
|+# This monkey patch fixes the case where "preload_app true" is used and|
|+# the application spawns a background thread upon being loaded.|
|+# This removes all lock from the Logger code and solely relies on the|
|+# underlying filesystem to handle write(2) system calls atomically when|
|+# O_APPEND is used. This is safe in the presence of both multiple|
|+# threads (native or green) and multiple processes when writing to|
|+# a filesystem with POSIX O_APPEND semantics.|
|+# It should be noted that the original locking on Logger could _never_ be|
|+# considered reliable on non-POSIX filesystems with multiple processes,|
|+# either, so nothing is lost in that case.|
|+ def write(message)|
|+ def close|