[peruser] Peruser patch (v14)

Marcelo Coelho marcelo at tpn.com.br
Tue Jan 18 10:28:24 MST 2011


Can you downgrade to RC2 (or some old RC3-v*) and see if this problem happens again?

I used RC1 and RC2 and now I have less problems with my patch than with RC1 and RC2.

On Jan 18, 2011, at 3:24 PM, Hannes Landeholm wrote:

> Ah and notice that this is a very critical problem.
> 
> The whole server basically goes down and restart of apache is impossible. The all childs that has hung up basically has to bee taken down with kill -9 one by one.
> 
> Hannes
> 
> On 18 January 2011 15:56, Hannes Landeholm <landeholm at gmail.com> wrote:
> I'm having problems with childs hanging with 100% CPU whenever the server runs out of memory.
> 
> Backtrace:
> 
> (gdb) backtrace
> #0  0x00002add8831e8a8 in *__GI___poll (fds=0x7fff26db0e70, nfds=2,
>     timeout=<value optimized out>) at ../sysdeps/unix/sysv/linux/poll.c:83
> #1  0x00002add87e1dbf2 in apr_poll () from /usr/lib/libapr-1.so.0
> #2  0x0000000000481d47 in child_main ()
> #3  0x00000000004831d4 in make_child ()
> #4  0x0000000000483f63 in ap_mpm_run ()
> #5  0x00000000004297e9 in main ()
> 
> Hannes
> 
> 
> 
> 
> On 13 January 2011 22:32, Marcelo Coelho <marcelo at tpn.com.br> wrote:
> Hi!
> 
> Peruser patch (v14)
> 
> Patch from RC2:
> http://opensource.mco2.net/download/apache/peruser/peruser-rc2-to-rc3-v14.patch
> 
> Full patch from vanilla Apache 2.2.17:
> http://opensource.mco2.net/download/apache/peruser/peruser-rc3-full-v14.patch
> 
> Changes (from RC2):
> 
> * (v14) Bug fix: multiplexer segfault when passing big requests to processors (URI with ~8192 bytes and big Referer header)
> * (v14) Performance: faster idle server maintenance
> * (v14) Clean-up: removed .orig files
> * (v13) Code more "APR-ized"
> * (v13) Bug fix: apachectl graceful works, even under high load.
> * (v12) Not released to public
> * (v11) Not released to public
> * (v10) Bug fixed: fixed some segfaults
> * (v10) Bug fixed: work around to a flaw in apr-util (as PR 43857)
> * (v9) Not released to public
> * (v8) Bug fixed: apachectl graceful now is more stable, like RC2 version
> * (v8) Bug fixed: fixed some segfaults (thank you Dave Steinberg for sending your core dumps)
> * (v8) Bug fixed: server dies with infinite loop script, reported by Taavi Sannik
> * (v8) Bug fixed: "long lost child" error, reported by Taavi Sannik
> * (v8) Performance: update_all_counters() rewritten without malloc() and free()
> * (v7) Bug fixed: multiplexers now can clone a processor child if all workers are busy.
> * (v6) Bug fixed: apachectl graceful now working properly, without "long lost child" errors
> * (v5) Not released to public
> * (v4) Code cleanup
> * (v4) Performance: childs are started in ~25ms, 40 times faster than in RC2 (~1000ms)
> * (v4) Bug fixed: now checking if total_processors is 1 (first access) to start StartProcessors
> * (v3) Performance: new child type (CHILD_TYPE_RESERVED) to avoid collision (2 childs trying to get the same free slot)
> * (v3) Bug fixed: fixed a bug in RC2, wait_timeout was always 0, never sleeping to wait for new workers.
> * (v2) Performance: StartProcessors, new configuration directive to control the number of child processors per vhost at startup
> * (v2) Performance: childs are started in ~50ms, 20 times faster than in RC2 (~1000ms)
> * (v1) Performance: faster to lookup for free slots (this is important on busy servers, with many virtual hosts)
> * (v1) Performance: faster to count processors, one single loop counts all processors
> * (v1) Bug fixed: bug when MinSpareProcessors is set to 0 (now all workers processes are killed when idle_timeout is reached)
> * (v1) Bug fixed: Free-up slots when a WORKER or PROCESSOR unexpectedly dies
> 
> 
> Regards,
> 
> --
> Marcelo Coelho
> marcelo at mco2.com.br
> 
> 
> _______________________________________________
> Peruser mailing list
> Peruser at telana.com
> http://www.telana.com/mailman/listinfo/peruser
> 
> 
> _______________________________________________
> Peruser mailing list
> Peruser at telana.com
> http://www.telana.com/mailman/listinfo/peruser



More information about the Peruser mailing list