[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Server broken with 2.0.47-1



Please note that I have just requested help on the Apache User mailing
list. The contents of that reply (with one URI edited) are set out below.

Regards,
Adam

Hi all,

What was meant to be a routine upgrade from libapr0_2.0.46-3_i386.deb,
apache2-common_2.0.46-3_i386.deb and apache2-mpm-worker_2.0.46-3_i386.deb
to 2.0.47-1 has exposed a bug within Apache, the Debian packages or my
configuration.

I have spent many hours since I first tried upgrading 2.0.46-3 in the early
hours of the morning attempting to isolate the problem, complicated by the
fact that the server is in public use.

I have gone right through the configuration and made it as close to
Debian's default configuration and as minimal as possible. These are the
only differences between Debian's default apache2.conf and mine:

23c23,29
< LockFile /var/lock/apache2/accept.lock
---
> <IfDefine proxy>
>   LockFile /var/lock/apache2/accept_proxy.lock
> </IfDefine>
> 
> <IfDefine server>
>   LockFile /var/lock/apache2/accept_server.lock
> </IfDefine>
28c34,41
< PidFile /var/run/apache2.pid
---
> <IfDefine proxy>
>   PidFile /var/run/apache2_proxy.pid
> </IfDefine>
> 
> <IfDefine server>
>   PidFile /var/run/apache2_server.pid
> </IfDefine>
> 
111c124
< NameVirtualHost *
---
> #NameVirtualHost *
114c127,134
< ErrorLog /var/log/apache2/error.log
---
> <IfDefine proxy>
>   ErrorLog /var/log/apache2/error_proxy.log
> </IfDefine>
> 
> <IfDefine server>
>   ErrorLog /var/log/apache2/error_server.log
> </IfDefine>
> 
219c239
< UseCanonicalName Off
---
> UseCanonicalName On


The "proxy" loads the modules
mod_cgi.so
mod_proxy_connect.so
mod_proxy_http.so
mod_proxy.so
mod_rewrite.so
mod_ssl.so
mod_suexec.so

The "server" loads the modules:
mod_cgi.so
mod_rewrite.so
mod_suexec.so

The servers listen on ports:
<IfDefine proxy>
Listen 80
Listen 443
</IfDefine>

<IfDefine server>
Listen 81
</IfDefine>

My entire /etc/apache2 configuration can be downloaded from here [I also
included my custom /etc/init.d/apache2 file (as etc-init.d-apache2)]:
<https://macrology.co.nz/files/apache2-config.tar.bz2>

The "server" starts up fine, i.e. I can locally bypass the proxy and
access it. The "proxy" fails to even start up properly. Please refer to
this strace:
<https://macrology.co.nz/files/apache2-proxy-strace.txt> (186kB)
<https://macrology.co.nz/files/apache2-proxy-strace.bz2>  (13kB)

Created using this command in the startup:
strace -f /usr/sbin/apache2ctl -D proxy -k start &> /tmp/apache2-proxy-strace

Note that even though the strace ends in...

[pid  1500] <... clone resumed> child_stack=0xbedffbd0, flags=CLONE_VM|CLONE_FS|
CLONE_FILES|CLONE_SIGHAND|SIGRT_1) = 1511
[pid  1509] rt_sigsuspend(~[ILL TRAP ABRT BUS FPE KILL SEGV USR2 PIPE STOP SYS R
TMIN 33] [tcb table full]
 <unfinished ...>
[pid  1503] <... clone resumed> child_stack=0xbf1ffbd0, flags=CLONE_VM|CLONE_FS|
CLONE_FILES|CLONE_SIGHAND|SIGRT_1) = 1512
[pid  1510] rt_sigsuspend(~[ILL TRAP ABRT BUS FPE KILL SEGV USR2 PIPE STOP SYS R
TMIN 33] [tcb table full]
 <unfinished ...>
Process 1499 detached
Process 1500 detached
Process 1498 detached
Process 1501 detached
Process 1502 detached
Process 1503 detached
Process 1504 detached
Process 1505 detached
Process 1506 detached
Process 1507 detached
Process 1508 detached
Process 1509 detached
Process 1510 detached
Process 1511 detached

...I had only started the processes, not stopped them.

If you soon download the files they're coming from the problem server
which is quickly back to 2.0.46-3.

I initially raised this issue in Debian's Apache mailing list:
http://lists.debian.org/debian-apache/2003/debian-apache-200307/msg00052.html

This response is hopefully more useful. For example it appears I had
earlier performed an strace on the wrong Apache "server".

Many thanks,
Adam



Reply to: