[Dovecot] imaptest assertion failure
While trying to use imaptest (-20100922, from http://dovecot.org/nightly/imaptest/imaptest-latest.tar.gz) with the included tests directory, it assert-crashes after a suspicious connect() failure:
$ ./imaptest user=foo pass=bar host=localhost test=tests Error: connect() failed: No route to host Panic: file test-exec.c: line 903 (test_send_lstate_commands): assertion failed: (ctx->clients_waiting > 0) Error: Raw backtrace: 2 libdovecot.0.dylib 0x0000000102afadfd default_fatal_finish + 35 -> 3 libdovecot.0.dylib 0x0000000102af9b87 i_set_error_handler + 0 -> 4 libdovecot.0.dylib 0x0000000102afa986 default_handler + 0 -> 5 imaptest 0x0000000102ac2966 test_send_lstate_commands + 1016 -> 6 imaptest 0x0000000102ab7acd client_send_more_commands + 28 -> 7 imaptest 0x0000000102ab7f42 client_input + 394 -> 8 libdovecot.0.dylib 0x0000000102b01112 io_loop_call_io + 70 -> 9 libdovecot.0.dylib 0x0000000102b003ba io_loop_handler_run + 227 -> 10 libdovecot.0.dylib 0x0000000102b010bf io_loop_run + 72 -> 11 imaptest 0x0000000102abce4c main + 2538 -> 12 imaptest 0x0000000102ab6aa0 start + 52 Abort trap: 6
This seems to happen with any test which uses more than one connection. Tests with "connections: 1" at the top work fine.
On Thu, 2011-03-24 at 21:21 -0500, Mike Abbott wrote:
While trying to use imaptest (-20100922, from http://dovecot.org/nightly/imaptest/imaptest-latest.tar.gz) with the included tests directory, it assert-crashes after a suspicious connect() failure:
$ ./imaptest user=foo pass=bar host=localhost test=tests Error: connect() failed: No route to host
I can't reproduce this connect() failure. Not in OSX or Linux.
Panic: file test-exec.c: line 903 (test_send_lstate_commands): assertion failed: (ctx->clients_waiting > 0)
The testing has failed in any case if connect fails.. Probably too much trouble to fix it to handle this any more nicely. :)
$ ./imaptest user=foo pass=bar host=localhost test=tests Error: connect() failed: No route to host
I can't reproduce this connect() failure. Not in OSX or Linux.
It has something to do with IPv6 or multiple aliases of localhost, for if I comment out this line in client_new() like so it runs fine: // if (++conf.ip_idx == conf.ips_count)
FYI my /etc/hosts says: 127.0.0.1 localhost ::1 localhost fe80::1%lo0 localhost
Anyway, I was trying to use imaptest to make a reproducible case for you to troubleshoot the "dovecot-uidlist: Duplicate file entry" warnings but with no joy yet. Do you have any hints as to what I should try next?
On 28.3.2011, at 21.43, Mike Abbott wrote:
$ ./imaptest user=foo pass=bar host=localhost test=tests Error: connect() failed: No route to host
I can't reproduce this connect() failure. Not in OSX or Linux.
It has something to do with IPv6 or multiple aliases of localhost, for if I comment out this line in client_new() like so it runs fine: // if (++conf.ip_idx == conf.ips_count)
Or just host=127.0.0.1 :)
Anyway, I was trying to use imaptest to make a reproducible case for you to troubleshoot the "dovecot-uidlist: Duplicate file entry" warnings but with no joy yet. Do you have any hints as to what I should try next?
Not much .. What kind of a stress test is it that generates the errors with you? It's copying/moving messages to other mailboxes and back?
participants (2)
-
Mike Abbott
-
Timo Sirainen