I had problems with that commit the other week. The problem turned out to be the lack of Cyrus::DList (needed by AnyEvent::Handle to process part of the work -- see line 1666 of Cassandane/Instance.pm).
I can see Cyrus::DList in our "hm" repository (under "modules"), but it doesn't appear to be released anywhere else. I created a local branch off Cassandane master, reverted two commits (one that introduces notifyd functionality, one that uses it), and now it's happier (though missing tests). My branch looks like: $ git log -n3 8572817 (HEAD -> without-cyrus-dlist) Revert "Instance: run a notifyd listener" a7baba3 Revert "Caldav: test that imip invite is sent to notifyd" 4ffee9f (origin/master, origin/HEAD, master) List: check CrossDomain behaviour [snip] ellie On Tue, Dec 1, 2015, at 09:39 PM, Bron Gondwana via Cyrus-devel wrote: > Mine don't break, but maybe that's because I'm assuming something on the > system which isn't there on systems which aren't mine. I'll run up a > fresh install in a vm and see if I can see why! > > On Tue, Dec 1, 2015, at 21:22, rost via Cyrus-devel wrote: > > Hi, > > > > my Cassandane tests on the master branch are failing since October 29 > > and I haven't yet sorted out the root cause. > > > > Since somewhere around commit c3d8f3781071 [1], all test fail with with > > issues revolving around notifyd. E.g. either writing to a bad file > > descriptor of the notifyd socket... > > > > Message from syslogd@debdev at Nov 10 11:39:51 ... > > rl exception: Cannot write to pipe: Bad file descriptor#012 at > > Cassandane/Unit/TestPlan.pm line 174 > > > > ...or notifyd blasting messages like the following to syslog: > > > > Dec 1 11:04:54 debdev ne > > BAoIMTIzNDU2NzgECAgIAwcAAAAKBWVycm9yBgAAAHJlc3VsdAoRam1hcF9tdWx0aWNvbnRhY3QIAAAAdGVzdG5hbWUEAgAAAAARAAAAcGFyYW1ldGVyX3NldHRpbmcKDy90bXAvdURmNUFkWHJNdAcAAABsb2dmaWxlBsVwXVYAAAAACgAAA > > [...] > > > > Now, is it just me for whom the master Cassandane tests are broken? Or > > is any of you also experiencing these issues? > > > > Thanks, > > Robert > > > > > > [1] > > https://git.cyrus.foundation/rCc3d8f37810716fd98f5f5412ba3cce1043af079d > > > > Full log of one of the test runs: > > > > =====> Cyrus::TestCase[302] ---------- BEGIN test_user_rename_dom > > ---------- > > =====> Cyrus::TestCase[158] Magic attribute AllowMoves sets config > > allowusermoves = yes > > =====> Cyrus::TestCase[158] Magic attribute VirtDomains sets config > > virtdomains = userid > > =====> Instance[862] start main instance for test test_user_rename_dom: > > basedir /var/tmp/cass/101443B4 > > =====> Instance[361] Found binary ctl_cyrusdb in > > /var/tmp/cyrus/usr/cyrus/sbin > > =====> Instance[361] Found binary httpd in > > /var/tmp/cyrus/usr/cyrus/libexec > > =====> Instance[361] Found binary imapd in > > /var/tmp/cyrus/usr/cyrus/libexec > > =====> Instance[774] started saslauthd for /var/tmp/cass/101443B4 as > > 29039 > > =====> Instance[1613] opening socket /var/tmp/cass/101443B4/run/mux > > =====> Instance[801] started notifyd for /var/tmp/cass/101443B4 as 29041 > > =====> Instance[361] Found binary master in > > /var/tmp/cyrus/usr/cyrus/libexec > > =====> Instance[1359] Running: "/var/tmp/cyrus/usr/cyrus/libexec/master" > > "-C" "/var/tmp/cass/101443B4/conf/imapd.conf" "-l" "255" "-p" > > "/var/tmp/cass/101443B4/run/master.pid" "-d" "-M" > > "/var/tmp/cass/101443B4/conf/cyrus.conf" > > =====> Instance[726] _start_master: waiting for PID file > > =====> Instance[729] _start_master: PID file present and correct > > =====> Instance[741] _start_master: PID waiting for services > > =====> Daemon[356] is_listening: service http is listening on > > 127.0.0.1:9116 > > =====> Util::Wait[75] Waited 0.037413 sec for 127.0.0.1:9116 to be in > > LISTEN state > > =====> Daemon[356] is_listening: service imap is listening on > > 127.0.0.1:9117 > > =====> Instance[752] _start_master: all services listening > > =====> Instance[828] create user cassandane > > =====> Util::Socket[61] create_client_socket INET host=127.0.0.1 > > port=9117 > > Perl exception: IMAPTalk: IMAP Connection closed by other end: > > Connection reset by peer > > at /usr/local/share/perl/5.20.2/Mail/IMAPTalk.pm line 4294. > > Mail::IMAPTalk::_fill_imap_read_buffer(Mail::IMAPTalk=HASH(0x42f4680), > > undef, 1) called at > > /usr/local/share/perl/5.20.2/Mail/IMAPTalk.pm line 4325 > > Mail::IMAPTalk::_imap_socket_read_line(Mail::IMAPTalk=HASH(0x42f4680)) > > called at /usr/local/share/perl/5.20.2/Mail/IMAPTalk.pm line > > 4180 > > Mail::IMAPTalk::_next_simple_atom(Mail::IMAPTalk=HASH(0x42f4680)) > > called at /usr/local/share/perl/5.20.2/Mail/IMAPTalk.pm line > > 3771 > > Mail::IMAPTalk::_parse_response(Mail::IMAPTalk=HASH(0x42f4680), > > "", HASH(0x42eaf30)) called at > > /usr/local/share/perl/5.20.2/Mail/IMAPTalk.pm line 3516 > > eval {...} called at > > /usr/local/share/perl/5.20.2/Mail/IMAPTalk.pm line 3510 > > Mail::IMAPTalk::_imap_cmd(Mail::IMAPTalk=HASH(0x42f4680), > > "login", 0, "", "admin", HASH(0x42eab58)) called at > > /usr/local/share/perl/5.20.2/Mail/IMAPTalk.pm line 636 > > Mail::IMAPTalk::login(Mail::IMAPTalk=HASH(0x42f4680), "admin", > > "testpw") called at Cassandane/IMAPMessageStore.pm line 108 > > > > Cassandane::IMAPMessageStore::connect(Cassandane::IMAPMessageStore=HASH(0x42eaab0)) > > called at Cassandane/IMAPMessageStore.pm line 285 > > > > Cassandane::IMAPMessageStore::get_client(Cassandane::IMAPMessageStore=HASH(0x42eaab0)) > > called at Cassandane/Instance.pm line 835 > > Cassandane::Instance::create_user(Cassandane::Instance=HASH(0x42f4098), > > "cassandane") called at Cassandane/Instance.pm line 886 > > Cassandane::Instance::start(Cassandane::Instance=HASH(0x42f4098)) > > called at Cassandane/Cyrus/TestCase.pm line 314 > > > > Cassandane::Cyrus::TestCase::_start_instances(Cassandane::Cyrus::Caldav=HASH(0x4328f48)) > > called at Cassandane/Cyrus/TestCase.pm line 305 > > > > Cassandane::Cyrus::TestCase::set_up(Cassandane::Cyrus::Caldav=HASH(0x4328f48)) > > called at Cassandane/Cyrus/Caldav.pm line 72 > > > > Cassandane::Cyrus::Caldav::set_up(Cassandane::Cyrus::Caldav=HASH(0x4328f48)) > > called at /usr/share/perl5/Test/Unit/TestCase.pm line 58 > > > > Test::Unit::TestCase::run_bare(Cassandane::Cyrus::Caldav=HASH(0x4328f48)) > > called at /usr/share/perl5/Test/Unit/Result.pm line 103 > > Test::Unit::Result::__ANON__() called at > > /usr/share/perl5/Test/Unit/Result.pm line 119 > > Test::Unit::Result::run_protected(Test::Unit::Result=HASH(0x2036f30), > > Cassandane::Cyrus::Caldav=HASH(0x4328f48), CODE(0x43163c8)) > > called at /usr/share/perl5/Test/Unit/Result.pm line 107 > > Test::Unit::Result::run(Test::Unit::Result=HASH(0x2036f30), > > Cassandane::Cyrus::Caldav=HASH(0x4328f48)) called at > > /usr/share/perl5/Test/Unit/TestCase.pm line 51 > > Test::Unit::TestCase::run(Cassandane::Cyrus::Caldav=HASH(0x4328f48), > > Test::Unit::Result=HASH(0x2036f30), > > Cassandane::Unit::RunnerPretty=HASH(0x3855f48)) called at > > /usr/share/perl5/Test/Unit/TestSuite.pm line 278 > > Test::Unit::TestSuite::run(Test::Unit::TestSuite=HASH(0x2037140), > > Test::Unit::Result=HASH(0x2036f30), > > Cassandane::Unit::RunnerPretty=HASH(0x3855f48)) called at > > Cassandane/Unit/TestPlan.pm line 737 > > > > Cassandane::Unit::TestPlan::_run_workitem(Cassandane::Unit::TestPlan=HASH(0x3855d68), > > HASH(0x4315fd8), Test::Unit::Result=HASH(0x2036f30), > > Cassandane::Unit::RunnerPretty=HASH(0x3855f48), 0) called at > > Cassandane/Unit/TestPlan.pm line 846 > > Cassandane::Unit::TestPlan::__ANON__(HASH(0x4315fd8)) called at > > Cassandane/Unit/TestPlan.pm line 203 > > > > Cassandane::Unit::Worker::_mainloop(Cassandane::Unit::Worker=HASH(0x431fd10)) > > called at Cassandane/Unit/TestPlan.pm line 164 > > > > Cassandane::Unit::Worker::start(Cassandane::Unit::Worker=HASH(0x431fd10)) > > called at Cassandane/Unit/TestPlan.pm line 305 > > > > Cassandane::Unit::WorkerPool::start(Cassandane::Unit::WorkerPool=HASH(0x431fc68)) > > called at Cassandane/Unit/TestPlan.pm line 850 > > > > Cassandane::Unit::TestPlan::run(Cassandane::Unit::TestPlan=HASH(0x3855d68), > > Test::Unit::Result=HASH(0x2036f30), > > Cassandane::Unit::RunnerPretty=HASH(0x3855f48)) called at > > /usr/share/perl5/Test/Unit/TestRunner.pm line 54 > > > > Test::Unit::TestRunner::do_run(Cassandane::Unit::RunnerPretty=HASH(0x3855f48), > > Cassandane::Unit::TestPlan=HASH(0x3855d68), 0) called at > > ./testrunner.pl line 123 > > main::__ANON__(Cassandane::Unit::TestPlan=HASH(0x3855d68), > > GLOB(0x3855e70)) called at ./testrunner.pl line 260 > > =====> Daemon[385] checking for stray processes on ports: 9116 9117 > > > > Test was not successful. > > > > > -- > Bron Gondwana > br...@fastmail.fm