[Checkins] SVN: zc.zk/trunk/src/zc/zk/ Fixed a race that could cause ZooKeeper logging info to be output

Jim Fulton jim at zope.com
Mon Dec 12 20:59:47 UTC 2011


Log message for revision 123782:
  Fixed a race that could cause ZooKeeper logging info to be output
  before ``zc.zk`` began redirecting it.
  

Changed:
  U   zc.zk/trunk/src/zc/zk/README.txt
  U   zc.zk/trunk/src/zc/zk/__init__.py

-=-
Modified: zc.zk/trunk/src/zc/zk/README.txt
===================================================================
--- zc.zk/trunk/src/zc/zk/README.txt	2011-12-12 18:23:03 UTC (rev 123781)
+++ zc.zk/trunk/src/zc/zk/README.txt	2011-12-12 20:59:46 UTC (rev 123782)
@@ -808,6 +808,12 @@
 Change History
 ==============
 
+0.4.0 (2011-12-??)
+------------------
+
+- Fixed a race that could cause ZooKeeper logging info to be output
+  before ``zc.zk`` began redirecting it.
+
 0.3.0 (2011-12-11)
 ------------------
 

Modified: zc.zk/trunk/src/zc/zk/__init__.py
===================================================================
--- zc.zk/trunk/src/zc/zk/__init__.py	2011-12-12 18:23:03 UTC (rev 123781)
+++ zc.zk/trunk/src/zc/zk/__init__.py	2011-12-12 20:59:46 UTC (rev 123782)
@@ -26,10 +26,12 @@
 
 logger = logging.getLogger(__name__)
 
+_logging_pipe = os.pipe()
+zookeeper.set_log_stream(os.fdopen(_logging_pipe[1], 'w'))
+
 @zc.thread.Thread
 def loggingthread():
-    r, w = os.pipe()
-    zookeeper.set_log_stream(os.fdopen(w, 'w'))
+    r, w = _logging_pipe
     log = logging.getLogger('ZooKeeper').log
     f = os.fdopen(r)
     levels = dict(ZOO_INFO = logging.INFO,



More information about the checkins mailing list