Re: Ghost folders & imapd segfaults
On Wed, 20 Jan 2010, Jukka Huhta wrote: > We've had two tricky special cases of folders created by users. The > folder names contain an exclamation mark, which, I presume, isn't > handled as it should be. > > The symptom is that the ghost folders get somehow created on a > different host than the "real" mailbox. That results in an annoying > error from a quota listing script: "This mailbox hierarchy does not > exist on a single backend server". > > The first one was like > > user.username1.fdasf! > > which equals (according to cyradm) to fd...@user.username1 with > permissions "anyone lrs". I could just add deletion permission to an > admin account and dm it. > > But the other one is trickier. From mailbox list dump: > > user.username2 1 i16!nkpd username2 lrswipkxtecda anyone p > user.username2.Drafts 1 i16!nkpd username2 lrswipkxtecda anyone p > user.username2.Folder 1 i16!nkpd username2 lrswipkxtecda anyone p > user.username2.Folder! 1 p01!default anyone lrs > > "Folder" is a regular, working folder. "i16" is the backend server of > username2, "nkpd" is her partition, but p01 is a front end host, a > proxy! How could this happen? Through some failed folder rename? > How come there's "default" as partition? I cannot reproduce this on > purpose, but I cannot delete the "Folder! " folder (yes, there seems > to be a space) either: imapd process segfaults when trying. See: > > cyradm> lm user.username2.Folder > user.username2.Folder (\HasNoChildren) > cyradm> lm "user.username2.Folder! " > @user.username2.Folder (\HasNoChildren) > cyradm> lm " @user.username2.Folder" > @user.username2.Folder (\HasNoChildren) > cyradm> sam " @user.username2.Folder" admin all > setaclmailbox: admin: lrswipkxtea: > cyradm> lm " @user.username2.Folder" > > cyradm> lm " @user.username2.Folder" > [returned to shell, cyradm dies] > > Maillog has this: > Jan 20 15:58:57 pcn7 admin/master[11756]: process 9773 exited, > signaled to death by 11 > > And syslog: > Jan 20 15:58:57 pcn7 kernel: imapd[9773]: segfault at > rip 0039746796f0 rsp 7fff0ba77da8 error 4 > > According to gdb, imapd segfaults in strlen(). Of course I don't have > debug symbols compiled in... > > Any hints? I've seen this segfault happen to me in a similar situation where the mailbox was listed as created on the frontend. Note - don't try to create a new top-level mailbox on a frontend server! :) Since it was my own fault, I just removed the offending mailbox and didn't worry about the segfault. I think the question here is - does Cyrus allow a non-admin to create a new folder on whatever backend they want? Only admins should be allowed to specify a partition. > (I must admit that cyradm is connecting to another frontend than p01 > because I currently can't login to that one as admin without a > service break (don't ask).) I'm pretty sure you can only fix this by issuing "dm " on p01. Andy Cyrus Home Page: http://cyrusimap.web.cmu.edu/ Cyrus Wiki/FAQ: http://cyrusimap.web.cmu.edu/twiki List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html
Ghost folders & imapd segfaults
We've had two tricky special cases of folders created by users. The folder names contain an exclamation mark, which, I presume, isn't handled as it should be. The symptom is that the ghost folders get somehow created on a different host than the "real" mailbox. That results in an annoying error from a quota listing script: "This mailbox hierarchy does not exist on a single backend server". The first one was like user.username1.fdasf! which equals (according to cyradm) to fd...@user.username1 with permissions "anyone lrs". I could just add deletion permission to an admin account and dm it. But the other one is trickier. From mailbox list dump: user.username2 1 i16!nkpd username2 lrswipkxtecda anyone p user.username2.Drafts 1 i16!nkpd username2 lrswipkxtecda anyone p user.username2.Folder 1 i16!nkpd username2 lrswipkxtecda anyone p user.username2.Folder! 1 p01!default anyone lrs "Folder" is a regular, working folder. "i16" is the backend server of username2, "nkpd" is her partition, but p01 is a front end host, a proxy! How could this happen? Through some failed folder rename? How come there's "default" as partition? I cannot reproduce this on purpose, but I cannot delete the "Folder! " folder (yes, there seems to be a space) either: imapd process segfaults when trying. See: cyradm> lm user.username2.Folder user.username2.Folder (\HasNoChildren) cyradm> lm "user.username2.Folder! " @user.username2.Folder (\HasNoChildren) cyradm> lm " @user.username2.Folder" @user.username2.Folder (\HasNoChildren) cyradm> sam " @user.username2.Folder" admin all setaclmailbox: admin: lrswipkxtea: cyradm> lm " @user.username2.Folder" cyradm> lm " @user.username2.Folder" [returned to shell, cyradm dies] Maillog has this: Jan 20 15:58:57 pcn7 admin/master[11756]: process 9773 exited, signaled to death by 11 And syslog: Jan 20 15:58:57 pcn7 kernel: imapd[9773]: segfault at rip 0039746796f0 rsp 7fff0ba77da8 error 4 According to gdb, imapd segfaults in strlen(). Of course I don't have debug symbols compiled in... Any hints? (I must admit that cyradm is connecting to another frontend than p01 because I currently can't login to that one as admin without a service break (don't ask).) Running Cyrus 2.3.15 (Simon's -4 RPM release) on a CentOS cluster, mupdate_config=standard. -- Jukka Huhta Cyrus Home Page: http://cyrusimap.web.cmu.edu/ Cyrus Wiki/FAQ: http://cyrusimap.web.cmu.edu/twiki List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html
Re: compiling 2.3.16 on debian 64bit
On 01/20/2010 09:19 AM, Rudy Gevaert wrote: Hi! A new year brings new resolutions! One of our resolutions is upgrading our cyrus infrastructure from 32bit to 64bit, moving to a new storage backend, upgrading from etch to lenny and on top of that rewriting our backend scripts. But before getting to all that, I need to be able to get cyrus compiled. I have one problem, and one question: 1) I also ran into the -fpic problem and can fix that when I'm running make. However makedepend can't handle 'pic' very well. This is how I do it: cyrus_version=cyrus-2.3.16 dest_dir=/tmp/cyrus-2.3.16 rm -fr $dest_dir mkdir $dest_dir make clean ./configure CFLAGS="-O2 -g -fpic -Wall -pipe" \ --prefix=/usr/${cyrus_version} \ --with-cyrus-prefix=/usr/${cyrus_version} \ --with-bdb-libdir=/usr/lib/ \ --with-openssl=/usr \ --with-com_err=/usr \ --with-bdb-incdir=/usr/include \ --with-seen-db=skiplist --with-mboxlist-db=skiplist \ --enable-murder --enable-idled --enable-replication make depend || exit make all || exit make -C sieve test || exit echo make install DESTDIR=${dest_dir} make install DESTDIR=${dest_dir} And the relevant output: ### Making depend in /home/cyrus/debs/cyrus-imapd-2.3.16/lib make[1]: Entering directory `/home/cyrus/debs/cyrus-imapd-2.3.16/lib' makedepend -I.. -I/usr/include -I/usr/include -I/usr/include -I/usr/include/et -DHAVE_CONFIG_H -I. -O2 -g -fpic -Wall -pipe *.c ./*.c 1>makedepend.log 2>&1 make[1]: *** [depend] Error 1 make[1]: Leaving directory `/home/cyrus/debs/cyrus-imapd-2.3.16/lib' make: *** [depend] Error 1 puptest:/home/cyrus/debs/cyrus-imapd-2.3.16# cat makedepend.log cat: makedepend.log: No such file or directory puptest:/home/cyrus/debs/cyrus-imapd-2.3.16# cat lib/makedepend.log makedepend: warning: ignoring option -Wall makedepend: error: cannot open "pic" I can just not do the make depend, but I dnon't know what the impact is... Try removing the CLAGS from configure and add them to the make all. eg. make depend make all CFLAGS="-O2 -g -fPIC -Wall -pipe" 2) My other question is about some things that have been removed. ./configure --help isn't that verbose as it was in the older versions. Also, some options seem to have been removed?? configure:22514: WARNING: unrecognized options: --with-seen-db, --with-mboxlist-db What has happend here? They are now specified in imapd.conf seenstate_db: skiplist The cyrusdb backend to use for the seen state. Allowed values: flat, berkeley, berkeley-hash, skiplist mboxlist_db: skiplist The cyrusdb backend to use for the mailbox list. Allowed values: flat, berkeley, berkeley-hash, skiplist Thanks!! <> Cyrus Home Page: http://cyrusimap.web.cmu.edu/ Cyrus Wiki/FAQ: http://cyrusimap.web.cmu.edu/twiki List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html
compiling 2.3.16 on debian 64bit
Hi! A new year brings new resolutions! One of our resolutions is upgrading our cyrus infrastructure from 32bit to 64bit, moving to a new storage backend, upgrading from etch to lenny and on top of that rewriting our backend scripts. But before getting to all that, I need to be able to get cyrus compiled. I have one problem, and one question: 1) I also ran into the -fpic problem and can fix that when I'm running make. However makedepend can't handle 'pic' very well. This is how I do it: cyrus_version=cyrus-2.3.16 dest_dir=/tmp/cyrus-2.3.16 rm -fr $dest_dir mkdir $dest_dir make clean ./configure CFLAGS="-O2 -g -fpic -Wall -pipe" \ --prefix=/usr/${cyrus_version} \ --with-cyrus-prefix=/usr/${cyrus_version} \ --with-bdb-libdir=/usr/lib/ \ --with-openssl=/usr \ --with-com_err=/usr \ --with-bdb-incdir=/usr/include \ --with-seen-db=skiplist --with-mboxlist-db=skiplist \ --enable-murder --enable-idled --enable-replication make depend || exit make all || exit make -C sieve test || exit echo make install DESTDIR=${dest_dir} make install DESTDIR=${dest_dir} And the relevant output: ### Making depend in /home/cyrus/debs/cyrus-imapd-2.3.16/lib make[1]: Entering directory `/home/cyrus/debs/cyrus-imapd-2.3.16/lib' makedepend -I.. -I/usr/include -I/usr/include -I/usr/include -I/usr/include/et -DHAVE_CONFIG_H -I. -O2 -g -fpic -Wall -pipe *.c ./*.c 1>makedepend.log 2>&1 make[1]: *** [depend] Error 1 make[1]: Leaving directory `/home/cyrus/debs/cyrus-imapd-2.3.16/lib' make: *** [depend] Error 1 puptest:/home/cyrus/debs/cyrus-imapd-2.3.16# cat makedepend.log cat: makedepend.log: No such file or directory puptest:/home/cyrus/debs/cyrus-imapd-2.3.16# cat lib/makedepend.log makedepend: warning: ignoring option -Wall makedepend: error: cannot open "pic" I can just not do the make depend, but I dnon't know what the impact is... 2) My other question is about some things that have been removed. ./configure --help isn't that verbose as it was in the older versions. Also, some options seem to have been removed?? configure:22514: WARNING: unrecognized options: --with-seen-db, --with-mboxlist-db What has happend here? Thanks!! -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- Rudy Gevaert rudy.geva...@ugent.be tel:+32 9 264 4734 Directie ICT, afd. Infrastructuur Direction ICT, Infrastructure dept. Groep Systemen Systems group Universiteit Gent Ghent University Krijgslaan 281, gebouw S9, 9000 Gent, Belgie www.UGent.be -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- Cyrus Home Page: http://cyrusimap.web.cmu.edu/ Cyrus Wiki/FAQ: http://cyrusimap.web.cmu.edu/twiki List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html
Re: cyrus-imapd-2.2.12-10 -- impurge and -f recursion --
On Fri, Jan 15, James B. Byrne wrote: > I run cyrus-imapd under CentOS-4.8 (a RedHat el4 clone). I am > trying to discover if there is any way to purge a user's INBOX of > old and over-sized messages without affecting the contents of any > subfolders thereof. > > I have looked at impurge as the mechanism. However,my reading of the > man page, and of online discussions relating to this matter, > indicate that in order for impurge to remove any mail from the INBOX > then the -f switch has to be passed. But, I also gather that > whenever the -f switch is used then ALL subfolders of the target > directory are purged recursively as well. > > This strikes me as a rather odd combination of attributes but I > cannot see any way to prevent recursion if the -f switch is used. > What is the recommended way to purge mail from a user's INBOX only > using criteria such as age and size? You are not the only one searching for a better control of what ipurge should delete. I created a feature request for that and submitted a patch to the cmu bugzilla: https://bugzilla.andrew.cmu.edu/show_bug.cgi?id=3167 This is the link to the patch including documentation in the manpage: https://bugzilla.andrew.cmu.edu/attachment.cgi?id=1232 -- With best regards, Carsten Hoeger pgp1vwdw9zf5k.pgp Description: PGP signature Cyrus Home Page: http://cyrusimap.web.cmu.edu/ Cyrus Wiki/FAQ: http://cyrusimap.web.cmu.edu/twiki List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html