[CalendarServer-changes] [15606] CalendarServer/trunk/calendarserver/tools/dashcollect.py

source_changes at macosforge.org source_changes at macosforge.org
Wed May 18 17:55:46 PDT 2016


Revision: 15606
          http://trac.calendarserver.org//changeset/15606
Author:   cdaboo at apple.com
Date:     2016-05-18 17:55:46 -0700 (Wed, 18 May 2016)
Log Message:
-----------
Better connection handling.

Modified Paths:
--------------
    CalendarServer/trunk/calendarserver/tools/dashcollect.py

Modified: CalendarServer/trunk/calendarserver/tools/dashcollect.py
===================================================================
--- CalendarServer/trunk/calendarserver/tools/dashcollect.py	2016-05-19 00:06:12 UTC (rev 15605)
+++ CalendarServer/trunk/calendarserver/tools/dashcollect.py	2016-05-19 00:55:46 UTC (rev 15606)
@@ -243,12 +243,16 @@
         items = list(set(self.items))
         try:
             if self.socket is None:
-                self.socket = socket.socket(socket.AF_INET if self.useTCP else socket.AF_UNIX, socket.SOCK_STREAM)
-                self.socket.connect(self.sockname)
+                if self.useTCP:
+                    self.socket = socket.create_connection(self.sockname, 1.0)
+                else:
+                    self.socket = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)
+                    self.socket.connect(self.sockname)
                 self.socket.setblocking(0)
             self.socket.sendall(json.dumps(items) + "\r\n")
         except socket.error:
             self.socket = None
+            _verbose("    server failed: {}".format(self.host))
         except ValueError:
             pass
 
@@ -257,6 +261,8 @@
         """
         Open a socket, send the specified request, and retrieve the response. Keep the socket open.
         """
+        if self.socket is None:
+            return {}
         try:
             data = ""
             t = time.time()
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20160518/21463f97/attachment.html>


More information about the calendarserver-changes mailing list