#3877 (ok 4.0) Big file session -> PHP Fatal error Allowed memory size

3.5.8
fixed
None
1
2015-02-19
2013-04-16
poiuty
No

Session file grows with each page refresh.
After some time in the php error log can be seen

[16-Apr-2013 11:00:45 UTC] PHP Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 13160160 bytes) in /var/www/dev/root/www/index.php on line 16
[16-Apr-2013 11:00:45 UTC] PHP Stack trace:
[16-Apr-2013 11:00:45 UTC] PHP 1. {main}() /var/www/dev/root/www/index.php:0
[16-Apr-2013 11:00:45 UTC] PHP 2. session_write_close() /var/www/dev/root/www/index.php:16

https://dl.dropboxusercontent.com/u/59491914/sanasol/cachegrind.out.21745
https://dl.dropboxusercontent.com/u/59491914/sanasol/cachegrind.out.21753

And session file
https://dl.dropboxusercontent.com/u/59491914/sanasol/sess_8isntcgpfbsijd30vh3v2bhcglu6npgt

Discussion

  • poiuty

    poiuty - 2013-04-16

    begins when
    1. Login url like "http://site.ru"
    2. Logout to url "index.php?token=ae7a243aecca0a51544c9c6552ea9554&old_usr=root"
    3. Login with this url "index.php?token=ae7a243aecca0a51544c9c6552ea9554&old_usr=root"

    Login -> Logout -> Login and session file begins to fill with repetitive data

    Image -> http://dsro.ru/gyazo/images/3be028a44a3a41d076f44b7f75d2.png

    Web nginx + php5.4-fpm
    MySQL Percona Server

     
    Last edit: poiuty 2013-04-16
  • Marc Delisle

    Marc Delisle - 2013-04-16

    Can you reproduce this problem, just when using the Russian language?

     
  • poiuty

    poiuty - 2013-04-16

    I found the reason
    if (;date.timezone = ) no matter what language is selected -> growing session file.
    if for example date.timezone = "Europe/Moscow" - all is well

     
  • Michal Čihař

    Michal Čihař - 2013-04-22

    We need 8b26dc5 in QA_3_5 as well, I did not notice it is needed for 3.5 as well when I was writing this fix for master...

     
  • Michal Čihař

    Michal Čihař - 2013-04-22
    • summary: Big file session -> PHP Fatal error Allowed memory size --> (ok 3.5.9/4.0) Big file session -> PHP Fatal error Allowed memory size
    • assigned_to: Michal Čihař
    • Priority: 5 --> 1
     
  • Michal Čihař

    Michal Čihař - 2013-04-22

    Backported to QA_3_5. This patch is already present in QA_4_0 and master.

     
  • Michal Čihař

    Michal Čihař - 2013-04-22

    Also you should be able to workaround this issue by setting $cfg['Error_Handler']['gather'] to false (what is actually the default).

     
  • Ann + J.M.

    Ann + J.M. - 2013-05-03
    • summary: (ok 3.5.9/4.0) Big file session -> PHP Fatal error Allowed memory size --> (ok 4.0) Big file session -> PHP Fatal error Allowed memory size
    • status: open --> open-fixed
     
  • Marc Delisle

    Marc Delisle - 2013-05-03
    • Status: open-fixed --> closed-fixed
     
  • Michal Čihař

    Michal Čihař - 2013-06-11
    • Status: closed-fixed --> fixed