Title: [126905] trunk/Tools
Revision
126905
Author
[email protected]
Date
2012-08-28 11:36:38 -0700 (Tue, 28 Aug 2012)

Log Message

[webkit-patch] gets stuck into an infinite loop if bugzilla doesn't respond in time.
https://bugs.webkit.org/show_bug.cgi?id=94700

Patch by Szilard Ledan <[email protected]> on 2012-08-28
Reviewed by Eric Seidel.

Interrupting download with a timeout would be a possible solution.
I imported the socket module and used the setdefaulttimeout() method.
Fixing it is important, because EWS bots need to be restarted regularly
because of this bug.

* Scripts/webkitpy/common/net/bugzilla/bugzilla.py:
(Bugzilla._get_browser):
(Bugzilla.setdefaulttimeout):

Modified Paths

Diff

Modified: trunk/Tools/ChangeLog (126904 => 126905)


--- trunk/Tools/ChangeLog	2012-08-28 18:36:38 UTC (rev 126904)
+++ trunk/Tools/ChangeLog	2012-08-28 18:36:38 UTC (rev 126905)
@@ -1,3 +1,19 @@
+2012-08-28  Szilard Ledan  <[email protected]>
+
+        [webkit-patch] gets stuck into an infinite loop if bugzilla doesn't respond in time.
+        https://bugs.webkit.org/show_bug.cgi?id=94700
+
+        Reviewed by Eric Seidel.
+
+        Interrupting download with a timeout would be a possible solution.
+        I imported the socket module and used the setdefaulttimeout() method.
+        Fixing it is important, because EWS bots need to be restarted regularly
+        because of this bug.
+
+        * Scripts/webkitpy/common/net/bugzilla/bugzilla.py:
+        (Bugzilla._get_browser):
+        (Bugzilla.setdefaulttimeout):
+
 2012-08-28  Gabor Rapcsanyi  <[email protected]>
 
         [Qt] Keep QT_QPA_PLATFORM_PLUGIN_PATH environment variable in NRWT

Modified: trunk/Tools/Scripts/webkitpy/common/net/bugzilla/bugzilla.py (126904 => 126905)


--- trunk/Tools/Scripts/webkitpy/common/net/bugzilla/bugzilla.py	2012-08-28 18:36:38 UTC (rev 126904)
+++ trunk/Tools/Scripts/webkitpy/common/net/bugzilla/bugzilla.py	2012-08-28 18:36:38 UTC (rev 126905)
@@ -33,6 +33,7 @@
 import mimetypes
 import re
 import StringIO
+import socket
 import urllib
 
 from datetime import datetime # used in timestamp()
@@ -279,6 +280,7 @@
 
     def _get_browser(self):
         if not self._browser:
+            self.setdefaulttimeout(600)
             from webkitpy.thirdparty.autoinstalled.mechanize import Browser
             self._browser = Browser()
             # Ignore bugs.webkit.org/robots.txt until we fix it to allow this script.
@@ -290,6 +292,9 @@
 
     browser = property(_get_browser, _set_browser)
 
+    def setdefaulttimeout(self, value):
+        socket.setdefaulttimeout(value)
+
     def fetch_user(self, user_id):
         self.authenticate()
         edit_user_page = self.browser.open(self.edit_user_url_for_id(user_id))
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to