Build failed in Jenkins: cyrus-imapd-master #478
Greg Banks
gnb at fastmail.fm
Tue Mar 27 17:50:41 EDT 2012
On Tue, Mar 27, 2012, at 05:08 AM, Jenkins wrote:
> See <http://ci.cyrusimap.org/job/cyrus-imapd-master/478/changes>
>
> Changes:
>
> [gnb] idle: whitespace cleanup
>
> [gnb] idle: rename messages IDLE_FOO -> IDLE_MSG_FOO
>
> [gnb] idle: remove "freelist" ientry memory management
>
> [gnb] idle: some const correctness
>
> [gnb] idle: better function names in idled
>
> [gnb] idle: rename idle_data_t -> idle_message_t
>
> [gnb] idle: move message send/recv into a common file
>
> [gnb] idle: centralise AF_UNIX socket creation
>
> [gnb] idle: rename notify_sock -> idle_sock
>
> [gnb] idle: unlink local AF_UNIX socket when done
>
> [gnb] idle: don't use signals, use AF_UNIX dgrams
>
> [gnb] Remove unused variable shutdownfilename[]
>
> [gnb] idled: use library function shutdown_file()
> [...]
> Test failures and errors summary
> ================================
>
> Cassandane::Cyrus::Idle.basic_abortedidled
> http://ci.cyrusimap.org/job/cyrus-imapd-master/478//testReport/%28root%29/Cassandane__Cyrus__Idle/test_basic_abortedidled/
>
> Cassandane::Cyrus::Idle.delivery_noidled
> http://ci.cyrusimap.org/job/cyrus-imapd-master/478//testReport/%28root%29/Cassandane__Cyrus__Idle/test_delivery_noidled/
>
> Cassandane::Cyrus::Idle.shutdownfile_abortedidled
> http://ci.cyrusimap.org/job/cyrus-imapd-master/478//testReport/%28root%29/Cassandane__Cyrus__Idle/test_shutdownfile_abortedidled/
>
> Cassandane::Cyrus::Idle.delivery_abortedidled
> http://ci.cyrusimap.org/job/cyrus-imapd-master/478//testReport/%28root%29/Cassandane__Cyrus__Idle/test_delivery_abortedidled/
>
> Cassandane::Cyrus::Idle.basic_noidled
> http://ci.cyrusimap.org/job/cyrus-imapd-master/478//testReport/%28root%29/Cassandane__Cyrus__Idle/test_basic_noidled/
Woops, my bad.
Core was generated by
`/var/lib/jenkins/jobs/cyrus-imapd-master/workspace/inst/usr/cyrus/bin/imapd
-C'.
Program terminated with signal 7, Bus error.
#0 0x00000000004af76d in idle_wait (otherfd=0) at idle.c:211
211 if (r > 0 && FD_ISSET(idle_get_sock(), &rfds)) {
(gdb) bt
#0 0x00000000004af76d in idle_wait (otherfd=0) at idle.c:211
#1 0x000000000041579d in cmd_idle (tag=0x1e111e40 "3") at imapd.c:2774
#2 0x000000000040e449 in cmdloop () at imapd.c:1510
#3 0x000000000040ae18 in service_main (argc=1, argv=0x1e1075a0,
envp=0x7fff99b353a8) at imapd.c:925
#4 0x0000000000408f03 in main (argc=3, argv=0x7fff99b35388,
envp=0x7fff99b353a8) at service.c:571
(gdb) p r
$1 = 1
(gdb) p rfds
$2 = {__fds_bits = {1, 0 <repeats 15 times>}}
(gdb) p idle_sock
$3 = -1
Unsurprisingly, FD_ISSET(-1, fdset) is wrong. What is surprising is
that it ran just fine and didn't even trigger a Valgrind error in my
development environment :( Fixed in
http://git.cyrusimap.org/cyrus-imapd/commit/?id=60282ea9432679014ce0daa53473ded474b56a14
--
Greg.
More information about the Cyrus-devel
mailing list