note 49630 added to function.session-set-save-handler
| From: | oliver at teqneers dot de | Date: | Thu, 03 Feb 2005 11:44:40 +0000 |
| Subject: | note 49630 added to function.session-set-save-handler | ||
| Groups: | php.notes | ||
| Request: | Send a blank email to php-notes+get-84430@lists.php.net to get a copy of this message | ||
For some people it might be important to know, that if the standard session handler has been
overwritten with session_set_save_handler, no locking is working anymore (between session_read and
session_write). The following might happen:
script "A" start .
read session data .
. script "B" start
. read session data
running (30secs) add session data
. write sesion data
. script "B" stop
write session data .
script "A" stop .
If a script "A" runs for a long time (say 30secs) the same user might start another script
"B", which also uses a session. Script "B" will start and read session data,
even though script "A" is still running. Because script "B" is much faster it
will finish its work and write back its session data before script "A" has ended. Now
script "A" ends and overwrites all of script "B"'s session data. If you
DON'T use session_set_save_handler, this cannot happend, because in this case, PHP will not
start script "B" until script "A" ends.
----
Manual Page -- http://www.php.net/manual/en/function.session-set-save-handler.php
Edit -- http://master.php.net/manage/user-notes.php?action=edit+49630
Delete: added to the manual -- http://master.php.net/manage/user-notes.php?action=delete+49630&report=yes&reason=added+to+the+manual
Delete: bad code -- http://master.php.net/manage/user-notes.php?action=delete+49630&report=yes&reason=bad+code
Delete: spam -- http://master.php.net/manage/user-notes.php?action=delete+49630&report=yes&reason=spam
Delete: useless -- http://master.php.net/manage/user-notes.php?action=delete+49630&report=yes&reason=useless
Delete: other reasons -- http://master.php.net/manage/user-notes.php?action=delete+49630&report=yes
Reject -- http://master.php.net/manage/user-notes.php?action=reject+49630&report=yes
Search -- http://master.php.net/manage/user-notes.php