cURL / Mailing Lists / curl-library / Single Mail

curl-library

Test 1500 unreliably after 29bf0598

From: Fabian Keil <freebsd-listen_at_fabiankeil.de>
Date: Wed, 5 Jun 2013 13:07:08 +0200

Since 29bf0598 test 1510 is unreliably for me when not running in
valgrind. About 90% of the attempts seem to fail like this:

########
fk_at_r500 ~/git/curl/tests $./runtests.pl -n -p 1500
********* System characteristics ********
* curl 7.31.0-DEV (amd64-unknown-freebsd10.0)
* libcurl/7.31.0-DEV OpenSSL/1.0.1e zlib/1.2.8
* Features: Debug TrackMemory IPv6 Largefile NTLM NTLM_WB SSL libz TLS-SRP
* Host: r500.local
* System: FreeBSD r500.local 10.0-CURRENT FreeBSD 10.0-CURRENT #583 r+cbc04a2: Sat Jun 1 20:47:25 CEST 2013 fk_at_r500.local:/usr/obj/usr/src/sys/ZOEY amd64
* Server SSL: ON libcurl SSL: ON
* debug build: ON track memory: ON
* valgrind: OFF HTTP IPv6 ON
* FTP IPv6 ON Libtool lib: OFF
* Shared build: no
* SSL library: OpenSSL
* Ports:
* HTTP/8990 FTP/8992 FTP2/8995 RTSP/9007 FTPS/8993 HTTPS/8991
* TFTP/8997 HTTP-IPv6/8994 RTSP-IPv6/9008 FTP-IPv6/8996
* GOPHER/9009 GOPHER-IPv6/9009
* SSH/8999 SOCKS/9000 POP3/9001 IMAP/9003 SMTP/9005
* POP3-IPv6/9002 IMAP-IPv6/9004 SMTP-IPv6/9006
* HTTPTLS/9011 HTTPTLS-IPv6/9012
* HTTP-PIPE/9014
*****************************************
test 1500...[curl_multi_wait]

 1500: data FAILED:
--- log/check-expected 2013-06-05 13:05:51.189843707 +0200
+++ log/check-generated 2013-06-05 13:05:51.189843707 +0200
@@ -1,8 +1 @@
-HTTP/1.1 200 all good!
-Date: Thu, 09 Nov 2010 14:49:00 GMT
-Server: test-server/fake
-Content-Type: text/html
-Content-Length: 12
-Connection: close
-
-Hello World
+curl_multi_wait() returned on 0 handle(s), expected 1
== Contents of files in the log/ dir after test 1500
=== Start of file check-expected
 HTTP/1.1 200 all good
 Date: Thu, 09 Nov 2010 14:49:00 GMT
 Server: test-server/fake
 Content-Type: text/html
 Content-Length: 12
 Connection: close
 Hello World
=== End of file check-expected
=== Start of file check-generated
 curl_multi_wait() returned on 0 handle(s), expected 1
=== End of file check-generated
=== Start of file curl.log
 ./libtest/lib1500 http://127.0.0.1:8990/1500 >log/stdout1500 2>log/stderr1500
=== End of file curl.log
=== Start of file curlverout.log
 curl 7.31.0-DEV (amd64-unknown-freebsd10.0) libcurl/7.31.0-DEV OpenSSL/1.0.1e zlib/1.2.8
 Protocols: dict file ftp ftps gopher http https imap imaps pop3 pop3s rtsp smtp smtps telnet tftp
 Features: Debug TrackMemory IPv6 Largefile NTLM NTLM_WB SSL libz TLS-SRP
=== End of file curlverout.log
=== Start of file http_server.log
 13:05:49.136488 Running HTTP IPv4 version on port 8990
 13:05:49.137557 Wrote pid 69911 to .http_server.pid
 13:05:50.130102 ====> Client connect
 13:05:50.130251 TCP_NODELAY set
 13:05:50.130363 accept_connection 3 returned 4
 13:05:50.130480 accept_connection 3 returned 0
 13:05:50.131483 Read 96 bytes
 13:05:50.131624 Process 96 bytes request
 13:05:50.131782 Got request: GET /verifiedserver HTTP/1.1
 13:05:50.131895 Are-we-friendly question received
 13:05:50.132167 Wrote request (96 bytes) input to log/server.input
 13:05:50.132416 Identifying ourselves as friends
 13:05:50.132727 Sent off 56 bytes
 13:05:50.132975 Response sent (56 bytes) and written to log/server.response
 13:05:50.133096 special request received, no persistency
 13:05:50.133205 ====> Client disconnect 0
 13:05:51.176572 ====> Client connect
 13:05:51.176774 TCP_NODELAY set
 13:05:51.176884 accept_connection 3 returned 4
 13:05:51.176995 accept_connection 3 returned 0
 13:05:51.177120 Read 57 bytes
 13:05:51.177226 Process 57 bytes request
 13:05:51.177349 Got request: GET /1500 HTTP/1.1
 13:05:51.177484 Requested test number 1500 part 0
 13:05:51.177783 - request found to be complete
 13:05:51.178106 Wrote request (57 bytes) input to log/server.input
 13:05:51.178340 Send response test1500 section <data>
 13:05:51.178817 Sent off 158 bytes
 13:05:51.179023 Response sent (158 bytes) and written to log/server.response
 13:05:51.179142 => persistant connection request ended, awaits new request
 13:05:51.179279 recv() returned error: (54) Connection reset by peer
 13:05:51.179388 ====> Client disconnect 0
=== End of file http_server.log
=== Start of file http_verify.log
 * STATE: INIT => CONNECT handle 0x801c6f088; line 1020 (connection #-5000)
 * About to connect() to 127.0.0.1 port 8990 (#0)
 * Trying 127.0.0.1...
 * Adding handle: conn: 0x801ce0608
 * Adding handle: send: 0
 * Adding handle: recv: 0
 * Curl_addHandleToPipeline: length: 1
 * 0x801c3f008 is at send pipe head
 * - Conn 0 (0x801ce0608) send_pipe: 1, recv_pipe: 0
 * STATE: CONNECT => WAITCONNECT handle 0x801c6f088; line 1067 (connection #0)
 * Connected to 127.0.0.1 (127.0.0.1) port 8990 (#0)
 * STATE: WAITCONNECT => DO handle 0x801c6f088; line 1186 (connection #0)
> GET /verifiedserver HTTP/1.1
> User-Agent: curl/7.31.0-DEV
> Host: 127.0.0.1:8990
> Accept: */*
>
 * STATE: DO => DO_DONE handle 0x801c6f088; line 1272 (connection #0)
 * STATE: DO_DONE => WAITPERFORM handle 0x801c6f088; line 1389 (connection #0)
 * STATE: WAITPERFORM => PERFORM handle 0x801c6f088; line 1400 (connection #0)
 * HTTP 1.1 or later with persistent connection, pipelining supported
 < HTTP/1.1 200 OK
 < Content-Length: 17
 <
 { [data not shown]
 * STATE: PERFORM => DONE handle 0x801c6f088; line 1570 (connection #0)
 * Connection #0 to host 127.0.0.1 left intact
 * Expire cleared
=== End of file http_verify.log
=== Start of file http_verify.out
 WE ROOLZ: 69911
=== End of file http_verify.out
=== Start of file server.input
 GET /1500 HTTP/1.1
 Host: 127.0.0.1:8990
 Accept: */*
=== End of file server.input
=== Start of file server.response
 HTTP/1.1 200 OK
 Content-Length: 17
 WE ROOLZ: 69911
 HTTP/1.1 200 all good
 Date: Thu, 09 Nov 2010 14:49:00 GMT
 Server: test-server/fake
 Content-Type: text/html
 Content-Length: 12
 Connection: close
 Hello World
=== End of file server.response
=== Start of file stderr1500
 URL: http://127.0.0.1:8990/1500
=== End of file stderr1500
=== Start of file stdout1500
 curl_multi_wait() returned on 0 handle(s), expected 1
=== End of file stdout1500

 - abort tests
TESTDONE: 0 tests out of 1 reported OK: 0%
TESTFAIL: These test cases failed: 1500
TESTDONE: 1 tests were considered during 2 seconds.
########

I'm currently using master at 5657c56f.

Letting test() continue if num is 0, or reverting 0bf5ce77
and 29bf0598 seems to work around the failure. Only reverting
0bf5ce77 doesn't help.

Fabian

-------------------------------------------------------------------
List admin: http://cool.haxx.se/list/listinfo/curl-library
Etiquette: http://curl.haxx.se/mail/etiquette.html

Received on 2013-06-05