RE: Debugging Apache 2
Run apache with the '-X' switch. This will start it in single process mode. cheers, Steve -Original Message- From: [EMAIL PROTECTED] [SMTP:[EMAIL PROTECTED] Sent: Monday, June 02, 2003 12:20 PM To: [EMAIL PROTECTED] Subject: Debugging Apache 2 Hi all! Following situation: I need to debug a bigger apache httpd 2 module... Currently I am using Apache Httpd 2.0.44... My biggest problem is to start Apache as a single process. How can I tell apache to start only one process, because I do not know how to debug a child process (or several child processes). Thanks in advance, Josef BBCi at http://www.bbc.co.uk/ This e-mail (and any attachments) is confidential and may contain personal views which are not the views of the BBC unless specifically stated. If you have received it in error, please delete it from your system, do not use, copy or disclose the information in any way nor act in reliance on it and notify the sender immediately. Please note that the BBC monitors e-mails sent or received. Further communication will signify your consent to this.
RE: Apache 2.0.45 -alpha tarball candidates for testing
The CGI daemon still dies with a SIGSEGV on Solaris 8, worker mpm. Here's a backtrace. 7e100ae8 memset (0, 0, 504f5354202f6368, ffc0, 504f5354202f6340, 0) + 114 7c404784 get_req (9, 10020eaa0, 7810, 7808, 7770, 10020ed61) + 45c 7c40545c cgid_server (1002102a8, 10012c118, 0, 0, 0, 0) + 55c 7c405b8c cgid_init (10012c118, 100156268, 10012e128, 10015b7a8, 1001f72b0, 0) + 21c 00010006af54 ap_run_post_config (10012c118, 100156268, 10012e128, 10015b7a8, 0, 0) + b4 0001000766ec main (3, 7cf8, 7d18, 0, 0, 1) + 100c 00010004f7fc _start (0, 0, 0, 0, 0, 0) + 17c And here is a memory dump of the cgid_req_t passed to get_req (100 bytes) 0x7770: 0x0001 0x 0x 0x03c6 0x7780: 0x 0x 0x 0x 0x7790: 0x 0x 0x 0x0052 0x77a0: 0x 0x002e 0x 0x000c 0x77b0: 0x 0x0022 0x 0x 0x77c0: 0x 0x 0x0004 0x 0x77d0: 0x0001 0x00210238 0x0001 0x0020ed40 0x77e0: 0x 0x 0x0001 0x0020eaa0 0x77f0: 0x0001 0x0004 0x0004 0x0004 0x7800: 0x0001 0x002107d8 0x0001 0x0020f118 0x7810: 0x0001 0x0020f0d8 0x 0x0002 0x7820: 0x0001 0x0020ca90 0x0001 0x0015e088 0x7830: 0x0001 0x0015b7a8 0x0001 0x0020ea38 0x7840: 0x0010 0x0012 0x 0x0009 0x7850: 0x0008 0x0001 0x 0x 0x7860: 0x 0x736f 0x636b 0x 0x7870: 0x 0x 0x 0x 0x7880: 0x 0x 0x 0x 0x7890: 0x 0x 0x 0x 0x78a0: 0x 0x 0x 0x 0x78b0: 0x 0x 0x 0x 0x78c0: 0x 0x0012c118 0x0001 0x0015b7a8 0x78d0: 0x0001 0x0015b7a8 0x 0x7c50c0b8 0x78e0: 0x 0x 0x 0x7c409ff0 0x78f0: 0x 0x 0x 0x cheers, Steve -Original Message- From: William A. Rowe, Jr. [SMTP:[EMAIL PROTECTED] Sent: Monday, March 31, 2003 8:56 AM To: [EMAIL PROTECTED]; [EMAIL PROTECTED] Subject: Apache 2.0.45 -alpha tarball candidates for testing The release tarball (and win32 .zip file) are now available for testing from; http://httpd.apache.org/dev/dist/ Please test this 2.0.45-alpha candidate for general release within the next 24 hours. Once the dev@ list receives enough positive feedback, we will release the files to general availability, moving them to their usual locations. This code has been in place for several days on the primary www.apache.org server, but we need a variety of platforms and different configurations to have complete confidence in the release. Thank you in advance for participating in the testing, and thanks to both Brian Pane and Justin Erenkrantz who helped roll these out. Bill BBCi at http://www.bbc.co.uk/ This e-mail (and any attachments) is confidential and may contain personal views which are not the views of the BBC unless specifically stated. If you have received it in error, please delete it from your system, do not use, copy or disclose the information in any way nor act in reliance on it and notify the sender immediately. Please note that the BBC monitors e-mails sent or received. Further communication will signify your consent to this.
RE: CGI's failing with WROWE_2_0_45_RC1 on Solaris 8 w/ worker mpm
Here is a dump of the cgi_req_t (64-bit Solaris):- 0x7770: 0x0001 0x 0x 0x04d1 0x7780: 0x 0x 0x 0x 0x7790: 0x 0x 0x 0x0051 0x77a0: 0x 0x002d 0x 0x000b 0x77b0: 0x 0x0021 0x 0x 0x77c0: 0x 0x 0x0004 0x 0x77d0: 0x0001 0x002103f0 0x0001 0x0020eef0 0x77e0: 0x 0x 0x0001 0x0020ec50 0x77f0: 0x0001 0x0004 0x0004 0x0004 0x7800: 0x0001 0x00210990 0x0001 0x0020f2c8 0x7810: 0x0001 0x0020f288 0x 0x0002 0x7820: 0x0001 0x0020cc40 0x0001 0x0015e238 0x7830: 0x0001 0x0015b958 0x0001 0x0020ebe8 0x7840: 0x0010 0x0012 0x 0x0009 0x7850: 0x0008 0x0001 0x 0x 0x7860: 0x 0x736f 0x636b 0x 0x7870: 0x 0x 0x 0x 0x7880: 0x 0x 0x 0x 0x7890: 0x 0x 0x 0x 0x78a0: 0x 0x 0x 0x 0x78b0: 0x 0x 0x 0x 0x78c0: 0x 0x0012c2c8 0x0001 0x0015b958 0x78d0: 0x0001 0x0015b958 0x 0x7c50c0b8 0x78e0: 0x 0x 0x 0x7c409fe8 0x78f0: 0x 0x 0x 0x Hope this helps... cheers, Steve -Original Message- From: Jeff Trawick [SMTP:[EMAIL PROTECTED] Sent: Wednesday, March 26, 2003 1:20 PM To: [EMAIL PROTECTED] Subject: Re: CGI's failing with WROWE_2_0_45_RC1 on Solaris 8 w/ worker mp m Steve Sabljak wrote: Here is the backtrace from the cgi daemon's core:- core 'core.httpd.10133.u60001' of 10133: /usr/local/apache2/bin/httpd -f /etc/httpd2.conf 7e100ae8 memset (0, 0, 474554202f63676a, ffc0, 474554202f636740, 0) + 114 7c404784 get_req (9, 10020ec50, 7810, 7808, 7770, 10020ef11) + 45c get_req() doesn't call memset() directly except in the expansion of the apr_pcalloc() macro. With 0 for the first parm to memset(), it would seem that apr_palloc() returns 0 (i.e., it fails due to out-of-storage condition) which then results in memset() puking. But look at the 3rd parm to memset(), which is huge. I guess some field in cgi_req_t that controls one of the storage allocation requests is bogus, and thus the apr_palloc() returns 0 because it was told to get a bogus amount of storage. Can you dump out the storage of the 5th parm to get_req()? I guess that is 0x7770. On a 32-bit Linux build, cgi_req_t is 64 bytes. Try dumping out 100 bytes just to be safe. The next step would be to guess what happens in the cgid handler to cause something bogus to be in the cgid_req_t. Hopefully knowing what is bogus would yield a theory. BBCi at http://www.bbc.co.uk/ This e-mail (and any attachments) is confidential and may contain personal views which are not the views of the BBC unless specifically stated. If you have received it in error, please delete it from your system, do not use, copy or disclose the information in any way nor act in reliance on it and notify the sender immediately. Please note that the BBC monitors e-mails sent or received. Further communication will signify your consent to this.
Scalability of mod_cgid
Currently with apache 2.0.43 (64 bit, Solaris 8, worker mpm), under high load, we're seeing lots of connection refused to the cgi daemon in the error log. Am I right in saying mod_cgid forks new processes as they're required? Would a pre-forking cgi daemon be worth implementing? cheers, Steve BBCi at http://www.bbc.co.uk/ This e-mail (and any attachments) is confidential and may contain personal views which are not the views of the BBC unless specifically stated. If you have received it in error, please delete it from your system, do not use, copy or disclose the information in any way nor act in reliance on it and notify the sender immediately. Please note that the BBC monitors e-mails sent or received. Further communication will signify your consent to this.
RE: Scalability of mod_cgid
Hi Ian, I'm aware of fastcgi and mod_{php,perl}. We currently run some pure cgis with apache 1.3.27 under high load and have found apache 2.0.43's pure cgi serving ability not able to match apache 1's under the same load. Over time we will be moving the last few remaining pure cgi's to mod_perl. -Steve -Original Message- From: Ian Holsman [SMTP:[EMAIL PROTECTED] Sent: Thursday, March 27, 2003 2:12 PM To: [EMAIL PROTECTED] Subject: Re: Scalability of mod_cgid Steve Sabljak wrote: Currently with apache 2.0.43 (64 bit, Solaris 8, worker mpm), under high load, we're seeing lots of connection refused to the cgi daemon in the error log. Am I right in saying mod_cgid forks new processes as they're required? Would a pre-forking cgi daemon be worth implementing? Hi Steve, you may want to look at fastcgi, or perhaps even a embeded option like php or mod_perl, instead of using pure cgi for high load applications. BBCi at http://www.bbc.co.uk/ This e-mail (and any attachments) is confidential and may contain personal views which are not the views of the BBC unless specifically stated. If you have received it in error, please delete it from your system, do not use, copy or disclose the information in any way nor act in reliance on it and notify the sender immediately. Please note that the BBC monitors e-mails sent or received. Further communication will signify your consent to this.
RE: daedus is running httpd-2.0.45-dev
It looks fine at first, then the CGI daemon starts having trouble. Is doesn't recover. The error log reports:- (3)No such process: cgid daemon is gone; is Apache terminating?: /path/to/cgi cheers, Steve -Original Message- From: Greg Ames [SMTP:[EMAIL PROTECTED] Sent: Tuesday, March 25, 2003 10:14 PM To: httpd Cc: [EMAIL PROTECTED]; infrastructure Subject: daedus is running httpd-2.0.45-dev ...since Tuesday, 25-Mar-2003 13:56:10 PST. It looks fine so far. Please let us know if you notice anything odd. This is the WROWE_2_0_45_RC1 tag from yesterday with a patch to buildconf. Greg BBCi at http://www.bbc.co.uk/ This e-mail (and any attachments) is confidential and may contain personal views which are not the views of the BBC unless specifically stated. If you have received it in error, please delete it from your system, do not use, copy or disclose the information in any way nor act in reliance on it and notify the sender immediately. Please note that the BBC monitors e-mails sent or received. Further communication will signify your consent to this.
RE: daedus is running httpd-2.0.45-dev
Forgot to mention running with worker mpm on Solaris 8. -Steve -Original Message- From: Steve Sabljak Sent: Wednesday, March 26, 2003 10:24 AM To: '[EMAIL PROTECTED]' Subject: RE: daedus is running httpd-2.0.45-dev It looks fine at first, then the CGI daemon starts having trouble. Is doesn't recover. The error log reports:- (3)No such process: cgid daemon is gone; is Apache terminating?: /path/to/cgi cheers, Steve -Original Message- From: Greg Ames [SMTP:[EMAIL PROTECTED] Sent: Tuesday, March 25, 2003 10:14 PM To: httpd Cc: [EMAIL PROTECTED]; infrastructure Subject:daedus is running httpd-2.0.45-dev ...since Tuesday, 25-Mar-2003 13:56:10 PST. It looks fine so far. Please let us know if you notice anything odd. This is the WROWE_2_0_45_RC1 tag from yesterday with a patch to buildconf. Greg BBCi at http://www.bbc.co.uk/ This e-mail (and any attachments) is confidential and may contain personal views which are not the views of the BBC unless specifically stated. If you have received it in error, please delete it from your system, do not use, copy or disclose the information in any way nor act in reliance on it and notify the sender immediately. Please note that the BBC monitors e-mails sent or received. Further communication will signify your consent to this. BBCi at http://www.bbc.co.uk/ This e-mail (and any attachments) is confidential and may contain personal views which are not the views of the BBC unless specifically stated. If you have received it in error, please delete it from your system, do not use, copy or disclose the information in any way nor act in reliance on it and notify the sender immediately. Please note that the BBC monitors e-mails sent or received. Further communication will signify your consent to this.
CGI's failing with WROWE_2_0_45_RC1 on Solaris 8 w/ worker mpm
The CGI daemon fails and does not recover with WROWE_2_0_45_RC1 on Solaris 8 running with the worker mpm. Error log reports:- (3)No such process: cgid daemon is gone; is Apache terminating?: /path/to/cgi cheers, Steve BBCi at http://www.bbc.co.uk/ This e-mail (and any attachments) is confidential and may contain personal views which are not the views of the BBC unless specifically stated. If you have received it in error, please delete it from your system, do not use, copy or disclose the information in any way nor act in reliance on it and notify the sender immediately. Please note that the BBC monitors e-mails sent or received. Further communication will signify your consent to this.
RE: CGI's failing with WROWE_2_0_45_RC1 on Solaris 8 w/ worker mpm
Here is the backtrace from the cgi daemon's core:- core 'core.httpd.10133.u60001' of 10133:/usr/local/apache2/bin/httpd -f /etc/httpd2.conf 7e100ae8 memset (0, 0, 474554202f63676a, ffc0, 474554202f636740, 0) + 114 7c404784 get_req (9, 10020ec50, 7810, 7808, 7770, 10020ef11) + 45c 7c40545c cgid_server (100210460, 10012c2c8, 0, 0, 0, 0) + 55c 7c405b84 cgid_init (10012c2c8, 100156418, 10012e2d8, 10015b958, 1001f7460, 0) + 21c 00010006af54 ap_run_post_config (10012c2c8, 100156418, 10012e2d8, 10015b958, 0, 0) + b4 0001000766ec main (3, 7cf8, 7d18, 0, 0, 1) + 100c 00010004f7fc _start (0, 0, 0, 0, 0, 0) + 17c -Steve -Original Message- From: Steve Sabljak Sent: Wednesday, March 26, 2003 10:41 AM To: [EMAIL PROTECTED] Subject: CGI's failing with WROWE_2_0_45_RC1 on Solaris 8 w/ worker mpm The CGI daemon fails and does not recover with WROWE_2_0_45_RC1 on Solaris 8 running with the worker mpm. Error log reports:- (3)No such process: cgid daemon is gone; is Apache terminating?: /path/to/cgi cheers, Steve BBCi at http://www.bbc.co.uk/ This e-mail (and any attachments) is confidential and may contain personal views which are not the views of the BBC unless specifically stated. If you have received it in error, please delete it from your system, do not use, copy or disclose the information in any way nor act in reliance on it and notify the sender immediately. Please note that the BBC monitors e-mails sent or received. Further communication will signify your consent to this. BBCi at http://www.bbc.co.uk/ This e-mail (and any attachments) is confidential and may contain personal views which are not the views of the BBC unless specifically stated. If you have received it in error, please delete it from your system, do not use, copy or disclose the information in any way nor act in reliance on it and notify the sender immediately. Please note that the BBC monitors e-mails sent or received. Further communication will signify your consent to this.
RE: ap2 , parent process in worker mpm dies under load
The problem also occurs in 32-bit mode. Here are the backtraces from pstack and dbx. -- core.httpd.25359.u0 (pstack) -- core '/var/core/core.httpd.25359.u0' of 25359: /usr/local/apache2/bin/httpd -f /etc/httpd2.conF - lwp# 1 / thread# 1 00060408 server_main_loop (0, 6c8, 7, 0, 119af0, df6a0) + 338 000609d8 ap_mpm_run (117d00, 141da8, 119af0, 119af0, 0, 0) + 580 0006f1c0 main (3, ffbefd6c, ffbefd7c, fd000, 0, 0) + e98 00048d88 _start (0, 0, 0, 0, 0, 0) + 108 - lwp# 2 / thread# 2 fefced24 sigaddset (ff0eb1c0, a, 0, 0, 0, 0) + 4c ff0be9b4 _sigredirect (a, ff0def98, 3, ff0e5930, ff0e5948, ff01f7b4) + 34 ff0bee80 _dynamiclwps (ff0de000, ff3d19b4, ff3a0dd8, ff3e66c0, ff29e381, 0) + 148 ff0c2030 thr_yield (0, 0, 0, 0, 0, 0) + 8c - lwp# 4 ff0c9774 private___lwp_cond_wait (4, ff0ded9c, ff0de000, 0, 0, ff01f7b4) + 8 ff0c6bc4 _sc_door_func (, ff0df688, ff0df6a0, 3, ff0de000, 1) + 74 ff0ba740 _lwp_start (fef65d70, 0, 6000, ffbef98c, 0, 0) + 18 ff0c2030 thr_yield (0, 0, 0, 0, 0, 0) + 8c -- thread# 3 ff0bddbc _reap_wait (ff0e29e0, 20520, 0, ff0de000, 0, 0) + 38 ff0bdb14 _reaper (ff0dee30, ff0e4740, ff0e29e0, ff0dee08, 1, fe40) + 38 ff0cb728 _thread_start (0, 0, 0, 0, 0, 0) + 40 -- core.httpd.25359.u0 (pstack) -- -- core.httpd.25359.u0 (dbx) -- [EMAIL PROTECTED] ([EMAIL PROTECTED]) terminated by signal BUS (invalid address alignment) Current function is server_main_loop 1645 perform_idle_server_maintenance(); (/tool/lang9.1/SUNWspro/bin/../WS6U2/bin/sparcv9/dbx) where current thread: [EMAIL PROTECTED] =[1] server_main_loop(remaining_children_to_start = 0), line 1645 in worker.c [2] ap_mpm_run(_pconf = 0x117d00, plog = 0x141da8, s = 0x119af0), line 1745 in worker.c [3] main(argc = 3, argv = 0xffbefd6c), line 644 in main.c -- core.httpd.25359.u0 (dbx) -- -- core.httpd.8656.u0 (pstack) -- core '/var/core/core.httpd.8656.u0' of 8656: /usr/local/apache2/bin/httpd -f /etc/httpd2.conf - lwp# 1 / thread# 1 ff2b8974 apr_proc_wait_all_procs (31, 45, 49, 1, 117d00, df46c) + 44 0007be2c ap_wait_or_timeout (49, 45, 31, 117d00, 0, 0) + ac 0006015c server_main_loop (0, 6c8, 7, 0, 119af0, df6a0) + 8c - lwp# 2 / thread# 2 fefced24 sigaddset (ff0eb1c0, a, 0, 0, 0, 0) + 4c ff0be9b4 _sigredirect (a, ff0def98, 3, ff0e5930, ff0e5948, ff01f7b4) + 34 ff0bee80 _dynamiclwps (ff0de000, ff3d19b4, ff3a0dd8, ff3e66c0, ff29e381, 0) + 148 ff0c2030 thr_yield (0, 0, 0, 0, 0, 0) + 8c - lwp# 4 ff0c9774 private___lwp_cond_wait (4, ff0ded9c, ff0de000, 0, 0, ff01f7b4) + 8 ff0c6bc4 _sc_door_func (, ff0df688, ff0df6a0, 3, ff0de000, 1) + 74 ff0ba740 _lwp_start (fef65d70, 0, 6000, ffbef9e4, 0, 0) + 18 ff0c2030 thr_yield (0, 0, 0, 0, 0, 0) + 8c -- thread# 3 ff0bddbc _reap_wait (ff0e29e0, 20520, 0, ff0de000, 0, 0) + 38 ff0bdb14 _reaper (ff0dee30, ff0e4740, ff0e29e0, ff0dee08, 1, fe40) + 38 ff0cb728 _thread_start (0, 0, 0, 0, 0, 0) + 40 -- core.httpd.8656.u0 (pstack) -- -- core.httpd.8656.u0 (dbx) -- [EMAIL PROTECTED] ([EMAIL PROTECTED]) terminated by signal BUS (invalid address alignment) 0xff2b8974: bad address 0xff2b8974 Current function is ap_wait_or_timeout 223 if (APR_STATUS_IS_EINTR(rv)) { (/tool/lang9.1/SUNWspro/bin/../WS6U2/bin/sparcv9/dbx) where current thread: [EMAIL PROTECTED] [1] 0xff2b8974(0x31, 0x45, 0x49, 0x1, 0x117d00, 0xdf46c), at 0xff2b8973 =[2] ap_wait_or_timeout(status = 0x49, exitcode = 0x45, ret = 0x31, p = 0x117d00), line 223 in mpm_common.c dbx: warning: invalid frame pointer -- core.httpd.8656.u0 (dbx) -- Regards, Steve -- Steve Sabljak | BBC Technology - Internet Operations Tel: +44 (0) 1628 407708 | Maiden House, Vanwell Road URL: http://support.bbc.co.uk | Maidenhead, SL6 4UB -Original Message- From: Jeff Trawick [SMTP:[EMAIL PROTECTED] Sent: Monday, March 03, 2003 2:04 PM To: [EMAIL PROTECTED] Subject: Re: ap2 , parent process in worker mpm dies under load Andre Breiler wrote: Hi, On Sun, 2 Mar 2003, Jeff Trawick wrote: Andre Breiler wrote: the ap2 (2.0.43) parent process dies (but childs arn't) under load. This is with worker mpm on solaris 8 (multiprocessor). ... --- snip 1 --- program terminated by signal BUS (Bus Error) 0x7ee2c880: Current function is ap_wait_or_timeout 222 rv = apr_proc_wait_all_procs(ret, exitcode, status, APR_NOWAIT, p); (/tool/lang9.1/SUNWspro/bin/../WS6U2/bin/sparcv9/dbx) where [1] 0x7ee2c880(0x080e, 0x0836, 0x083a, 0x1, 0x100133e58, 0x0), at 0x7ee2c87f =[2] ap_wait_or_timeout