[CalendarServer-changes] [7290] CalendarServer/trunk/calendarserver/tap/caldav.py

source_changes at macosforge.org source_changes at macosforge.org
Mon Apr 4 16:21:39 PDT 2011


Revision: 7290
          http://trac.macosforge.org/projects/calendarserver/changeset/7290
Author:   glyph at apple.com
Date:     2011-04-04 16:21:38 -0700 (Mon, 04 Apr 2011)
Log Message:
-----------
move ConnectionLimiter startup to be after SlaveSpawnerService startup, so that some slave process FDs are available by the time we start listening.

Modified Paths:
--------------
    CalendarServer/trunk/calendarserver/tap/caldav.py

Modified: CalendarServer/trunk/calendarserver/tap/caldav.py
===================================================================
--- CalendarServer/trunk/calendarserver/tap/caldav.py	2011-04-04 20:55:05 UTC (rev 7289)
+++ CalendarServer/trunk/calendarserver/tap/caldav.py	2011-04-04 23:21:38 UTC (rev 7290)
@@ -1062,9 +1062,10 @@
             cl = ConnectionLimiter(config.MaxAccepts,
                                    (config.MaxRequests *
                                     config.MultiProcess.ProcessCount))
-            cl.setServiceParent(s)
+            dispatcher = cl.dispatcher
         else:
             s._inheritedSockets = [] # keep a reference to these so they don't close
+            dispatcher = None
 
         for bindAddress in self._allBindAddresses():
             self._validatePortConfig()
@@ -1118,10 +1119,15 @@
                 dispenser = ConnectionDispenser(pool)
             else:
                 dispenser = None
-            return SlaveSpawnerService(
-                self, monitor, dispenser, cl.dispatcher, options["config"],
+            multi = MultiService()
+            spawner = SlaveSpawnerService(
+                self, monitor, dispenser, dispatcher, options["config"],
                 inheritFDs=inheritFDs, inheritSSLFDs=inheritSSLFDs
             )
+            spawner.setServiceParent(multi)
+            if config.UseMetaFD:
+                cl.setServiceParent(multi)
+            return multi
         ssvc = self.storageService(spawnerSvcCreator, uid, gid)
         ssvc.setServiceParent(s)
         return s
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20110404/5cb3fcde/attachment.html>


More information about the calendarserver-changes mailing list