Re: [PHP-DEV] SAPI Module Leaking

2001-12-21 Thread Zeev Suraski
At 00:31 22/12/2001, Alex Leigh wrote: >It sounds like there was a particular reason for writing it this way ? Could be, I don't really remember. There was a basic assumption (which is typically true, it's the first time I see it isn't) that threaded servers reuse their threads, because it's e

Re: [PHP-DEV] SAPI Module Leaking

2001-12-21 Thread Alex Leigh
It sounds like there was a particular reason for writing it this way ? I am considering what effect it will have on me if I simply require that people use thread pooling, and I'm going to do some tests to see whether there's still a leak condition or if it stabilizes when I reuse them. Alex On

Re: [PHP-DEV] SAPI Module Leaking

2001-12-21 Thread Zeev Suraski
Well, it is pretty complicated to fix, even though it's been a very long while since I touched this code so I may be wrong. As far as I recall, the TSRM hash tables won't reuse entries that were freed by threads that terminated. Fixing this, especially without hurting performance, may be qui

Re: [PHP-DEV] SAPI Module Leaking

2001-12-21 Thread Alex Leigh
Well, at this point it is only leaking 1k per request; that doesn't "sound" overly complicated to fix. Do you have an idea of what particularly TSRM is leaking, after ts_thread_free() is called? I'd be happy to poke around the code. Alex On 12/21/01 2:38 PM, "Zeev Suraski" <[EMAIL PROTECTED]> wr

Re: [PHP-DEV] SAPI Module Leaking

2001-12-21 Thread Zeev Suraski
The way TSRM is written is not designed for servers that don't reuse threads for more than one request, so if that's how it works - you're going to see a growing memory image all the time :I At 22:16 21/12/2001, Alex Leigh wrote: >Ok. I looked at the ISAPI code, and I am now calling ts_thread_f

Re: [PHP-DEV] SAPI Module Leaking

2001-12-21 Thread Alex Leigh
Ok. I looked at the ISAPI code, and I am now calling ts_thread_free() when the handler exits. This seems to have cleared up the problem immensely, but it's still leaking to the tune of ~1k per request. I'll go over my SAPI module again to verify that is not the cause of the 1k leak. Also with php

Re: [PHP-DEV] SAPI Module Leaking

2001-12-21 Thread Andi Gutmans
Check out DllMain() in php4isapi.c. Are you running the thread attach and thread detach code? Andi At 12:43 PM 12/21/2001 -0600, Alex Leigh wrote: >It can do both. In the testing configuration, it is not pooling but >destroying the threads. They are created as detached threads, which at least >o

Re: [PHP-DEV] SAPI Module Leaking

2001-12-21 Thread Andi Gutmans
Does this web server spawn a new thread for each request? Or does it reuse its threads? Andi At 12:22 PM 12/21/2001 -0600, Alex Leigh wrote: >I'm sure it's leaking, it'll readily consume a gig of memory and shows no >signs of slowing down. I originally was calling phpinfo(), but it also leaks >

Re: [PHP-DEV] SAPI Module Leaking

2001-12-21 Thread Alex Leigh
I'm sure it's leaking, it'll readily consume a gig of memory and shows no signs of slowing down. I originally was calling phpinfo(), but it also leaks equally if I just have the php handler serve a page with no php in it. So, yes, it leaks that amount every request and it never frees. The code a

Re: [PHP-DEV] SAPI Module Leaking

2001-12-21 Thread Zeev Suraski
Are you calling request_shutdown? Also, are you sure it's actually leaking? Does it leak 200-400KB on each and every request, or does this rate 'slow down' at some point? Zeev At 18:20 21/12/2001, Alex Leigh wrote: >All - > >I have written a SAPI module for a new webserver "continuity". The co