This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Title: wait_helper hangs on AIX
Type: behavior Stage:
Components: Tests Versions: Python 3.3, Python 3.4, Python 3.5, Python 2.7
Status: closed Resolution: fixed
Dependencies: Superseder:
Assigned To: Nosy List: David.Edelsohn, python-dev, vstinner
Priority: normal Keywords:

Created on 2013-06-17 02:12 by David.Edelsohn, last changed 2022-04-11 14:57 by admin. This issue is now closed.

Messages (8)
msg191310 - (view) Author: David Edelsohn (David.Edelsohn) * Date: 2013-06-17 02:12 wait_helper hangs on AIX.  Please skip the test on AIX for now to allow all other tests to run to completion.

diff -r bdd60bedf933 Lib/test/
--- a/Lib/test/   Sun Jun 16 18:37:53 2013 -0400
+++ b/Lib/test/   Mon Jun 17 00:10:01 2013 -0700
@@ -593,6 +593,7 @@
         assert_python_ok('-c', code)
+    @unittest.skipIf(sys.platform == "aix7", "Test hangs on AIX")
     @unittest.skipUnless(hasattr(signal, 'pthread_sigmask'),
                          'need signal.pthread_sigmask()')
     def wait_helper(self, blocked, test):
msg191327 - (view) Author: STINNER Victor (vstinner) * (Python committer) Date: 2013-06-17 12:52
> wait_helper hangs on AIX.

Why does the test hang? I prefer to only skip a test if I understood the issue (when it is not fixable in Python, like a bug in the kernel).
msg191337 - (view) Author: David Edelsohn (David.Edelsohn) * Date: 2013-06-17 14:09
I understand that this is a work-around and the intention is to investigate each error in the testsuite on AIX.  But currently this bug eventually leads to a timeout in the testsuite and half of the tests are not run.

I am trying to get the AIX buildbot running completely and greatly would appreciate your accommodation with this work-around during that process to make it easier for CPython developers to make another sweep through the testsuite failures to start addressing them.

This is not proposed as "skip the test and ignore it". This is proposed as an interim solution to make progress on the buildbot for AIX.

Again, I would greatly appreciate your patience and accommodation in this request.
msg191360 - (view) Author: David Edelsohn (David.Edelsohn) * Date: 2013-06-17 18:51
$ ./python -m test --timeout=60 -v test_signal
== CPython 3.4.0a0 (default:00824f9e29f3+, Jun 17 2013, 16:44:41) [GCC 4.8.1]
==   AIX-1-00F84C0C4C00-powerpc-32bit big-endian
==   /home/dje/src/cpython/build/test_python_5832942
Testing with flags: sys.flags(debug=0, inspect=0, interactive=0, optimize=0, dont_write_bytecode=0, no_user_site=0, no_site=0, ignore_environment=0, verbose=0, bytes_warning=0, quiet=0, hash_randomization=1)
[1/1] test_signal
test_getsignal (test.test_signal.PosixTests) ... ok
test_out_of_range_signal_number_raises_error (test.test_signal.PosixTests) ... ok
test_setting_signal_handler_to_none_raises_error (test.test_signal.PosixTests) ... ok
test_main (test.test_signal.InterProcessSignalTests) ... ok
test_invalid_fd (test.test_signal.WakeupFDTests) ... ok
test_pending (test.test_signal.WakeupSignalTests) ... ok
test_signum (test.test_signal.WakeupSignalTests) ... ok
test_wakeup_fd_during (test.test_signal.WakeupSignalTests) ... ok
test_wakeup_fd_early (test.test_signal.WakeupSignalTests) ... ok
test_siginterrupt_off (test.test_signal.SiginterruptTest) ... ok
test_siginterrupt_on (test.test_signal.SiginterruptTest) ... ok
test_without_siginterrupt (test.test_signal.SiginterruptTest) ... ok
test_itimer_exc (test.test_signal.ItimerTest) ... ok
test_itimer_prof (test.test_signal.ItimerTest) ... ok
test_itimer_real (test.test_signal.ItimerTest) ... ok
test_itimer_virtual (test.test_signal.ItimerTest) ... ok
test_issue9324 (test.test_signal.WindowsSignalTests) ... skipped 'Windows specific'
test_pthread_kill (test.test_signal.PendingSignalsTests) ... ok
test_pthread_kill_main_thread (test.test_signal.PendingSignalsTests) ... ok
test_pthread_sigmask (test.test_signal.PendingSignalsTests) ... ok
test_pthread_sigmask_arguments (test.test_signal.PendingSignalsTests) ... ok
test_sigpending (test.test_signal.PendingSignalsTests) ... ok
test_sigpending_empty (test.test_signal.PendingSignalsTests) ... ok
test_sigtimedwait (test.test_signal.PendingSignalsTests) ... ok
test_sigtimedwait_negative_timeout (test.test_signal.PendingSignalsTests) ... ok
test_sigtimedwait_poll (test.test_signal.PendingSignalsTests) ... ok
test_sigtimedwait_timeout (test.test_signal.PendingSignalsTests) ... ok
test_sigwait (test.test_signal.PendingSignalsTests) ... ok
test_sigwait_thread (test.test_signal.PendingSignalsTests) ... ok
test_sigwaitinfo (test.test_signal.PendingSignalsTests) ... ok
test_sigwaitinfo_interrupted (test.test_signal.PendingSignalsTests) ... Timeout (0:01:00)!
Thread 0x00000001:
  File "/home/dje/src/cpython/Lib/", line 1613 in _communicate_with_poll
  File "/home/dje/src/cpython/Lib/", line 1533 in _communicate
  File "/home/dje/src/cpython/Lib/", line 943 in communicate
  File "/home/dje/src/cpython/Lib/test/", line 36 in _assert_python
  File "/home/dje/src/cpython/Lib/test/", line 54 in assert_python_ok
  File "/home/dje/src/cpython/Lib/test/", line 639 in wait_helper
  File "/home/dje/src/cpython/Lib/test/", line 726 in test_sigwaitinfo_interrupted
  File "/home/dje/src/cpython/Lib/unittest/", line 496 in run
  File "/home/dje/src/cpython/Lib/unittest/", line 535 in __call__
  File "/home/dje/src/cpython/Lib/unittest/", line 105 in run
  File "/home/dje/src/cpython/Lib/unittest/", line 67 in __call__
  File "/home/dje/src/cpython/Lib/unittest/", line 105 in run
  File "/home/dje/src/cpython/Lib/unittest/", line 67 in __call__
  File "/home/dje/src/cpython/Lib/unittest/", line 168 in run
  File "/home/dje/src/cpython/Lib/test/", line 1566 in _run_suite
  File "/home/dje/src/cpython/Lib/test/", line 1600 in run_unittest
  File "/home/dje/src/cpython/Lib/test/", line 873 in test_main
  File "/home/dje/src/cpython/Lib/test/", line 1307 in runtest_inner
  File "/home/dje/src/cpython/Lib/test/", line 1011 in runtest
  File "/home/dje/src/cpython/Lib/test/", line 798 in main
  File "/home/dje/src/cpython/Lib/test/", line 1592 in main_in_temp_cwd
  File "/home/dje/src/cpython/Lib/test/", line 3 in <module>
  File "/home/dje/src/cpython/Lib/", line 73 in _run_code
  File "/home/dje/src/cpython/Lib/", line 160 in _run_module_as_main
msg191363 - (view) Author: David Edelsohn (David.Edelsohn) * Date: 2013-06-17 19:10
By the way, if I manually override _has_poll to False, the same test fails similarly in _communicate_with_select, so the failure is not limited to the implementation of poll().
msg191369 - (view) Author: Roundup Robot (python-dev) (Python triager) Date: 2013-06-17 19:54
New changeset a0e234e10da6 by Victor Stinner in branch '3.3':
Issue #18238: Skip test_signal.test_sigwaitinfo_interrupted() on AIX

New changeset 8e277e6bd11b by Victor Stinner in branch 'default':
(Merge 3.3) Issue #18238: Skip test_signal.test_sigwaitinfo_interrupted() on AIX
msg191412 - (view) Author: David Edelsohn (David.Edelsohn) * Date: 2013-06-18 14:12
This needs to be backported to Python 2.7 as well.
msg191413 - (view) Author: STINNER Victor (vstinner) * (Python committer) Date: 2013-06-18 14:16
> This needs to be backported to Python 2.7 as well.

signal.sigwaitinfo() was added to Python 3.3 (and doesn't exist in Python 2).
Date User Action Args
2022-04-11 14:57:47adminsetgithub: 62438
2013-06-18 14:16:44vstinnersetstatus: open -> closed
resolution: fixed
messages: + msg191413
2013-06-18 14:12:07David.Edelsohnsetmessages: + msg191412
2013-06-18 14:11:45David.Edelsohnsetversions: + Python 2.7, Python 3.3, Python 3.4
2013-06-17 19:54:17python-devsetnosy: + python-dev
messages: + msg191369
2013-06-17 19:10:04David.Edelsohnsetmessages: + msg191363
2013-06-17 18:51:30David.Edelsohnsetmessages: + msg191360
2013-06-17 14:09:15David.Edelsohnsetmessages: + msg191337
2013-06-17 12:52:32vstinnersetmessages: + msg191327
2013-06-17 10:04:32pitrousetnosy: + vstinner
2013-06-17 02:12:37David.Edelsohncreate