Apache Mod-Python - Re: Created: (MODPYTHON-60) PythonOption directive causes

This is Interesting: Free IT Magazines  
Home > Archive > Apache Mod-Python > June 2005 > Re: Created: (MODPYTHON-60) PythonOption directive causes





You are viewing an archived Text-only version of the thread. To view this thread in it's original format and/or if you want to reply to this thread please [click here]

Author Re: Created: (MODPYTHON-60) PythonOption directive causes
Jim Gallacher

2005-06-23, 5:50 pm

Anybody had a chance to look at this yet?

I'm kind of suspicous of python_merge_config in mod_python.c. It gets
called once for every request, and calls apr_pcalloc which I assume
allocates some memory from the pool.

py_config *merged_conf =
(py_config *) apr_pcalloc(p, sizeof(py_config));


I don't see where or how this memory gets freed. I've taken a look at
the apache src code but get lost pretty quick.

Regards,
Jim


Jim Gallacher (JIRA) wrote:
> PythonOption directive causes memory leak
> -----------------------------------------
>
> Key: MODPYTHON-60
> URL: http://issues.apache.org/jira/browse/MODPYTHON-60
> Project: mod_python
> Type: Bug
> Components: core
> Versions: 3.1.4, 3.1.3, 3.2.0
> Environment: Linux
> Reporter: Jim Gallacher
> Priority: Critical
>
>
> This was previously reported on the mod_python mailing list. See http://www.modpython.org/pipermail/...ril/015395.html
>
> A memory leak results when there is a PythonOption directive in the apache config file. Leak occurs when PythonOption is in either <VirtualHost> or <Directory> section.
>
> For each request, approx 25 bytes of memory is leaked per PythonOption directive.
>
> Methodolgy (using top to gauge memory usage, 100,000 requests per test case):
>
> def handler(req):
> req.content_type = 'text/plain'
> req.write('PythonOption test\n')
> return apache.OK
>
> 1. No PythonOption directives:
> 1.4 % MEM
>
> 2. 50 PythonOption directives:
> 11.3% MEM
>
> 3. 100 PythonOption directives:
> 25.4 % MEM
>
>
> I know 50 or 100 PythonOptions is not likely in a production system, but it clearly demonstrate the leak.
>
>
>



Sponsored Links






Free braindumps | Software forum | Database administration forum

Copyright 2003 - 2008 webservertalk.com