Title: [279775] trunk/Tools
- Revision
- 279775
- Author
- clo...@igalia.com
- Date
- 2021-07-09 01:10:19 -0700 (Fri, 09 Jul 2021)
Log Message
[webkitcorepy] run-webkit-tests may hang with python2 after r271683
https://bugs.webkit.org/show_bug.cgi?id=227715
Reviewed by Philippe Normand.
When an exception is raised from a worker if the workers are terminated
via a SIGKILL signal that later causes the task-queue to hang at close().
The issue is not reproducible with python3. So keep the same behaviour for
python3, and for python2 just use terminate() to stop the workers.
* Scripts/libraries/webkitcorepy/webkitcorepy/task_pool.py:
(TaskPool.__exit__):
Modified Paths
Diff
Modified: trunk/Tools/ChangeLog (279774 => 279775)
--- trunk/Tools/ChangeLog 2021-07-09 07:14:30 UTC (rev 279774)
+++ trunk/Tools/ChangeLog 2021-07-09 08:10:19 UTC (rev 279775)
@@ -1,3 +1,18 @@
+2021-07-09 Carlos Alberto Lopez Perez <clo...@igalia.com>
+
+ [webkitcorepy] run-webkit-tests may hang with python2 after r271683
+ https://bugs.webkit.org/show_bug.cgi?id=227715
+
+ Reviewed by Philippe Normand.
+
+ When an exception is raised from a worker if the workers are terminated
+ via a SIGKILL signal that later causes the task-queue to hang at close().
+ The issue is not reproducible with python3. So keep the same behaviour for
+ python3, and for python2 just use terminate() to stop the workers.
+
+ * Scripts/libraries/webkitcorepy/webkitcorepy/task_pool.py:
+ (TaskPool.__exit__):
+
2021-07-08 Yijia Huang <yijia_hu...@apple.com>
Add Yijia Huang as a committer
Modified: trunk/Tools/Scripts/libraries/webkitcorepy/webkitcorepy/task_pool.py (279774 => 279775)
--- trunk/Tools/Scripts/libraries/webkitcorepy/webkitcorepy/task_pool.py 2021-07-09 07:14:30 UTC (rev 279774)
+++ trunk/Tools/Scripts/libraries/webkitcorepy/webkitcorepy/task_pool.py 2021-07-09 08:10:19 UTC (rev 279775)
@@ -458,7 +458,8 @@
if sys.version_info >= (3, 7):
worker.kill()
- elif hasattr(signal, 'SIGKILL'):
+ # With python2 killing directly the workers causes the queue to hang on close() <https://webkit.org/b/227715>
+ elif hasattr(signal, 'SIGKILL') and sys.version_info.major > 2:
try:
os.kill(worker.pid, signal.SIGKILL)
except OSError as e:
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes