Hi! I've a cyrus-imapd-2.3.7-7 built from the src.rpm at invoca.ch running on FC5. I use the "delayed expunge" feature. My cyrus.conf therefor has delprune cmd="cyr_expire -E 3 -X 2" at=0400 Most of the time cyr_expire runs it crashes with SIGBUS or SIGSEGV. It also crashes if I start it manually after it crashed during the night. Doing a strace and "reconstruct -r"ing the user last accessed makes cyr_expire happy again... at least for this users mailboxes. I've activated coredumps and the backtrace always shows: #0 0x0804e6f0 in cyrus_mutex_free () #1 0x08053213 in cyrus_mutex_free () #2 0x0804cb50 in expire () #3 0x0805a955 in mboxlist_findall () #4 0x0808ef0e in mboxlist_findall () #5 0x08057fc2 in mboxlist_findall () #6 0x0804cfa7 in expire () #7 0x004554e4 in __libc_start_main () from /lib/libc.so.6 #8 0x0804c6f1 in ?? () The last lines from strace shows write access to the quota file.... stat64("/var/spool/imap/user/xxxxx/Trash/cyrus.expunge", {st_mode=S_IFREG|0600, st_size=736, ...}) = 0 mmap2(NULL, 736, PROT_READ, MAP_SHARED, 9, 0) = 0xb66ba000 lseek(9, 736, SEEK_SET) = 736 open("/var/spool/imap/user/xxxxx/Trash/cyrus.expunge.NEW", O_RDWR|O_CREAT|O_TRUNC, 0666) = 12 time(NULL) = 1169137631 write(10, "\0\0\0\357\0\0\0\0\0\0\0\t\0\0\0`\0\0\0P\0\0\0\0E\257?"..., 96) = 96 _llseek(10, 0, [0], SEEK_SET) = 0 read(10, "\0\0\0\357\0\0\0\0\0\0\0\t\0\0\0`\0\0\0P\0\0\0\0E\257?"..., 4096) = 96 _llseek(10, 96, [96], SEEK_SET) = 0 open("/var/lib/imap/quota/g/user.xxxxx", O_RDWR) = 13 fcntl64(13, F_SETLKW, {type=F_WRLCK, whence=SEEK_SET, start=0, len=0}) = 0 fstat64(13, {st_mode=S_IFREG|0600, st_size=16, ...}) = 0 stat64("/var/lib/imap/quota/g/user.xxxxx", {st_mode=S_IFREG|0600, st_size=16, ...}) = 0 fstat64(13, {st_mode=S_IFREG|0600, st_size=16, ...}) = 0 mmap2(NULL, 16, PROT_READ, MAP_SHARED, 13, 0) = 0xb66b9000 munmap(0xb66b9000, 16) = 0 unlink("/var/lib/imap/quota/g/user.xxxxx.NEW") = -1 ENOENT (No such file or directory) open("/var/lib/imap/quota/g/user.xxxxx.NEW", O_RDWR|O_CREAT|O_TRUNC, 0666) = 14 fcntl64(14, F_SETLKW, {type=F_WRLCK, whence=SEEK_SET, start=0, len=0}) = 0 lseek(14, 0, SEEK_SET) = 0 write(14, "30244719\n512000\n", 16) = 16 ftruncate(14, 16) = 0 fsync(14) = 0 fstat64(14, {st_mode=S_IFREG|0600, st_size=16, ...}) = 0 rename("/var/lib/imap/quota/g/user.xxxxx.NEW", "/var/lib/imap/quota/g/user.xxxxx") = 0 fcntl64(14, F_SETLKW, {type=F_UNLCK, whence=SEEK_SET, start=0, len=0}) = 0 close(14) = 0 fcntl64(13, F_SETLKW, {type=F_UNLCK, whence=SEEK_SET, start=0, len=0}) = 0 close(13) = 0 fstat64(12, {st_mode=S_IFREG|0600, st_size=0, ...}) = 0 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb66b9000 time(NULL) = 1169137631 --- SIGSEGV (Segmentation fault) @ 0 (0) --- +++ killed by SIGSEGV (core dumped) +++ Any ideas? Regards, Wolfgang Breyha -- Wolfgang Breyha <wbreyha@xxxxxxx> | http://www.blafasel.at/ Vienna University Computer Center | Austria ---- 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