#35894 [Opn->Ana]: php-imap doesn't trap USR2 when mailbox is locked
From: rasmus@php.net Date: Sun, 10 Jan 2010 22:36:09 +0000 Subject: #35894 [Opn->Ana]: php-imap doesn't trap USR2 when mailbox is locked References: 1 Groups: php.bugs Request: Send a blank email to php-bugs+get-146513@lists.php.net to get a copy of this message
ID: 35894
Updated by: rasmus@php.net
Reported By: jik at kamens dot brookline dot ma dot us
-Status: Open
+Status: Analyzed
Bug Type: Feature/Change Request
Operating System: Linux
PHP Version: 5.1.2
New Comment:
The problem with PHP setting a handler for SIGUSR2 is that when we are
running as a SAPI module inside some other process like Apache or
anything using LinuxThreads, grabbing SIGUSR2 may cause problems.
Newer Linux kernels provide reserved internals signals for LinuxThreads
to use, and Apache should only be using SIGUSR1, but how confident are
you that PHP grabbing this signal isn't going to break it in some
environments? It may fix the problem in yours, but if it breaks it in
many others that is something we need to deal with.
Previous Comments:
------------------------------------------------------------------------
[2010-01-10 21:45:30] tdfischer at fedoraproject dot org
This bug is still around and can wreak havok for a drupal site that
lets
users submit content via machine-local mail. Could someone *please*
commit it already?
------------------------------------------------------------------------
[2006-01-05 15:56:17] jik at kamens dot brookline dot ma dot us
You *don't* want to allow the simultaneous opening of a mailbox by two
processes. The whole point of locking is to *prevent* the simultaneous
opening of a mailbox by two processes. What the locking is *supposed*
to do is to make one process *wait* for the other one, but what it does
instead, if you don't catch the USR2 signal, is for the process that got
the lock first to *die* after *being killed* by the other one. This is
not correct behavior.
Incidentally, I just tested with a newly compiled c-client 2004g and
confirmed that the problem persists there without my patch.
------------------------------------------------------------------------
[2006-01-05 10:07:30] sniper@php.net
Why would you want to allow opening same mailbox by two simultaneous
processes?
------------------------------------------------------------------------
[2006-01-05 04:13:45] jik at kamens dot brookline dot ma dot us
Please look carefully at the output. The notices are not "harmless".
Note that the message "successfully opened mailbox" only appears *once*.
It should appear twice, because there are two processes who both want
to open the mailbox. It only appears once because one of the two
processes is killed by a USR2 signal as I've described.
I don't know why the patch I sent didn't help for you. It reliably
solves the problem for me. Perhaps I picked bad preprocessor symbols
and it's not actually getting compiled into the object code on your
system. Can you put debugging code in to see if the arm_signal calls
are actually happening?
Thanks.
------------------------------------------------------------------------
[2006-01-05 01:01:06] sniper@php.net
I get the same notices, which seem quite harmless anyway. And your
patch did not make any difference whatsoever.
------------------------------------------------------------------------
The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/35894
--
Edit this bug report at http://bugs.php.net/?id=35894&edit=1
Thread (45 messages)
- #35894 [Opn->Fbk]: php-imap doesn't trap USR2 when mailbox is locked
- #35894 [Fbk->Opn]: php-imap doesn't trap USR2 when mailbox is locked
- #35894 [Opn->Fbk]: php-imap doesn't trap USR2 when mailbox is locked
- #35894 [Fbk->Opn]: php-imap doesn't trap USR2 when mailbox is locked
- #35894 [Opn]: php-imap doesn't trap USR2 when mailbox is locked
- #35894 [Opn]: php-imap doesn't trap USR2 when mailbox is locked
- #35894 [Opn->Fbk]: php-imap doesn't trap USR2 when mailbox is locked
- #35894 [Fbk->Opn]: php-imap doesn't trap USR2 when mailbox is locked
- #35894 [Opn->Fbk]: php-imap doesn't trap USR2 when mailbox is locked
- #35894 [Fbk->Opn]: php-imap doesn't trap USR2 when mailbox is locked
- #35894 [Opn]: php-imap doesn't trap USR2 when mailbox is locked
- #35894 [Opn]: php-imap doesn't trap USR2 when mailbox is locked
- #35894 [Opn->Fbk]: php-imap doesn't trap USR2 when mailbox is locked
- #35894 [Fbk->Opn]: php-imap doesn't trap USR2 when mailbox is locked
- #35894 [Com]: php-imap doesn't trap USR2 when mailbox is locked
- #35894 [Opn->Ana]: php-imap doesn't trap USR2 when mailbox is locked
- Req #35894 [Com]: php-imap doesn't trap USR2 when mailbox is locked
- Req #35894 [Com]: php-imap doesn't trap USR2 when mailbox is locked
- Req #35894 [Com]: php-imap doesn't trap USR2 when mailbox is locked
- Req #35894 [Com]: php-imap doesn't trap USR2 when mailbox is locked
- Req #35894 [Com]: php-imap doesn't trap USR2 when mailbox is locked
- Req #35894 [PATCH]: php-imap doesn't trap USR2 when mailbox is locked
- Req #35894 [PATCH]: php-imap doesn't trap USR2 when mailbox is locked
- Req #35894 [PATCH]: php-imap doesn't trap USR2 when mailbox is locked
- Req #35894 [PATCH]: php-imap doesn't trap USR2 when mailbox is locked
- Req #35894 [PATCH]: php-imap doesn't trap USR2 when mailbox is locked
- Req #35894 [PATCH]: php-imap doesn't trap USR2 when mailbox is locked
- Req #35894 [PATCH]: php-imap doesn't trap USR2 when mailbox is locked
- Req #35894 [PATCH]: php-imap doesn't trap USR2 when mailbox is locked
- Req #35894 [PATCH]: php-imap doesn't trap USR2 when mailbox is locked
- Req #35894 [PATCH]: php-imap doesn't trap USR2 when mailbox is locked
- Req #35894 [PATCH]: php-imap doesn't trap USR2 when mailbox is locked
- Req #35894 [PATCH]: php-imap doesn't trap USR2 when mailbox is locked
- Req #35894 [PATCH]: php-imap doesn't trap USR2 when mailbox is locked
- Req #35894 [PATCH]: php-imap doesn't trap USR2 when mailbox is locked
- Req #35894 [PATCH]: php-imap doesn't trap USR2 when mailbox is locked
- Req #35894 [PATCH]: php-imap doesn't trap USR2 when mailbox is locked
- Req #35894 [PATCH]: php-imap doesn't trap USR2 when mailbox is locked
- Req #35894 [Com]: php-imap doesn't trap USR2 when mailbox is locked
- Req #35894 [Com]: php-imap doesn't trap USR2 when mailbox is locked
- Req #35894 [Com]: php-imap doesn't trap USR2 when mailbox is locked
- Req #35894 [Com]: php-imap doesn't trap USR2 when mailbox is locked
- Req #35894 [Com]: php-imap doesn't trap USR2 when mailbox is locked
- Req #35894 [Com]: php-imap doesn't trap USR2 when mailbox is locked
| « previous | php.bugs (#146513) | next » |
|---|