ID: 23331
User updated by: jakub at icewarp dot com
-Summary: Definite memory leak
Reported By: jakub at icewarp dot com
-Status: No Feedback
+Status: Open
-Bug Type: COM related
+Bug Type: IIS related
Operating System: W2K
PHP Version: 4.3.2RC1
New Comment:
I have found out there is a worse problem. When calling the
ISAPI DLL function HttpExtensionProc(Extension) to process the PHP
session it leaks some memory. If you remove the call it does not leak
any memory. I also made sure the WriteClientProc and such procedures in
the Extension struct are empty so there could not be any leak from
within the web server engine. I also tried to unload the ISAPI dll and
this did not free the memory either. When run the 1000x
HttpExtensionProc(Extension) to a very easy script like the following:
<?
echo "Hello";
?>
It leaks about 500kB. I'm not a Linux guy but I suppose if there would
be a leak on Linux everybody would already know so I think it might be
the ISAPI module problem only. Hopefully.
Thanks Jakub
Previous Comments:
------------------------------------------------------------------------
[2003-04-29 10:21:22] sniper@php.net
No feedback was provided. The bug is being suspended because
we assume that you are no longer experiencing the problem.
If this is not the case and you are able to provide the
information that was requested earlier, please do so and
change the status of the bug back to "Open". Thank you.
------------------------------------------------------------------------
[2003-04-24 12:38:03] sniper@php.net
Please try using this CVS snapshot:
http://snaps.php.net/php4-STABLE-latest.tar.gz
For Windows:
http://snaps.php.net/win32/php4-win32-STABLE-latest.zip
------------------------------------------------------------------------
[2003-04-24 09:29:46] jakub at icewarp dot com
I have seen a few threads about Memory leaks in the COM object
implementation here but from what I see this has never been solved. For
instance this little piece of code proves it:
$excel=new COM("Excel.Application");
for ($i=0;$i<50000;$i++) $excel->sheetsinnewworkbook= "1";
die();
It's not always a property that causes the memory leak. It's also the
method you call when you pass strings to it. Also when you try to
reference a property that does not exist. I'm using my own COM object
to test it with and 5000 cycles o calling a simple 3 string parameter
function uses up to 30MB of RAM.
Please try to fix it. We have to use a CGI mode where every instance of
PHP is freed completely. But we want to use the ISAPI it is not
possible to do that now. Thank you
Jakub
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=23331&edit=1