My cassandane tests break. Yours too?

ellie timoney ellie at fastmail.com
Tue Dec 1 18:34:50 EST 2015


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 at 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
>   brong at fastmail.fm


More information about the Cyrus-devel mailing list