David Levine <levinedl@acm.org> wrote:
Jay wrote:
[...]
Both releases
saw a spew of "Broken pipe" errors after test-mhparam, not sure if
that's expected or not.
That's not expected. The test immediately after that test-mhparam
is test/oauth/test-send. I tried running it under "sh -x" but
that causes it to fail. It's not a big test, would you be able to
cut it down to try to isolate the source of those errors?
I don't have it totally worked out, but it's coming from
"fakehttp". I put some debug in and got a core:
serve: pid 5325 PIDFN /tmp/fakehttp.pid
serve: pid 5327 PIDFN /tmp/fakesmtp.pid
serve: pid 5343 PIDFN /tmp/fakehttp.pid
serve: pid 5345 PIDFN /tmp/fakesmtp.pid
server writev s 0 errno 32 pid 5344 PIDFN /tmp/fakehttp.pid data .
serve: pid 5356 PIDFN /tmp/fakesmtp.pid
serve: pid 5366 PIDFN /tmp/fakehttp.pid
Core was generated by `/storage/src/nmh/test/fakehttp
/storage/src/nmh/test/testdir/5088.http-req 6408'.
Program terminated with signal SIGABRT, Aborted.
#0 0x00007feb19897438 in __GI_raise (sig=sig@entry=0x6)
at ../sysdeps/unix/sysv/linux/raise.c:54
54 ../sysdeps/unix/sysv/linux/raise.c: No such file or directory.
(gdb) where
#0 0x00007feb19897438 in __GI_raise (sig=sig@entry=0x6)
at ../sysdeps/unix/sysv/linux/raise.c:54
#1 0x00007feb1989903a in __GI_abort () at abort.c:89
#2 0x0000000000401a3d in putcrlf (socket=socket@entry=0x0, data=0x1f45010 ".")
at test/server.c:233
#3 0x0000000000401116 in send_res (res=0x1f45240, conn=0x0)
at test/fakehttp.c:93
#4 main (argc=<optimized out>, argv=<optimized out>) at test/fakehttp.c:131
Frame 1 is a call to abort right after the printf (perror in the
original code) for the "server writev" message.
If I put in more debug printfs, the problem stops, so I'm
guessing it's a race somewhere.
-J
---
-Jay Vosburgh, jay.vosburgh@canonical.com