2016-01-23 7:03 GMT+01:00 Chris Angelico <ros...@gmail.com>:
> I just had a major crash on the system that hosts the
> angelico-debian-amd64 buildbot, and as usual, checked it carefully
> after bringing everything up. It seems now to be timing out after an
> hour of operation:
>
> http://buildbot.python.org/all/builders/AMD64%20Debian%20root%203.x/builds/3132/steps/test/logs/stdio

I opened http://bugs.python.org/issue26206 to track this issue.

> Running just that test file:
>
> $ ./python Lib/test/test_socket.py
> ... chomp lots of lines ...
> testRecvmsgPeek (__main__.RecvmsgUDP6Test) ...
>
> seems to indicate that the stall is due to IPv6 and UDP. The VM should
> have full IPv6 support, although my ISPs don't carry IPv6 traffic, so
> it won't be able to reach the internet proper; but it should be able
> to do all manner of local tests.

Try to apply attached patch and run:

$ ./python -m test -v -m testRecvmsgPeek test_socket
(...)
testRecvmsgPeek (test.test_socket.RecvmsgUDP6Test) ... CLI SOCK
<socket.socket fd=5, family=AddressFamily.AF_INET6,
type=SocketKind.SOCK_DGRAM, proto=0, laddr=('::1', 44347, 0, 0)>
SERV SOCK <socket.socket fd=4, family=AddressFamily.AF_INET6,
type=SocketKind.SOCK_DGRAM, proto=0, laddr=('::1', 40488, 0, 0)>
CLI SOCK ('::1', 44347, 0, 0)
SERV SOCK ('::1', 40488, 0, 0)
ok
testRecvmsgPeek (test.test_socket.RecvmsgIntoUDP6Test) ... CLI SOCK
<socket.socket fd=5, family=AddressFamily.AF_INET6,
type=SocketKind.SOCK_DGRAM, proto=0, laddr=('::1', 52721, 0, 0)>
SERV SOCK <socket.socket fd=4, family=AddressFamily.AF_INET6,
type=SocketKind.SOCK_DGRAM, proto=0, laddr=('::1', 43967, 0, 0)>
CLI SOCK ('::1', 52721, 0, 0)
SERV SOCK ('::1', 43967, 0, 0)
ok
(...)

As you can see: the test uses the local loopback interface.
Inet6TestBase.host is "::1".

You can try to run a UDP server using netcat: "nc -l -u ::1 12345".
Keep the command running in a terminal, and then run in a different
terminal: "echo abc | nc -u ::1 12345". You should receive abc in the
server.

Victor
diff -r 58266f5101cc Lib/test/test_socket.py
--- a/Lib/test/test_socket.py	Tue Jan 26 21:46:03 2016 -0800
+++ b/Lib/test/test_socket.py	Wed Jan 27 10:35:32 2016 +0100
@@ -2049,6 +2049,8 @@ class SendrecvmsgConnectionlessBase(Send
         return ([], [], 0, self.serv_addr)
 
     def sendToServer(self, msg):
+        print("CLI SOCK", self.cli_sock)
+        print("CLI SOCK", self.cli_sock.getsockname())
         return self.cli_sock.sendto(msg, self.serv_addr)
 
 
@@ -2371,6 +2373,8 @@ class RecvmsgGenericTests(SendrecvmsgBas
         # data without consuming it.
 
         # Receive part of data with MSG_PEEK.
+        print("SERV SOCK", self.serv_sock)
+        print("SERV SOCK", self.serv_sock.getsockname())
         msg, ancdata, flags, addr = self.doRecvmsg(self.serv_sock,
                                                    len(MSG) - 3, 0,
                                                    socket.MSG_PEEK)
_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to