so this is not specific to the production CI environment. -s starts a shell after failure; after that the failure can be reproduced more quickly and directly:
$ python3.4 -W default -bb -E -R -m test -j 1 -w -uall,-network,-urlfetch,-gui test.test_socket
[...]
======================================================================
ERROR: testRecvmsgPeek (test.test_socket.RecvmsgUDP6Test)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/lib/python3.4/test/test_socket.py", line 2363, in testRecvmsgPeek
socket.MSG_PEEK)
File "/usr/lib/python3.4/test/test_socket.py", line 1907, in doRecvmsg
result = sock.recvmsg(bufsize, *args)
OSError: [Errno 14] Bad address
======================================================================
ERROR: testRecvmsgPeek (test.test_socket.RecvmsgIntoUDP6Test)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/lib/python3.4/test/test_socket.py", line 2363, in testRecvmsgPeek
socket.MSG_PEEK)
File "/usr/lib/python3.4/test/test_socket.py", line 1998, in doRecvmsg
result = sock.recvmsg_into([buf], *args)
OSError: [Errno 14] Bad address
However, downgrading the packages to 3.4.3-1ubuntu1~14.04.1 fails on the exact same issue. So this indeed does not look like a regression in python3.4 itself but in one of its underlying libraries or perhaps a changed kernel.
For the record, this reproduces perfectly well in local QEMU:
adt-run --apt-pocket= proposed -U -s --testname testsuite python3.4 --- qemu /srv/vm/ adt-trusty- amd64-cloud. img
so this is not specific to the production CI environment. -s starts a shell after failure; after that the failure can be reproduced more quickly and directly:
$ python3.4 -W default -bb -E -R -m test -j 1 -w -uall,- network, -urlfetch, -gui test.test_socket ======= ======= ======= ======= ======= ======= ======= ======= ======= socket. RecvmsgUDP6Test ) ------- ------- ------- ------- ------- ------- ------- ------- ------- python3. 4/test/ test_socket. py", line 2363, in testRecvmsgPeek MSG_PEEK) python3. 4/test/ test_socket. py", line 1907, in doRecvmsg bufsize, *args)
[...]
=======
ERROR: testRecvmsgPeek (test.test_
-------
Traceback (most recent call last):
File "/usr/lib/
socket.
File "/usr/lib/
result = sock.recvmsg(
OSError: [Errno 14] Bad address
======= ======= ======= ======= ======= ======= ======= ======= ======= ======= socket. RecvmsgIntoUDP6 Test) ------- ------- ------- ------- ------- ------- ------- ------- ------- python3. 4/test/ test_socket. py", line 2363, in testRecvmsgPeek MSG_PEEK) python3. 4/test/ test_socket. py", line 1998, in doRecvmsg into([buf] , *args)
ERROR: testRecvmsgPeek (test.test_
-------
Traceback (most recent call last):
File "/usr/lib/
socket.
File "/usr/lib/
result = sock.recvmsg_
OSError: [Errno 14] Bad address
However, downgrading the packages to 3.4.3-1ubuntu1~ 14.04.1 fails on the exact same issue. So this indeed does not look like a regression in python3.4 itself but in one of its underlying libraries or perhaps a changed kernel.