From: michael dot caplan at htc dot ca Operating system: Debian PHP version: 4.4.0 PHP Bug Type: Session related Bug description: Local session.gc_maxlifetime not always being respected
Description: ------------ I have a rather peculiar problem with session.gc_maxlifetime local settings not being respected under certain circumstances. In order to ensure that sessions created for our application would have a max lifetime longer than the default 24 minutes, we cranked session.gc_maxlifetime in an .htaccess file to 4 hours (local value). However, our sessions where still being clean up after 24 minutes. I validated through phpinfo() that it was actually picking up the local setting, which it was. I also noticed in my testing that if I reduced the session.gc_maxlifetime local value to less than the master value, my sessions would be cleaned up in accordance to the local value. When we changed the master value to 4 hours, we are no longer having our sessions cleaned up within 24 minutes. It appears that the local value of session.gc_maxlifetime is only being respected if it is less than that of the master value. The noted behaviour I beleive has to do with PHP internal session handling mechanism. I have no other oppertations touching session content. Also, the behaviour was noted at the file system level when another user is connecting with a different session ID resulting in other users sessions being cleaned up. So it is not an issue of a current user having his session invalidated through other means outside of garbage collection. BTW, we are using the file based session container -- Edit bug report at http://bugs.php.net/?id=34588&edit=1 -- Try a CVS snapshot (php4): http://bugs.php.net/fix.php?id=34588&r=trysnapshot4 Try a CVS snapshot (php5.0): http://bugs.php.net/fix.php?id=34588&r=trysnapshot50 Try a CVS snapshot (php5.1): http://bugs.php.net/fix.php?id=34588&r=trysnapshot51 Fixed in CVS: http://bugs.php.net/fix.php?id=34588&r=fixedcvs Fixed in release: http://bugs.php.net/fix.php?id=34588&r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=34588&r=needtrace Need Reproduce Script: http://bugs.php.net/fix.php?id=34588&r=needscript Try newer version: http://bugs.php.net/fix.php?id=34588&r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=34588&r=support Expected behavior: http://bugs.php.net/fix.php?id=34588&r=notwrong Not enough info: http://bugs.php.net/fix.php?id=34588&r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=34588&r=submittedtwice register_globals: http://bugs.php.net/fix.php?id=34588&r=globals PHP 3 support discontinued: http://bugs.php.net/fix.php?id=34588&r=php3 Daylight Savings: http://bugs.php.net/fix.php?id=34588&r=dst IIS Stability: http://bugs.php.net/fix.php?id=34588&r=isapi Install GNU Sed: http://bugs.php.net/fix.php?id=34588&r=gnused Floating point limitations: http://bugs.php.net/fix.php?id=34588&r=float No Zend Extensions: http://bugs.php.net/fix.php?id=34588&r=nozend MySQL Configuration Error: http://bugs.php.net/fix.php?id=34588&r=mysqlcfg