You are viewing a plain text version of this content. The canonical link for it is here.
Posted to bugs@httpd.apache.org by bu...@apache.org on 2003/07/02 20:17:32 UTC
DO NOT REPLY [Bug 21285] -
(mem) cache size becomes negative causing segfault
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=21285>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND
INSERTED IN THE BUG DATABASE.
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=21285
(mem) cache size becomes negative causing segfault
------- Additional Comments From m.torquati@huginsoft.it 2003-07-02 18:17 -------
The problem shows up on only with dynamic object generation. We have
tested it using PHP and a small number of simple http clients.
How to reproduce the problem:
Send object requests from some (2-3) clients (I wrote a simple client that at
max rate possible connect to server, post a GET request, read reply and close
the connection) to a simple php script (code follows) with the cache object
count very very small (Es. : MCacheMaxObjectCount 50).
The script produces different small objects (a few bytes in size)
based on an input variable (pippo.php?variabile=1234).
If you look at the cache size after some
time you see it decrease to zero and become negative. Eventually, some
of the threads die because of a segfault.
-------- Apache (2.0.46) configure command -------------
./configure --with-mpm=worker --prefix=/apache-test/ --enable-mods-shared=all
--enable-so --enable-cache=shared --enable-mem_cache=shared
----- Cache configuration -------------
#
# Sample Cache Configuration
#
<IfModule mod_cache.c>
<IfModule mod_mem_cache.c>
CacheEnable mem /
CacheDefaultExpire 1000
CacheMaxExpire 3000
CacheIgnoreCacheControl Off
CacheIgnoreNoLastMod On
MCacheSize 2000
MCacheMaxObjectCount 50
MCacheMinObjectSize 1
MCacheMaxObjectSize 1048576
</IfModule>
</IfModule>
---- php script code (pippo.php) ----
<?php
header("Expires: Mon, 26 Jul 2005 05:00:00 GMT");
echo "<head> </head>";
echo "<html> <br> html part <br> </html>";
if (isset($_GET["variabile"])) {
echo "mi hai passato ".$_GET["variabile"];
}
else {
echo "non mi hai passato niente";
}
?>
---------------------------------------------------------------------
To unsubscribe, e-mail: bugs-unsubscribe@httpd.apache.org
For additional commands, e-mail: bugs-help@httpd.apache.org