ID:               26005
 Comment by:       sigurd dot spam at totallydigital dot co dot nz
 Reported By:      parsnip11 at hotmail dot com
 Status:           No Feedback
 Bug Type:         Session related
 Operating System: windows 2000 iis 5
 PHP Version:      4CVS-2003-10-31
 New Comment:

It may be due to lack of memory.



I noticed this error when I accidently piled huge SQL tables into an
array (SELECT 10,000 records into an array)



Php must be very close to running out of memory - when I fixed my SQL
mistake, and put the first table row into the array, this error never
returned.



I set the php.ini limit for memory usage to 20 MB. It may be that other
versions of PHP would correctly report PHP attempting to allocate
memory beyond its php.ini quota?



Debian 2.4.19-ac4 with PHP 4.3.3, Apache 1.3.29 as follows:



dpkg -l | grep php4

ii  php4           4.3.3-5        A server-side, HTML-embedded
scripting langu

ii  php4-cgi       4.3.3-5        A server-side, HTML-embedded
scripting langu

ii  php4-gd2       4.3.2+rc3-2    GD module (with GD2) for php4

ii  php4-imap      4.3.3-5        IMAP module for php4

ii  php4-mysql     4.3.3-5        MySQL module for php4

ii  php4-pear      4.3.3-5        PEAR - PHP Extension and Application
Reposit



=========



dpkg -l | grep apache

ii  apache         1.3.29.0.1-5   Versatile, high-performance HTTP
server

ii  apache-common  1.3.29.0.1-5   Support files for all Apache
webservers

ii  apache-utils   1.3.29.0.1-5   Utility programs for webservers

ii  libapache-mod- 1.0.3-7        A DAV module for Apache

ii  libapache-mod- 2.8.16-7       Strong cryptography (HTTPS support)
for Apac


Previous Comments:
------------------------------------------------------------------------

[2004-02-23 07:11:43] jsnajdr at kerio dot com

This is a patch that stopped crashing for me:



*** php-4.3.4/ext/session/session.c     Wed Oct  8 12:25:39 2003

--- php-4.3.4-n/ext/session/session.c   Tue Dec  9 11:36:24 2003

***************

*** 1543,1548 ****

--- 1543,1556 ----

        }

  }

  

+ static void php_session_init_globals(php_ps_globals *ps_globals
TSRMLS_DC)

+ {

+       ps_globals->id = NULL;

+       ps_globals->session_status = php_session_none;

+       ps_globals->mod_data = NULL;

+       ps_globals->http_session_vars = NULL;

+ }

+ 

  static void php_rinit_session_globals(TSRMLS_D)

  {             

        PS(id) = NULL;

***************

*** 1618,1624 ****

  #ifdef ZTS

        php_ps_globals *ps_globals;

  

!       ts_allocate_id(&ps_globals_id, sizeof(php_ps_globals), NULL, NULL);

        ps_globals = ts_resource(ps_globals_id);

  #endif

  

--- 1626,1632 ----

  #ifdef ZTS

        php_ps_globals *ps_globals;

  

!       ts_allocate_id(&ps_globals_id, sizeof(php_ps_globals),
(ts_allocate_ctor) php_session_init_globals, NULL);

        ps_globals = ts_resource(ps_globals_id);

  #endif

------------------------------------------------------------------------

[2004-02-09 18:44:35] admin at sistemasdinamicos dot com dot ar

I'm also having this issue.

Database error: 

MySQL Error: 1062 (Duplicate entry
'Sid-dec6275d91b72031c6db12dfd7f59e9e' for key 1)

Session halted.

Warning: Unknown(): A session is active. You cannot change the session
module's ini settings at this time. in Unknown on line 0



I'm using phplib 7.4 new session_custom. It uses
session_module_name('user') to use phplib's ct_sql container to store
session data in db.



The error occurs when I reload the page too fast. Another strange
thing, it happens in Opera 7, not in IE 6 (I think because IE can't
reload as fast as Opera).



When I use $sess->freeze() phplib's function at the end of the script
the error never happens, no matter how fast you reload the page. But I
don't want to use it, because I much prefer use directly
$_SESSION['var'] and if you do $sess->freeze() session variables got
screwed and if you don't the mentioned error appear.



Using php 4.3.4 and Apache 2.0.40 



Adio!

------------------------------------------------------------------------

[2004-01-02 07:32:15] mtimdog at comcast dot net

Let me rephrase that.  Oscommerce's session handling code is what
breaks php 4.3.x, I downgraded to 4.2.3 and no problem.  Note, was a
default install of oscommerce from oscommerce.com.  Try yourself, takes
roughly 15 minutes to install (most likely < 5).

------------------------------------------------------------------------

[2003-12-31 13:19:29] mtimdog at comcast dot net

I recently upgraded to 4.3.4 on my laptop (using apache) and am getting
this error as well.  to produce this code I have a simple redirect
statement

<meta http-equiv="refresh" content="1;index.php">



that redirects from index.html to index.php.



On the index.php page (oscommerce site), it makes/resets the session
variable or whatever oscommerce does.

------------------------------------------------------------------------

[2003-12-13 19:32:54] mrjack at online dot fr

I have a similar problem on a linux box running version 4.3.4 and
apache 2.0.48.

I get this in my apache logs :

PHP Warning:  Unknown(): A session is active. You cannot change the
session module's ini settings at this time. in Unknown on line
1919973221



And after this i must restart the web server ...

------------------------------------------------------------------------

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/26005

-- 
Edit this bug report at http://bugs.php.net/?id=26005&edit=1

Reply via email to