I think you've hit the bug I mailed in on 19th April (Subject: deliver -E 
(Solaris, 1.6.24 without DB). In part it read...

---

On Solaris platforms which don't have DB available, deliver -E fails to 
prune anything, ever. The problem starts in deliver.c, in the 
_prune_actual_db routine. In it, there's a call to...

checkdelivered("", 0, "", 0);

(only called when DB not available)

Within checkdelivered, a call is then made to _get_db_name which will 
then end up with it (_get_db_name) always returning .../deliverdb/deliver-q
to checkdelivered (which in itself is disastrous if you actually have real 
entries in the "q" database).

---

Note the bit "which in itself is disastrous if you actually have real 
entries in the "q" database".

I'm afraid that I can't offer you any solution.

Cheers...

On Fri, 27 Apr 2001 11:22:10 +0200 [EMAIL PROTECTED] wrote:

> Hello,
> 
> 
> I'm running Cyrus IMAP4 v1.6.24 for
> several months under solaris
> and since yesterday
> deliver -E 2 doesn't work any more
> 
> /usr/local/imap/imapd/bin/deliver -E 2
> Bus Error - core dumped
> 
> 
> 
> I've tried to analyse why and made
> a truss of /usr/local/imap/imapd/bin/deliver -E 2
> 
> I've got this:
> 
> 
> 
> stat("/export/bases/imap/imapd/bin/deliver", 0xFFBEFB00) = 0
> [stuff deleted]
> open("/var/imap/mailboxes", O_RDWR)             = 3
> fstat(3, 0xFFBEFB48)                            = 0
> mmap(0x00000000, 14789, PROT_READ, MAP_SHARED, 3, 0) = 0xFF250000
> umask(077)                                      = 077
> brk(0x001538E8)                                 = 0
> brk(0x001578E8)                                 = 0
> getuid()                                        = 6131 [6131]
> time()                                          = 988358704
> fstat(-1, 0xFFBEDFF8)                           Err#9 EBADF
> open("/dev/conslog", O_WRONLY)                  = 4
> fcntl(4, F_SETFD, 0x00000001)                   = 0
> fstat(4, 0xFFBEDFF8)                            = 0
> fstat(4, 0xFFBEEA58)                            = 0
> time()                                          = 988358704
> open("/usr/share/lib/zoneinfo/MET", O_RDONLY)   = 5
> read(5, "\0\0\0\0\0\0\0\0\0\0\0\0".., 8192)     = 758
> close(5)                                        = 0
> getpid()                                        = 20945 [20944]
> putmsg(4, 0xFFBEE110, 0xFFBEE104, 0)            = 0
> open("/etc/.syslog_door", O_RDONLY)             = 5
> door_info(5, 0xFFBEE048)                        = 0
> getpid()                                        = 20945 [20944]
> door_call(5, 0xFFBEE030)                        = 0
> close(5)                                        = 0
> open("/var/imap/deliverdb/deliver-a.lock", O_RDWR|O_CREAT, 0666) = 5
> fcntl(5, F_SETLKW, 0xFFBEDC08)                  = 0
> open("/var/imap/deliverdb/deliver-q.lock", O_RDWR|O_CREAT, 0666) = 6
> fcntl(6, F_SETLKW, 0xFFBECAF0)                  = 0
> brk(0x001578E8)                                 = 0
> brk(0x001598E8)                                 = 0
> open64("/var/imap/deliverdb/deliver-q.db.pag", O_RDWR|O_CREAT, 0666) = 7
> open64("/var/imap/deliverdb/deliver-q.db.dir", O_RDWR|O_CREAT, 0666) = 8
> fstat64(8, 0xFFBEDB00)                          = 0
> llseek(7, 0, SEEK_SET)                          = 0
> read(7, "\01203D203CE03A0039C03 n".., 1024)     = 1024
> close(6)                                        = 0
>     Incurred fault #5, FLTACCESS  %pc = 0x00025634
>       siginfo: SIGBUS BUS_ADRALN addr=0x00156E49
>     Received signal #10, SIGBUS [default]
>       siginfo: SIGBUS BUS_ADRALN addr=0x00156E49
>         *** process killed ***
> 
> 
> 
> 
> It seems to stop when processing /var/imap/deliverdb/deliver-q.db.*
> It's maybe a coincidence but I've got only one user whose mailbox
> begins with "q" and I've created it yesterday....
> 
> Why does it processes deliver-q just after processing deliver-a ?
> I'd have expected first a, then b, the c ..
> 
> 
> 
> If I remove /var/imap/deliverdb/deliver-q.db.*
> 
> rm /var/imap/deliverdb/deliver-q.db.*
> 
> deliver seems to work again but if I truss it, I notice
> that it opens /var/imap/deliverdb/deliver-q.lock very often !!!!
> 
> 
> 
> open("/var/imap/deliverdb/deliver-a.lock", O_RDWR|O_CREAT, 0666) = 5
> fcntl(5, F_SETLKW, 0xFFBEDC08)                  = 0
> open("/var/imap/deliverdb/deliver-q.lock", O_RDWR|O_CREAT, 0666) = 6
> fcntl(6, F_SETLKW, 0xFFBECAF0)                  = 0
> brk(0x001578E8)                                 = 0
> brk(0x001598E8)                                 = 0
> open64("/var/imap/deliverdb/deliver-q.db.pag", O_RDWR|O_CREAT, 0666) = 7
> open64("/var/imap/deliverdb/deliver-q.db.dir", O_RDWR|O_CREAT, 0666) = 8
> fstat64(8, 0xFFBEDB00)                          = 0
> llseek(7, 0, SEEK_SET)                          = 0
> read(7, 0x00156B80, 1024)                       = 0
> close(6)                                        = 0
> close(8)                                        = 0
> close(7)                                        = 0
> close(5)                                        = 0
> open("/var/imap/deliverdb/deliver-b.lock", O_RDWR|O_CREAT, 0666) = 5
> fcntl(5, F_SETLKW, 0xFFBEDC08)                  = 0
> open("/var/imap/deliverdb/deliver-q.lock", O_RDWR|O_CREAT, 0666) = 6
> fcntl(6, F_SETLKW, 0xFFBECAF0)                  = 0
> close(6)                                        = 0
> close(8)                                        Err#9 EBADF
> close(7)                                        Err#9 EBADF
> close(5)                                        = 0
> open("/var/imap/deliverdb/deliver-c.lock", O_RDWR|O_CREAT, 0666) = 5
> fcntl(5, F_SETLKW, 0xFFBEDC08)                  = 0
> open("/var/imap/deliverdb/deliver-q.lock", O_RDWR|O_CREAT, 0666) = 6
> fcntl(6, F_SETLKW, 0xFFBECAF0)                  = 0
> close(6)                                        = 0
> close(8)                                        Err#9 EBADF
> close(7)                                        Err#9 EBADF
> close(5)                                        = 0
> open("/var/imap/deliverdb/deliver-d.lock", O_RDWR|O_CREAT, 0666) = 5
> fcntl(5, F_SETLKW, 0xFFBEDC08)                  = 0
> open("/var/imap/deliverdb/deliver-q.lock", O_RDWR|O_CREAT, 0666) = 6
> fcntl(6, F_SETLKW, 0xFFBECAF0)                  = 0
> close(6)                                        = 0
> close(8)                                        Err#9 EBADF
> close(7)                                        Err#9 EBADF
> close(5)                                        = 0
> open("/var/imap/deliverdb/deliver-e.lock", O_RDWR|O_CREAT, 0666) = 5
> fcntl(5, F_SETLKW, 0xFFBEDC08)                  = 0
> open("/var/imap/deliverdb/deliver-q.lock", O_RDWR|O_CREAT, 0666) = 6
> 
> [stuff deleted]
> 
> 
> open("/var/imap/deliverdb/deliver-y.lock", O_RDWR|O_CREAT, 0666) = 5
> fcntl(5, F_SETLKW, 0xFFBEDC08)                  = 0
> open("/var/imap/deliverdb/deliver-q.lock", O_RDWR|O_CREAT, 0666) = 6
> fcntl(6, F_SETLKW, 0xFFBECAF0)                  = 0
> close(6)                                        = 0
> close(8)                                        Err#9 EBADF
> close(7)                                        Err#9 EBADF
> close(5)                                        = 0
> open("/var/imap/deliverdb/deliver-z.lock", O_RDWR|O_CREAT, 0666) = 5
> fcntl(5, F_SETLKW, 0xFFBEDC08)                  = 0
> open("/var/imap/deliverdb/deliver-q.lock", O_RDWR|O_CREAT, 0666) = 6
> [...]
> 
> 
> 
> 
> 
> Then, if I send another mail to the user whose name
> begins with q    
> deliver -E 2 no longer works.
> 
> /usr/local/imap/imapd/bin/deliver -E 2
> Bus Error (core dumped)
> 
> 
> 
> Regards,
> 
> Nicolas
> 

Richard Hopkins,
Information Services,
Computer Centre,
University of Bristol,
Bristol, BS8 1UD, UK

Tel +44 117 928 7859
Fax +44 117 929 1576

RFC-822: [EMAIL PROTECTED]

Reply via email to