[mp2+Win32] Frustration over Apache 2.0/ 2.2 restart failure
Hi all, I am rather disappointed (and a little frustrated as well) on modperl's inability to survive an Apache restart on the Windows platform. The platform combo tested are Windows 2003 + Apache 2.2 (and Apache 2.0) + modperl2 + libapreq2 I have come to accept the fact that once in a while modperl on Win32 will segfault, but the old Apache I tried (year 2005 iirc) seems to recover, though it threw a windows fault dialog that scared the wits out of my clients. But this time it's just unacceptable. The odd thing is, if you try to start apache after it failed, it will fail again. You have to wait about a minute (or more) before starting the server. I don't mind any creative workarounds. Please share with me any suggestions or tips that can circumvent this. Thanks much.
Re: [mp2+Win32] Frustration over Apache 2.0/ 2.2 restart failure
Hi all, A little more tests reveal the following: If Apache was not installed in the default location (c:\program files\apache foundation\apache2.2) and instead installed into a path that does not have spaces (eg. c:\Apache2.2), while restarting will still fail, you can manually start the service again much faster; almost immediately after it stops. It is possible to write a monitoring windows service to start the apache service if it detects that it has stopped, but it's not quite the elegent solution that people want to hear about. So while it's better, it's still not good enough. Apache must still be able to perform a restart on its own. Any suggestions? Foo JH wrote: Hi all, I am rather disappointed (and a little frustrated as well) on modperl's inability to survive an Apache restart on the Windows platform. The platform combo tested are Windows 2003 + Apache 2.2 (and Apache 2.0) + modperl2 + libapreq2 I have come to accept the fact that once in a while modperl on Win32 will segfault, but the old Apache I tried (year 2005 iirc) seems to recover, though it threw a windows fault dialog that scared the wits out of my clients. But this time it's just unacceptable. The odd thing is, if you try to start apache after it failed, it will fail again. You have to wait about a minute (or more) before starting the server. I don't mind any creative workarounds. Please share with me any suggestions or tips that can circumvent this. Thanks much.
Re: [mp2+Win32] Frustration over Apache 2.0/ 2.2 restart failure
On Fri, 10 Aug 2007, Foo JH wrote: Hi all, A little more tests reveal the following: If Apache was not installed in the default location (c:\program files\apache foundation\apache2.2) and instead installed into a path that does not have spaces (eg. c:\Apache2.2), while restarting will still fail, you can manually start the service again much faster; almost immediately after it stops. It is possible to write a monitoring windows service to start the apache service if it detects that it has stopped, but it's not quite the elegent solution that people want to hear about. So while it's better, it's still not good enough. Apache must still be able to perform a restart on its own. Any suggestions? Someone told me privately that using Apache/2.2.4 (the latest version) helps with this problem. -- best regards, Randy Kobes
SV: [mp2+Win32] Frustration over Apache 2.0/ 2.2 restart failure
Hi Foo I finally gave up on Apahce/modperl2 on win32 in various version combinations. I kept hoping that newer versions of apache/modperl would stabilize it but rather it seemed to get worse. Daily apache/modperl would fail and modperl would restart maybe 10 time within a few minutes before finally working again. Only because I have a load balancer in front of several web servers have I been able to keep going. Anyway, now I have moved to Linux a week ago, and so fare I haven't experienced any problems (except having to tweak different parameters). So I cross my fingers and hope it will stay this way. Not much of help for you I know, but I remember we have talked about this before Regards Henrik Schak Hansen -Oprindelig meddelelse- Fra: Foo JH [mailto:[EMAIL PROTECTED] Sendt: 10. august 2007 10:10 Til: modperl@perl.apache.org Emne: [mp2+Win32] Frustration over Apache 2.0/ 2.2 restart failure Hi all, I am rather disappointed (and a little frustrated as well) on modperl's inability to survive an Apache restart on the Windows platform. The platform combo tested are Windows 2003 + Apache 2.2 (and Apache 2.0) + modperl2 + libapreq2 I have come to accept the fact that once in a while modperl on Win32 will segfault, but the old Apache I tried (year 2005 iirc) seems to recover, though it threw a windows fault dialog that scared the wits out of my clients. But this time it's just unacceptable. The odd thing is, if you try to start apache after it failed, it will fail again. You have to wait about a minute (or more) before starting the server. I don't mind any creative workarounds. Please share with me any suggestions or tips that can circumvent this. Thanks much. --- [Denne E-mail blev scannet for virus af Declude Virus] [This E-mail was scanned for viruses by Declude Virus]
Re: [mp2+Win32] Frustration over Apache 2.0/ 2.2 restart failure
Foo JH wrote: > Hi all, > > I am rather disappointed (and a little frustrated as well) on modperl's > inability to survive an Apache restart on the Windows platform. The > platform combo tested are Windows 2003 + Apache 2.2 (and Apache 2.0) + > modperl2 + libapreq2 Foo - I'm honesty clueless. I've seen no issues. Issues with running very crufty perl or php over time, but not restart issues. This probably has nothing to do with either Apache, Perl or mod_perl. It's most likely DB clients or something you've instantiated that is still running/shutting down for that minute you observed. If you crank down your loglevel to debug, can you determine anything more about your particular situation?
Re: SV: [mp2+Win32] Frustration over Apache 2.0/ 2.2 restart failure
Hello Henrik, Yes we have conversed earlier and shared the pain on this same point. My FreeBSD installations were relatively painless in comparison to the Win32 counterparts. The sad truth is that my clients are more comfortable with Windows OS, and I have to support our products on this platform. It's either I get modperl to work, or we have a product overhaul to move over to .NET (which I hope will not happen). It's quite strange that nobody else has this problem. It's definately a critical operational concern. I am starting to suspect that Perl/ modperl is quietly exclusive to the non-Windows world. I hope someone in this community can prove me wrong... Henrik Schak Hansen wrote: Hi Foo I finally gave up on Apahce/modperl2 on win32 in various version combinations. I kept hoping that newer versions of apache/modperl would stabilize it but rather it seemed to get worse. Daily apache/modperl would fail and modperl would restart maybe 10 time within a few minutes before finally working again. Only because I have a load balancer in front of several web servers have I been able to keep going. Anyway, now I have moved to Linux a week ago, and so fare I haven't experienced any problems (except having to tweak different parameters). So I cross my fingers and hope it will stay this way. Not much of help for you I know, but I remember we have talked about this before Regards Henrik Schak Hansen -Oprindelig meddelelse- Fra: Foo JH [mailto:[EMAIL PROTECTED] Sendt: 10. august 2007 10:10 Til: modperl@perl.apache.org Emne: [mp2+Win32] Frustration over Apache 2.0/ 2.2 restart failure Hi all, I am rather disappointed (and a little frustrated as well) on modperl's inability to survive an Apache restart on the Windows platform. The platform combo tested are Windows 2003 + Apache 2.2 (and Apache 2.0) + modperl2 + libapreq2 I have come to accept the fact that once in a while modperl on Win32 will segfault, but the old Apache I tried (year 2005 iirc) seems to recover, though it threw a windows fault dialog that scared the wits out of my clients. But this time it's just unacceptable. The odd thing is, if you try to start apache after it failed, it will fail again. You have to wait about a minute (or more) before starting the server. I don't mind any creative workarounds. Please share with me any suggestions or tips that can circumvent this. Thanks much. --- [Denne E-mail blev scannet for virus af Declude Virus] [This E-mail was scanned for viruses by Declude Virus]
Re: SV: [mp2+Win32] Frustration over Apache 2.0/ 2.2 restart failure
On 8/10/07, Foo JH <[EMAIL PROTECTED]> wrote: > The sad truth is that my clients are more comfortable with Windows OS Is it possible that if they have a small enough site to run comfortably on Windows, they can run it through CGI? I suspect that whatever issue you're having with mod_perl could be fixed, but it seems pointless to fight with it if the site has low traffic and can run as CGI. - Perrin
Re: SV: [mp2+Win32] Frustration over Apache 2.0/ 2.2 restart failure
Hello Perrin, William Unfortunately I'm packaging a product based on modperl, so I can't really take any shortcuts on this one. William, my installation process is (what I hope to be) straight out of the book. To elaborate: 1. Install ActiveState Perl MSI 5.8.8 (build 822) 2. Install Apache2.2.4 MSI 3. Install modperl as per documentation on httpd.apache.org. Ie: perl install http://theoryx5.uwinnipeg.ca/ppms/mod_perl.ppd 4. Install libapreq from theoryx5 In my http.conf, I only added the following: LoadFile c:/Perl/bin/perl58.dll LoadModule perl_module modules/mod_perl.so LoadFile bin/libapreq2.dll LoadModule apreq_module modules/mod_apreq2.so Apache/ modperl starts up fine, but if I try to restart the service, it will not survive. Please share with me any tips to improve the situation. I'm open to any ideas. Thanks. Perrin Harkins wrote: On 8/10/07, Foo JH <[EMAIL PROTECTED]> wrote: The sad truth is that my clients are more comfortable with Windows OS Is it possible that if they have a small enough site to run comfortably on Windows, they can run it through CGI? I suspect that whatever issue you're having with mod_perl could be fixed, but it seems pointless to fight with it if the site has low traffic and can run as CGI. - Perrin
Re: SV: [mp2+Win32] Frustration over Apache 2.0/ 2.2 restart failure
> Apache/ modperl starts up fine, but if I try to restart the service, it > will not survive. > > Please share with me any tips to improve the situation. I'm open to any > ideas. Foo, you missed my point all together. Something in YOUR PERL APP is opening resources that are "locked" and will prevent another process from obtaining them for approx 60 seconds. What, why and how are your puzzles, I'm afraid. There's nothing in the "generic" apache/perl/modperl that did this to you. More debugging logs, finer debugging details might help you pin it down.
Re: SV: [mp2+Win32] Frustration over Apache 2.0/ 2.2 restart failure
William, the point I was trying to make is: 1. My restart test scope merely loads modperl + libapreq. There is ZERO application code loaded. In other words, all I did after installing modperl + libapreq is to ONLY load them into httpd.conf: LoadFile c:/Perl/bin/perl58.dll LoadModule perl_module modules/mod_perl.so LoadFile bin/libapreq2.dll LoadModule apreq_module modules/mod_apreq2.so Noticed there is no other code loaded. No database used. Super duper minimal test model. 2. When you said that you managed to get modperl to survive an apache restart on a Win32 OS, I'm really keen to understand how you have done it differently. Is it because you are not using libapreq? Or is the default installation settings not optimal? Foo, you missed my point all together. Something in YOUR PERL APP is opening resources that are "locked" and will prevent another process from obtaining them for approx 60 seconds. What, why and how are your puzzles, I'm afraid. There's nothing in the "generic" apache/perl/modperl that did this to you. More debugging logs, finer debugging details might help you pin it down.
Re: SV: [mp2+Win32] Frustration over Apache 2.0/ 2.2 restart failure
On Sun, 12 Aug 2007, Foo JH wrote: William, the point I was trying to make is: 1. My restart test scope merely loads modperl + libapreq. There is ZERO application code loaded. In other words, all I did after installing modperl + libapreq is to ONLY load them into httpd.conf: LoadFile c:/Perl/bin/perl58.dll LoadModule perl_module modules/mod_perl.so LoadFile bin/libapreq2.dll LoadModule apreq_module modules/mod_apreq2.so Noticed there is no other code loaded. No database used. Super duper minimal test model. I can confirm the above happens, and without libapreq2. My platform is Apache/2.2.4 (Win32) mod_perl/2.0.4-dev Perl/v5.8.8 Win XP Just loading mod_perl through LoadModule perl_module modules/mod_perl.so without any other perl modules loading results, upon a restart, [Mon Aug 13 06:26:27 2007] [notice] Apache/2.2.4 (Win32) mod_perl/2.0.4-dev Perl/v5.8.8 configured -- resuming normal operations [Mon Aug 13 06:26:27 2007] [notice] Server built: Jan 9 2007 23:17:20 [Mon Aug 13 06:26:27 2007] [notice] Parent: Created child process 1888 [Mon Aug 13 06:26:27 2007] [notice] Child 1888: Child process is running [Mon Aug 13 06:26:27 2007] [notice] Child 1888: Acquired the start mutex. [Mon Aug 13 06:26:27 2007] [notice] Child 1888: Starting 250 worker threads. [Mon Aug 13 06:26:27 2007] [notice] Child 1888: Starting thread to listen on port 80. [Mon Aug 13 06:26:42 2007] [notice] Parent: Received restart signal -- Restarting the server. [Mon Aug 13 06:26:42 2007] [notice] Child 1888: Exit event signaled. Child process is ending. [Mon Aug 13 06:26:42 2007] [notice] Apache/2.2.4 (Win32) mod_perl/2.0.4-dev Perl/v5.8.8 configured -- resuming normal operations [Mon Aug 13 06:26:42 2007] [notice] Server built: Jan 9 2007 23:17:20 [Mon Aug 13 06:26:42 2007] [crit] (70008)Partial results are valid but processing is incomplete: Parent: Failed to create the child process. [Mon Aug 13 06:26:42 2007] [crit] (OS 6)The handle is invalid. : master_main: create child process failed. Exiting. [Mon Aug 13 06:26:43 2007] [notice] Child 1888: Released the start mutex [Mon Aug 13 06:26:44 2007] [notice] Child 1888: Waiting for 250 worker threads to exit. [Mon Aug 13 06:26:44 2007] [notice] Child 1888: All worker threads have exited. [Mon Aug 13 06:26:44 2007] [notice] Child 1888: Child process is exiting [Mon Aug 13 06:27:12 2007] [notice] Parent: Forcing termination of child process 36 A stop/start works fine, as does a restart without loading mod_perl. As Foo noted in a later message, the win32 binaries from http://www.apachelounge.com/download/ don't seem to suffer this problem. However, this is built with VC++ 2005 (VC 8), and as such, there may be problems running it with ActivePerl and/or perl modules compiled for ActivePerl (eg, installed through ppm), which use VC++ 6 to build. -- best regards, Randy Kobes