followup: stuck lmtpd processes
John Wade
jwade at oakton.edu
Tue Sep 23 23:35:04 EDT 2003
Hi Andrew,
I was the one who wrote the message you found. I finally came to the
conclusion that the flat file locking mechanism is somewhat broken in
Cyrus, but I was never a good enough C programmer to pin down what was
happening. (The mmap stuff makes it really tricky to debug.) I
wanted to blame it on the Linux kernel, but I know that others have
experienced the same problems in Solaris.
I finally gave up and wrote a locking timeout patch for 2.0.16. see
http://www.oakton.edu/~jwade/cyrus/ for the patch and full details
A number of other folks have tried this patch successfully on 2.0.16 and
2.1.x, and I know it has resolved our problem.
If you can solve the particular bug that causes this, more power to you,
if not, my work around resolves a number of possible deadlock issues.
Enjoy,
John
Andrew Morgan wrote:
>Following up on my previous post about stuck lmtpd processes. I found
>this incredibly detailed faq at:
>
>http://www.faqchest.com/prgm/cyrus-l/cyrus-01/cyrus-0111/cyrus-011102/cyrus01111023_33254.html
>
>This isn't exactly the same problem, but the steps on that page helped me
>figure out that they are all stuck trying to get a lock on:
>
>/private/cyrus/mail/k/user/krolickp/cyrus.header
>
>Looking at /proc/locks shows:
>
>7: POSIX ADVISORY WRITE 21903 08:11:42107658 0 EOF d23895e0 c3217f44 c510e4c4 00000000 ccbf076c
>7: -> POSIX ADVISORY WRITE 32485 08:11:42107658 0 EOF ccbf0760 ee36ac44 f3bb26a4 d23895e0 ee36ac4c
>7: -> POSIX ADVISORY WRITE 1802 08:11:42107658 0 EOF ee36ac40 c050ea04 ccbf0764 d23895e0 c050ea0c
>7: -> POSIX ADVISORY WRITE 1217 08:11:42107658 0 EOF c050ea00 ee36a344 ee36ac44 d23895e0 ee36a34c
>...
>
>
>I don't see how this deadlock occurred, but I'm willing to help debug it.
>
> Andy
>
>
>
>
>
More information about the Info-cyrus
mailing list