Strange continous SEVERE error after upgrading to APR 1.3, Critical poller failure, Timer expired
Hi, After we upgraded APR from 1.2.8 to 1.3.0 we get a strange error in tomcat's catalina.out that we have never seen before: Jun 24, 2008 11:42:09 AM org.apache.tomcat.util.net.AprEndpoint$Poller run SEVERE: Critical poller failure (restarting poller): [62] Timer expired This is repeated over and over, at approximately 5-10 times per second. If we switch back to APR 1.2.8, and not touching anything else, then this error message goes away. We use Tomcat 5.5.23 on Solaris 10 (Sun X2200 and X2100). We have tried with APR 1.3.2 and the result was the same as for 1.3.0. As far as I can tell, a regular poll time out should not result in this error, but still I tried increasing the pollTime from the default 2000 (2ms) to 2 (20ms) for the connectors in server.xml (http://tomcat.apache.org/tomcat-5.5-doc/apr.html) but that didn't change anything. I have investigated the tomcat process using the truss command (like strace I guess, but for solaris) right from the tomcat startup, and this is the first 3000 lines of the output: http://pastebin.com/f60671b83 If you search for ETIME (the name of the error message Timer expired) you can see that the first occurence (at line 2545)is at about 1 second after startup (so it seems that it is not triggered by a request). The thread in questions is thread number 6. Here is the truss log file for the first 20 minutes or so, filtered to only include the thread 6: http://pastebin.com/f3fd14e2c There were also other threads that experienced this Err#62 ETIME, but thread number 6 seems to be the one with the most number of these errors. Also, when restarting tomcat it is always the thread number 6 that has the this error first and has the most number of occurences of it. Does the message Critical poller failure (restarting poller): [62] Timer expired or the truss log output tell you guys anything about what can be wrong? Could it be a bug? Is there something wrong with our web application? The thing is that we haven't noticed anything wrong with it so far, besides these annoying error messages in catalina.out. Regards /Jimi mogul | jimi hullegård | system developer | hudiksvallsgatan 4, 113 30 stockholm sweden | +46 8 506 66 172 | +46 765 27 19 55 | [EMAIL PROTECTED] | www.mogul.com
Re: Help with apr and apr-util
Steve Comstock wrote: Why wasnt apr-1.3.2 included in the httpd-2.2.9 tarball, I guess is what I'm asking. Because when httpd v2.2.9 was released, apr v1.3.2 didn't exist. Until httpd v2.2.10 is released against the newer version of apr, simply replace the bundled version of apr with the newer one containing the fixes you need. Regards, Graham -- smime.p7s Description: S/MIME Cryptographic Signature
Re: Additions to the Projects page
Hello. Something for http://apr.apache.org/projects.html I was looking in our repository by inspecting build requires. Here's the softwares that was using apr_memcache but now instead uses memcache from apr-util 1.3.x: http://www.outoforder.cc/projects/apache/mod_auth_xradius/ http://code.google.com/p/modmemcache/ http://code.google.com/p/modmemcachecache/ http://www.outoforder.cc/projects/apache/mod_gnutls/ http://en.opensuse.org/Build_Service/Redirector (mod_zrkadlo) Here's the ones that are using apr: http://www.kdevelop.org/ http://www.kde.org (kdevplatform4) http://kdesvn.alwins-world.de/ http://pysvn.tigris.org http://subversion.tigris.org/ (svn-javahl) http://search.cpan.org/dist/perl-Apache-SSLLookup/ http://www.compiz-fusion.org/ (emerald) http://anjuta.sourceforge.net/ http://cachem.sourceforge.net/ http://ws.apache.org/axis2/c/ http://apr.apache.org/ (tomcat-native) Here's the ones that are using apr-util: http://www.kde.org (kdevplatform4) http://subversion.tigris.org/ (svn-javahl) http://secondlife.com/ http://www.kdevelop.org/ http://www.compiz-fusion.org/ (emerald) http://anjuta.sourceforge.net/ -- Regards // Oden Eriksson
Re: Additions to the Projects page
- Original Message - From: Philip M. Gollucci [EMAIL PROTECTED] To: Bojan Smojver [EMAIL PROTECTED] Cc: Philip M. Gollucci [EMAIL PROTECTED]; dev@apr.apache.org Sent: Wednesday, June 25, 2008 12:24 AM Subject: Re: Additions to the Projects page Bojan Smojver wrote: On Tue, 2008-06-24 at 11:16 -0400, Philip M. Gollucci wrote: This list is based on FreeBSD ports tree, and my previous employer (Ticketmaster). I'm pretty sure open source folks won't mind being linked from this APR page, but are Ticketmaster OK with it? I can ask, I see no reason why not, its not like its a secret they use ASF software. -- Philip M. Gollucci ([EMAIL PROTECTED]) o:703.549.2050x206 Senior System Admin - Riderway, Inc. http://riderway.com / http://ridecharge.com 1024D/DB9B8C1C B90B FBC3 A3A1 C71A 8E70 3F8C 75B8 8FFB DB9B 8C1C Work like you don't need the money, love like you'll never get hurt, and dance like nobody's watching. -- No virus found in this incoming message. Checked by AVG. Version: 7.5.524 / Virus Database: 270.4.1/1516 - Release Date: 24/6/2008 07:53
Re: Additions to the Projects page
- Original Message - From: Bojan Smojver [EMAIL PROTECTED] To: Philip M. Gollucci [EMAIL PROTECTED] Cc: Philip M. Gollucci [EMAIL PROTECTED]; dev@apr.apache.org Sent: Wednesday, June 25, 2008 12:40 AM Subject: Re: Additions to the Projects page On Tue, 2008-06-24 at 23:24 -0400, Philip M. Gollucci wrote: I can ask, I see no reason why not, its not like its a secret they use ASF software. That would be great, thanks. -- Bojan -- No virus found in this incoming message. Checked by AVG. Version: 7.5.524 / Virus Database: 270.4.1/1516 - Release Date: 24/6/2008 07:53
Re: Additions to the Projects page
- Original Message - From: Oden Eriksson [EMAIL PROTECTED] To: dev@apr.apache.org Sent: Wednesday, June 25, 2008 7:53 AM Subject: Re: Additions to the Projects page Hello. Something for http://apr.apache.org/projects.html I was looking in our repository by inspecting build requires. Here's the softwares that was using apr_memcache but now instead uses memcache from apr-util 1.3.x: http://www.outoforder.cc/projects/apache/mod_auth_xradius/ http://code.google.com/p/modmemcache/ http://code.google.com/p/modmemcachecache/ http://www.outoforder.cc/projects/apache/mod_gnutls/ http://en.opensuse.org/Build_Service/Redirector (mod_zrkadlo) Here's the ones that are using apr: http://www.kdevelop.org/ http://www.kde.org (kdevplatform4) http://kdesvn.alwins-world.de/ http://pysvn.tigris.org http://subversion.tigris.org/ (svn-javahl) http://search.cpan.org/dist/perl-Apache-SSLLookup/ http://www.compiz-fusion.org/ (emerald) http://anjuta.sourceforge.net/ http://cachem.sourceforge.net/ http://ws.apache.org/axis2/c/ http://apr.apache.org/ (tomcat-native) Here's the ones that are using apr-util: http://www.kde.org (kdevplatform4) http://subversion.tigris.org/ (svn-javahl) http://secondlife.com/ http://www.kdevelop.org/ http://www.compiz-fusion.org/ (emerald) http://anjuta.sourceforge.net/ -- Regards // Oden Eriksson -- No virus found in this incoming message. Checked by AVG. Version: 7.5.524 / Virus Database: 270.4.1/1516 - Release Date: 24/6/2008 07:53
Re: Help with apr and apr-util
- Original Message - From: Steve Comstock [EMAIL PROTECTED] To: dev@apr.apache.org Sent: Tuesday, June 24, 2008 10:03 PM Subject: Re: Help with apr and apr-util Bojan Smojver wrote: On Tue, 2008-06-24 at 14:45 -0600, Steve Comstock wrote: 1. Should I delete the srclib/apr and srclib/apr-util directories I built just yesterday? Remember, the configure took me over five hours to build what I have (and it doesn't work) You don't need to delete it, but you'll have to run another round of configure on the new APR/APR-util anyhow. It's really unfortunate the environment is so slow. Any way you can do this on bare metal somewhere so you don't have to wait for hours to see the results? 2. Where should I upload apr-1.3.2.tar.gz? in srclib? No need. You can put it anywhere you like. But, if you replace apr and apr-util directories inside srclib with release 1.3.2, it should work as well. 3. Does this contain both apr and apr-util? No. APR-util is separate (i.e. you need to download another tarball). 4. I find no install instructions; what are the steps? [small mercies: I know how to unzip and unwind; but once there, what can I expect? APR and APR-util are separate packages from httpd (httpd folks do ship both with httpd for convenience). but that's one reason I'm so pissed: apparently the version shipped with httpd is not the correct version. This would never be tolerated in the mainframe world. They can be installed by themselves. They get installed like this: but wait: I do the gzip to unzip, but do I need to use pax, in order to convert to EBCDIC, or can I just use tar? APR: -- ./configure [various options you like here] make make install -- APR-util: -- ./configure --with-apr=/where/apr/is [various options you like here] make make install -- Run ./configure --help to see all the options. Once you're done with those two, you can build and install httpd in a similar way: httpd: -- ./configure --with-apr=/where/apr/is --with-apr-util=/where/apr-util/is [various options you like here] make make install -- Again, run ./configure --help to see all the options. 5. So suppose I install apr and apr-util under srclib, will I need to run the Apache configure again? Yes, that's correct. Given that this runs for such a long time, it would really be better to do it on the hardware, rather than an emulator. Otherwise, it may take you weeks before you find out what's going on :-( -- Kind regards, -Steve Comstock The Trainer's Friend, Inc. 303-393-8716 http://www.trainersfriend.com z/OS Application development made easier * Our classes include + How things work + Programming examples with realistic applications + Starter / skeleton code + Complete working programs + Useful utilities and subroutines + Tips and techniques == Check out the Trainer's Friend Store to purchase z/OS == == application developer toolkits. Sample code in four== == programming languages, JCL to Assemble or compile, == == bind and test. == == http://www.trainersfriend.com/TTFStore/index.html== -- No virus found in this incoming message. Checked by AVG. Version: 7.5.524 / Virus Database: 270.4.1/1516 - Release Date: 24/6/2008 07:53
Re: Help with apr and apr-util
- Original Message - From: Branko Čibej [EMAIL PROTECTED] To: dev@apr.apache.org Sent: Tuesday, June 24, 2008 10:22 PM Subject: Re: Help with apr and apr-util Steve Comstock wrote: but that's one reason I'm so pissed: apparently the version shipped with httpd is not the correct version. This would never be tolerated in the mainframe world. I beg your pardon? What is the correct version? As I see from our posts, you're for all practical purposes creating a new port of httpd/apr/apr-util. So while that bundled version of APR may not be correct for your particular platform, I don't really find that too surprising given the circumstances. Certainly lots of people have built httpd-2.2.9 and dependencies from the tarball on other systems. But what do I know. I swore off mainframes when they started to implement POSIX-like subsystems in order that people could actually get anything done on them. Also the local utility refused to lay in the cable to power up my pet PDP-10 ... -- Brane -- No virus found in this incoming message. Checked by AVG. Version: 7.5.524 / Virus Database: 270.4.1/1516 - Release Date: 24/6/2008 07:53
Re: Help with apr and apr-util
- Original Message - From: Steve Comstock [EMAIL PROTECTED] To: dev@apr.apache.org Sent: Tuesday, June 24, 2008 10:41 PM Subject: Re: Help with apr and apr-util Branko Čibej wrote: Steve Comstock wrote: but that's one reason I'm so pissed: apparently the version shipped with httpd is not the correct version. This would never be tolerated in the mainframe world. I beg your pardon? What is the correct version? As I see from our posts, you're for all practical purposes creating a new port of httpd/apr/apr-util. So while that bundled version of APR may not be correct for your particular platform, I don't really find that too surprising given the circumstances. Certainly lots of people have built httpd-2.2.9 and dependencies from the tarball on other systems. Well, from my perspective, I wanted to install the current Apache, httpd version 2.2.9; I downloaded the tarball and went through the install process as directed. Only to find the version of apr and apr-util included are apparently not in synch with the httpd in the same tarball. That's why I'm doing this: the configure of httpd aparently went OK, but the make failed, and someone told me it could be cured by installing the current version of apr and apr-util. That's my perspective of what's happening. I find it very surprising a bundled version of a subsystem would not be a good fit for a platform, especially if there is an appropriate fit available. Why wasnt apr-1.3.2 included in the httpd-2.2.9 tarball, I guess is what I'm asking. I had never even heard about apr before this effort. It's the server I was after. But what do I know. I swore off mainframes when they started to implement POSIX-like subsystems in order that people could actually get anything done on them. Huh? People have gotten a lot of productive work on mainframes before POSIX-like things. z/OS now supports POSIX so that you can run classic mainframe work at the same time you are running UNIX type tasks. In fact, running under the shell you can access both UNIX files and classic MVS files from the same program. And, running outside of a shell, a program can access both classic MVS files and HFS files. Please remember that when I grew up in the business (starting in 1968(!)), working for IBM, UNIX was considered the enemy. Now, I'm trying to understand how the two worlds can work together and compliment each other. It's a fun journey! Also the local utility refused to lay in the cable to power up my pet PDP-10 ... Ah, well, if you're going to call a PDP-10 a mainframe... :-) Kind regards, -Steve Comstock The Trainer's Friend, Inc. 303-393-8716 http://www.trainersfriend.com z/OS Application development made easier * Our classes include + How things work + Programming examples with realistic applications + Starter / skeleton code + Complete working programs + Useful utilities and subroutines + Tips and techniques == Check out the Trainer's Friend Store to purchase z/OS == == application developer toolkits. Sample code in four== == programming languages, JCL to Assemble or compile, == == bind and test. == == http://www.trainersfriend.com/TTFStore/index.html== -- No virus found in this incoming message. Checked by AVG. Version: 7.5.524 / Virus Database: 270.4.1/1516 - Release Date: 24/6/2008 07:53
Re: Help with apr and apr-util
- Original Message - From: Bojan Smojver [EMAIL PROTECTED] To: dev@apr.apache.org Sent: Tuesday, June 24, 2008 10:49 PM Subject: Re: Help with apr and apr-util On Tue, 2008-06-24 at 19:03 -0600, Steve Comstock wrote: but that's one reason I'm so pissed: apparently the version shipped with httpd is not the correct version. This would never be tolerated in the mainframe world. 1.3.0 was the best version at the time of the httpd-2.2.9 release, so httpd folks correctly shipped that with it, after testing on various platforms. Your platform may have not been included in the testing though - we are all volunteers and access to all hardware is not always possible. We fixed some (non-critical) bugs since and released 1.3.2. More will be fixed in 1.3.3 and so on. Future releases of httpd will include those higher versions, of course. but wait: I do the gzip to unzip, but do I need to use pax, in order to convert to EBCDIC, or can I just use tar? I am really not sure on this one - never used an EBCDIC system. -- Bojan -- No virus found in this incoming message. Checked by AVG. Version: 7.5.524 / Virus Database: 270.4.1/1516 - Release Date: 24/6/2008 07:53
Re: Help with apr and apr-util
- Original Message - From: William A. Rowe, Jr. [EMAIL PROTECTED] To: dev@apr.apache.org Sent: Tuesday, June 24, 2008 11:07 PM Subject: Re: Help with apr and apr-util Steve Comstock wrote: Why wasnt apr-1.3.2 included in the httpd-2.2.9 tarball, I guess is what I'm asking. If you look at the release dates, you'll see that 1.3.2 was released just this Friday, mostly due to feedback from good users like yourself who provide detailed information. httpd 2.2.9 is almost 2 weeks old :) -- No virus found in this incoming message. Checked by AVG. Version: 7.5.524 / Virus Database: 270.4.1/1516 - Release Date: 24/6/2008 07:53
Re: Help with apr and apr-util
- Original Message - From: Steve Comstock [EMAIL PROTECTED] To: dev@apr.apache.org Sent: Tuesday, June 24, 2008 11:44 PM Subject: Re: Help with apr and apr-util William A. Rowe, Jr. wrote: Steve Comstock wrote: Why wasnt apr-1.3.2 included in the httpd-2.2.9 tarball, I guess is what I'm asking. If you look at the release dates, you'll see that 1.3.2 was released just this Friday, mostly due to feedback from good users like yourself who provide detailed information. httpd 2.2.9 is almost 2 weeks old :) It's like the Dilbert cartoon: Sometimes people like you can get jobs in museums. I just bought this yesterday! Ah, the good old days, just a month ago. :-) Kind regards, -Steve Comstock The Trainer's Friend, Inc. 303-393-8716 http://www.trainersfriend.com z/OS Application development made easier * Our classes include + How things work + Programming examples with realistic applications + Starter / skeleton code + Complete working programs + Useful utilities and subroutines + Tips and techniques == Check out the Trainer's Friend Store to purchase z/OS == == application developer toolkits. Sample code in four== == programming languages, JCL to Assemble or compile, == == bind and test. == == http://www.trainersfriend.com/TTFStore/index.html== -- No virus found in this incoming message. Checked by AVG. Version: 7.5.524 / Virus Database: 270.4.1/1516 - Release Date: 24/6/2008 07:53
Re: Help with apr and apr-util
- Original Message - From: Branko Čibej [EMAIL PROTECTED] To: dev@apr.apache.org Sent: Tuesday, June 24, 2008 11:59 PM Subject: Re: Help with apr and apr-util Steve Comstock wrote: Branko Čibej wrote: Also the local utility refused to lay in the cable to power up my pet PDP-10 ... Ah, well, if you're going to call a PDP-10 a mainframe... :-) I'm so sorry, I completely forgot TOPS-10 subsisted on a 6-bit ASCII subset, no EBCDIC that I can recall. Clearly a toy. ;-) -- Brane -- No virus found in this incoming message. Checked by AVG. Version: 7.5.524 / Virus Database: 270.4.1/1516 - Release Date: 24/6/2008 07:53
Re: Strange continous SEVERE error after upgrading to APR 1.3, Critical poller failure, Timer expired
On Wed, 25 Jun 2008 10:32:58 +0200 Jimi Hullegård [EMAIL PROTECTED] wrote: Hi, After we upgraded APR from 1.2.8 to 1.3.0 we get a strange error in tomcat's catalina.out that we have never seen before: Jun 24, 2008 11:42:09 AM org.apache.tomcat.util.net.AprEndpoint$Poller run SEVERE: Critical poller failure (restarting poller): [62] Timer expired Could this be related to http://marc.info/?l=apr-devm=121347872322492w=2 I had something similar with httpd+Event MPM on solaris. Current workaround is to use Worker MPM. -- Nick Kew Application Development with Apache - the Apache Modules Book http://www.apachetutor.org/
RE: Strange continous SEVERE error after upgrading to APR 1.3, Critical poller failure, Timer expired
-Original Message- From: Nick Kew [mailto:[EMAIL PROTECTED] Sent: den 25 juni 2008 13:44 To: dev@apr.apache.org Subject: Re: Strange continous SEVERE error after upgrading to APR 1.3, Critical poller failure, Timer expired On Wed, 25 Jun 2008 10:32:58 +0200 Jimi Hullegård [EMAIL PROTECTED] wrote: Hi, After we upgraded APR from 1.2.8 to 1.3.0 we get a strange error in tomcat's catalina.out that we have never seen before: Jun 24, 2008 11:42:09 AM org.apache.tomcat.util.net.AprEndpoint$Poller run SEVERE: Critical poller failure (restarting poller): [62] Timer expired Could this be related to http://marc.info/?l=apr-devm=121347872322492w=2 I had something similar with httpd+Event MPM on solaris. Current workaround is to use Worker MPM. I'm not quite sure I follow you now... Worker MPM is for Apache Httpd, right? We don't use httpd. Do you know of any workaround for Tomcat? /Jimi
Re: Strange continous SEVERE error after upgrading to APR 1.3, Critical poller failure, Timer expired
On Wed, 2008-06-25 at 12:43, Nick Kew wrote: On Wed, 25 Jun 2008 10:32:58 +0200 Jimi Hullegård [EMAIL PROTECTED] wrote: Hi, After we upgraded APR from 1.2.8 to 1.3.0 we get a strange error in tomcat's catalina.out that we have never seen before: Jun 24, 2008 11:42:09 AM org.apache.tomcat.util.net.AprEndpoint$Poller run SEVERE: Critical poller failure (restarting poller): [62] Timer expired Could this be related to http://marc.info/?l=apr-devm=121347872322492w=2 I had something similar with httpd+Event MPM on solaris. Current workaround is to use Worker MPM. OK, I've just tested APR variants with Event MPM. It is indeed that fix that breaks it. When I revert the fix, the problem goes away. The original patch posted to fix the same bug works fine. Can I suggest you apply the following patch to 1.3.x (should work on 1.3.0 or 1.3.2 too) and let us know if it fixes the problem you're seeing? Index: poll/unix/port.c === --- poll/unix/port.c(revision 662044) +++ poll/unix/port.c(working copy) @@ -315,7 +315,15 @@ if (ret == -1) { (*num) = 0; -rv = apr_get_netos_error(); +if (errno == EINTR) { +rv = APR_EINTR; +} +else if (errno == ETIME) { +rv = APR_TIMEUP; +} +else { +rv = APR_EGENERAL; +} } else if (nget == 0) { rv = APR_TIMEUP; -- Nick Kew
RE: Strange continous SEVERE error after upgrading to APR 1.3, Critical poller failure, Timer expired
Nick Kew wrote: On Wed, 2008-06-25 at 12:43, Nick Kew wrote: Could this be related to http://marc.info/?l=apr-devm=121347872322492w=2 I had something similar with httpd+Event MPM on solaris. Current workaround is to use Worker MPM. OK, I've just tested APR variants with Event MPM. It is indeed that fix that breaks it. When I revert the fix, the problem goes away. The original patch posted to fix the same bug works fine. Can I suggest you apply the following patch to 1.3.x (should work on 1.3.0 or 1.3.2 too) and let us know if it fixes the problem you're seeing? [patch code snipped] Ok, I have forwarded this to some persons that have access to the system now (I am currently at a different office with no remote access). I hope they have time to test this soon. /Jimi
Re: Help with apr and apr-util
On Tue, Jun 24, 2008 at 9:03 PM, Steve Comstock [EMAIL PROTECTED] wrote: but wait: I do the gzip to unzip, but do I need to use pax, in order to convert to EBCDIC, or can I just use tar? yes, use pax. I've used this http://people.apache.org/~gregames/xtar ...script for unpacking and converting httpd tarballs. for apr[-uti] you shouldn't need the stuff to re-extract the graphic files without conversion but it shouldn't hurt either. regarding apr and apr-util, they ought to be in sync in the httpd 2.2.9 tarball. if they weren't, I assume we would hear a lot of loud screaming by now, but the release is fairly new too. I'll try the 2.2.9 tarball on Linux and see what happens. if it works on Linux it ought to work on OS/390 assuming you have the right build tools in place. Greg
Re: Trouble in river city.
On Tue, Jun 24, 2008 at 3:56 PM, Steve Comstock [EMAIL PROTECTED] wrote: Making all in srclib Making all in apr .. WARNING CCN3068 ./dso/unix/dso.c:139 Operation between types void* and int is not allowed. WARNING CCN3068 ./dso/unix/dso.c:153 Operation between types const char* and int is not allowed. WARNING CCN3196 ./dso/unix/dso.c:227 Initialization between types void* and int is not allowed. WARNING CCN3068 ./dso/unix/dso.c:231 Operation between types const char* and int is not allowed. FSUM3065 The COMPILE step ended with return code 4. . . . ar: FSUM6180 file passwd/apr_getpass.o: EDC5129I No such file or directory. ar: FSUM6180 file strings/apr_cpystrn.o: EDC5129I No such file or directory. ar: FSUM6180 file strings/apr_fnmatch.o: EDC5129I No such file or directory. I don't see any problems like this building the httpd-2.2.9 tarball on Linux with no separate apr[-util] downloads so I have to believe the apr[-util] that httpd-2.2.9 comes with is compatible. Where did you get your build tools, especially libtool? and what do you see if you do ls srclib/apr/passwd/ i.e., was there a problem compiling apr_getpass.c ? Greg
Re: Trouble in river city.
Greg Ames wrote: On Tue, Jun 24, 2008 at 3:56 PM, Steve Comstock [EMAIL PROTECTED] wrote: Making all in srclib Making all in apr .. WARNING CCN3068 ./dso/unix/dso.c:139 Operation between types void* and int is not allowed. WARNING CCN3068 ./dso/unix/dso.c:153 Operation between types const char* and int is not allowed. WARNING CCN3196 ./dso/unix/dso.c:227 Initialization between types void* and int is not allowed. WARNING CCN3068 ./dso/unix/dso.c:231 Operation between types const char* and int is not allowed. FSUM3065 The COMPILE step ended with return code 4. . . . ar: FSUM6180 file passwd/apr_getpass.o: EDC5129I No such file or directory. ar: FSUM6180 file strings/apr_cpystrn.o: EDC5129I No such file or directory. ar: FSUM6180 file strings/apr_fnmatch.o: EDC5129I No such file or directory. I don't see any problems like this building the httpd-2.2.9 tarball on Linux with no separate apr[-util] downloads so I have to believe the apr[-util] that httpd-2.2.9 comes with is compatible. Greg, Thanks for running the test. Where did you get your build tools, especially libtool? OK. I started from this page: http://people.apache.org/~trawick/apache-2-on-zos.html which is, admittedly, a little long in the tooth, but the only page I could find about porting Apache to z/OS. Note, for example, the page title does not say z/OS but OS/390. On that page is a list of tools to get: * IBM's C compiler; check * non-GNU libtool (don't know why he says non-GNU, but there is a link there to: http://apache.org/~trawick/libtool.tar.Z) this is the version I installed * GNU autoconf and m4; he provides ftp links; I got these, but it looks like this stuff now comes bundled in the Apache tarball; not sure which one I ended up using, but probably the version that came with the Apache tarball * shell script to unpack tarball, xtar (which is just a text file with around a dozen lines of code); check * the Apache tarball. he points to the 2.0 version, but I wanted to try and work with the latest version; it turns out the latest version comes in two flavors, .gz and .bz2; I got the .gz version; this means I had to go get gzip from the z/OS UNIX ported tools page, which I did. and what do you see if you do ls srclib/apr/passwd/ -rw-r--r-- 1 ADMINS SYS16714 Jun 14 14:36 apr_getpass.c i.e., was there a problem compiling apr_getpass.c ? Not sure. The code is there, how do I tell if the compile was successful? [There are no other files in the directory.] Of course, this is after I have installed the new apr and apr-util but before I run the five+ hour long configure for httpd-2.2.9 Kind regards, -Steve Comstock The Trainer's Friend, Inc. 303-393-8716 http://www.trainersfriend.com z/OS Application development made easier * Our classes include + How things work + Programming examples with realistic applications + Starter / skeleton code + Complete working programs + Useful utilities and subroutines + Tips and techniques == Check out the Trainer's Friend Store to purchase z/OS == == application developer toolkits. Sample code in four== == programming languages, JCL to Assemble or compile, == == bind and test. == == http://www.trainersfriend.com/TTFStore/index.html==
Re: Trouble in river city.
Steve Comstock wrote: Greg Ames wrote: On Tue, Jun 24, 2008 at 3:56 PM, Steve Comstock [EMAIL PROTECTED] wrote: Making all in srclib Making all in apr .. WARNING CCN3068 ./dso/unix/dso.c:139 Operation between types void* and int is not allowed. WARNING CCN3068 ./dso/unix/dso.c:153 Operation between types const char* and int is not allowed. WARNING CCN3196 ./dso/unix/dso.c:227 Initialization between types void* and int is not allowed. WARNING CCN3068 ./dso/unix/dso.c:231 Operation between types const char* and int is not allowed. FSUM3065 The COMPILE step ended with return code 4. . . . ar: FSUM6180 file passwd/apr_getpass.o: EDC5129I No such file or directory. ar: FSUM6180 file strings/apr_cpystrn.o: EDC5129I No such file or directory. ar: FSUM6180 file strings/apr_fnmatch.o: EDC5129I No such file or directory. I don't see any problems like this building the httpd-2.2.9 tarball on Linux with no separate apr[-util] downloads so I have to believe the apr[-util] that httpd-2.2.9 comes with is compatible. Greg, Thanks for running the test. Where did you get your build tools, especially libtool? OK. I started from this page: http://people.apache.org/~trawick/apache-2-on-zos.html which is, admittedly, a little long in the tooth, but the only page I could find about porting Apache to z/OS. Note, for example, the page title does not say z/OS but OS/390. On that page is a list of tools to get: * IBM's C compiler; check * non-GNU libtool (don't know why he says non-GNU, but there is a link there to: http://apache.org/~trawick/libtool.tar.Z) this is the version I installed * GNU autoconf and m4; he provides ftp links; I got these, but it looks like this stuff now comes bundled in the Apache tarball; not sure which one I ended up using, but probably the version that came with the Apache tarball * shell script to unpack tarball, xtar (which is just a text file with around a dozen lines of code); check * the Apache tarball. he points to the 2.0 version, but I wanted to try and work with the latest version; it turns out the latest version comes in two flavors, .gz and .bz2; I got the .gz version; this means I had to go get gzip from the z/OS UNIX ported tools page, which I did. and what do you see if you do ls srclib/apr/passwd/ -rw-r--r-- 1 ADMINS SYS16714 Jun 14 14:36 apr_getpass.c i.e., was there a problem compiling apr_getpass.c ? Not sure. The code is there, how do I tell if the compile was successful? [There are no other files in the directory.] Of course, this is after I have installed the new apr and apr-util but before I run the five+ hour long configure for httpd-2.2.9 Guessing there was no source of entropy. C.f. apr ./configure; --with-egd[=DIR]use EGD-compatible socket --with-devrandom[=DEV] use /dev/random or compatible [searches by default]
Re: Strange continous SEVERE error after upgrading to APR 1.3, Critical poller failure, Timer expired
On 06/25/2008 02:55 PM, Nick Kew wrote: On Wed, 2008-06-25 at 12:43, Nick Kew wrote: On Wed, 25 Jun 2008 10:32:58 +0200 Jimi Hullegård [EMAIL PROTECTED] wrote: Hi, After we upgraded APR from 1.2.8 to 1.3.0 we get a strange error in tomcat's catalina.out that we have never seen before: Jun 24, 2008 11:42:09 AM org.apache.tomcat.util.net.AprEndpoint$Poller run SEVERE: Critical poller failure (restarting poller): [62] Timer expired Could this be related to http://marc.info/?l=apr-devm=121347872322492w=2 I had something similar with httpd+Event MPM on solaris. Current workaround is to use Worker MPM. OK, I've just tested APR variants with Event MPM. It is indeed that fix that breaks it. When I revert the fix, the problem goes away. The original patch posted to fix the same bug works fine. Can I suggest you apply the following patch to 1.3.x (should work on 1.3.0 or 1.3.2 too) and let us know if it fixes the problem you're seeing? Index: poll/unix/port.c === --- poll/unix/port.c(revision 662044) +++ poll/unix/port.c(working copy) @@ -315,7 +315,15 @@ if (ret == -1) { (*num) = 0; -rv = apr_get_netos_error(); +if (errno == EINTR) { +rv = APR_EINTR; +} +else if (errno == ETIME) { +rv = APR_TIMEUP; +} +else { +rv = APR_EGENERAL; +} } else if (nget == 0) { rv = APR_TIMEUP; Looks good and makes sense. apr_get_netos_error() in case of ETIME = 720062 APR_TIMEUP = 70007 So they are different. But I would do rv = apr_get_netos_error(); instead of rv = APR_EGENERAL; Regards Rüdiger
Re: Strange continous SEVERE error after upgrading to APR 1.3, Critical poller failure, Timer expired
Ruediger Pluem wrote: On 06/25/2008 02:55 PM, Nick Kew wrote: OK, I've just tested APR variants with Event MPM. It is indeed that fix that breaks it. When I revert the fix, the problem goes away. The original patch posted to fix the same bug works fine. Can I suggest you apply the following patch to 1.3.x (should work on 1.3.0 or 1.3.2 too) and let us know if it fixes the problem you're seeing? Index: poll/unix/port.c === --- poll/unix/port.c(revision 662044) +++ poll/unix/port.c(working copy) @@ -315,7 +315,15 @@ if (ret == -1) { (*num) = 0; -rv = apr_get_netos_error(); +if (errno == EINTR) { +rv = APR_EINTR; +} +else if (errno == ETIME) { +rv = APR_TIMEUP; +} +else { +rv = APR_EGENERAL; +} } else if (nget == 0) { rv = APR_TIMEUP; Looks good and makes sense. apr_get_netos_error() in case of ETIME = 720062 APR_TIMEUP = 70007 So they are different. But I would do rv = apr_get_netos_error(); instead of rv = APR_EGENERAL; Good observations. Folks, you want to fix these regressions before we TR 1.3.3? Bill
Re: Trouble in river city.
William A. Rowe, Jr. wrote: [snip] Guessing there was no source of entropy. C.f. apr ./configure; --with-egd[=DIR]use EGD-compatible socket --with-devrandom[=DEV] use /dev/random or compatible [searches by default] I'm glad you suggested that. It gives me the opportunity to ask a few questions: * I've heard of entropy in the physics sense; I've seen or two references to it in the software context; what does entropy mean in the software context? * What creates entropy? What is the significance of your suggested --with options? * What made you think, from my post, that there was no source of entropy? What was your clue? Kind regards, -Steve Comstock The Trainer's Friend, Inc. 303-393-8716 http://www.trainersfriend.com z/OS Application development made easier * Our classes include + How things work + Programming examples with realistic applications + Starter / skeleton code + Complete working programs + Useful utilities and subroutines + Tips and techniques == Check out the Trainer's Friend Store to purchase z/OS == == application developer toolkits. Sample code in four== == programming languages, JCL to Assemble or compile, == == bind and test. == == http://www.trainersfriend.com/TTFStore/index.html==
Re: Trouble in river city.
Steve Comstock wrote: William A. Rowe, Jr. wrote: [snip] Guessing there was no source of entropy. C.f. apr ./configure; --with-egd[=DIR]use EGD-compatible socket --with-devrandom[=DEV] use /dev/random or compatible [searches by default] I'm glad you suggested that. It gives me the opportunity to ask a few questions: * I've heard of entropy in the physics sense; I've seen or two references to it in the software context; what does entropy mean in the software context? randomness that is not predicted, e.g. other than a pseudorandom sequence, since these can be predicted. * What creates entropy? What is the significance of your suggested --with options? In the pc sense, usually /dev/random or /dev/urandom, there are various prngd alternatives. These work by deciding to watch sensors in the PC, e.g. you might take a measurement of the cpu's temperature measured in .001 degree (to .010), or the arrival timing of packets on the network, etc. /dev/random does so for all bits of entropy, /dev/urandom does the best it can with true bits of entropy, and makes up the difference with pseduorandom data so that it won't block. You must have one. bin/htpasswd was considered insecure, so it was modified to grab a few mostly random bytes for seeding. (httpd project's choice, not ours). * What made you think, from my post, that there was no source of entropy? What was your clue? Someone else reported similar a while ago, and this parked itself away in my brain for a month or two. You mentioned apr_get_password - I had the same failure a couple of days ago on HP/UX 11.11 (a new box) and realized that we hadn't installed the HP/UX /dev/random, /dev/urandom drivers nor choose a source like prngd. Seeing as I'm done supporting 11.00, HP's driver made more sense. http://h20293.www2.hp.com/portal/swdepot/displayProductInfo.do?productNumber=KRNG11I
Re: Trouble in river city.
William A. Rowe, Jr. wrote: Steve Comstock wrote: William A. Rowe, Jr. wrote: [snip] Guessing there was no source of entropy. C.f. apr ./configure; --with-egd[=DIR]use EGD-compatible socket --with-devrandom[=DEV] use /dev/random or compatible [searches by default] I'm glad you suggested that. It gives me the opportunity to ask a few questions: * I've heard of entropy in the physics sense; I've seen or two references to it in the software context; what does entropy mean in the software context? randomness that is not predicted, e.g. other than a pseudorandom sequence, since these can be predicted. * What creates entropy? What is the significance of your suggested --with options? In the pc sense, usually /dev/random or /dev/urandom, there are various prngd alternatives. These work by deciding to watch sensors in the PC, e.g. you might take a measurement of the cpu's temperature measured in .001 degree (to .010), or the arrival timing of packets on the network, etc. /dev/random does so for all bits of entropy, /dev/urandom does the best it can with true bits of entropy, and makes up the difference with pseduorandom data so that it won't block. You must have one. bin/htpasswd was considered insecure, so it was modified to grab a few mostly random bytes for seeding. (httpd project's choice, not ours). Ahhh! That's the clue that does the trick for me: a source of seeds for a random number generator, that you need for creating / processing passwords. Thanks! z/OS has /dev/urandom, so I guess I'll use that. * What made you think, from my post, that there was no source of entropy? What was your clue? Someone else reported similar a while ago, and this parked itself away in my brain for a month or two. You mentioned apr_get_password - I had the same failure a couple of days ago on HP/UX 11.11 (a new box) and realized that we hadn't installed the HP/UX /dev/random, /dev/urandom drivers nor choose a source like prngd. Seeing as I'm done supporting 11.00, HP's driver made more sense. http://h20293.www2.hp.com/portal/swdepot/displayProductInfo.do?productNumber=KRNG11I Makes sense to me. Thanks again. Do I need to specify --with-devrandom=/dev/urandom just for the apr configure, or do I need to specify it at for apr-util also? Or, can I just do the httpd configure and depend on that process carrying down? [I'd like to just run httpd ./configure; doesn't that invoke the apr and apr-util configure scripts on your behalf? Kind regards, -Steve Comstock The Trainer's Friend, Inc. 303-393-8716 http://www.trainersfriend.com z/OS Application development made easier * Our classes include + How things work + Programming examples with realistic applications + Starter / skeleton code + Complete working programs + Useful utilities and subroutines + Tips and techniques == Check out the Trainer's Friend Store to purchase z/OS == == application developer toolkits. Sample code in four== == programming languages, JCL to Assemble or compile, == == bind and test. == == http://www.trainersfriend.com/TTFStore/index.html==
Starting over
Well, a disk failure has caused me to have to start my port of Apache to z/OS over again. Bit of a bummer, but also a chance to start over with a clean slate. Based on some of the suggestions and posts, I find I'm bewildered a bit by the open source world. For example, Greg Ames asked me: Where did you get your build tools, especially libtool? It never would have occurred to me to scuttle around grabbing build tools. My experience is: you get an application, whether for Windows or z/OS, and you install it. Install shield, or its cousins, either come with the package or the OS; in the z/OS world you either simply unpack (RECEIVE) or you use SMP/E, which is part of the OS. So, help me out here. How would I find out the right tools to grab to build Apache for my environment? I'm trying to write a narrative, to direct those who follow, in a linear (or relatively linear) or rational (or relatively rational). If I were rational, I guess I would start with the Apache site: Apache.org, which has a link to the httpd project (httpd.apache.org) which contains the following interesting / promising links for my efforts: Download ( http://httpd.apache.org/download.cgi ) Documentation, Version 2.2 ( http://httpd.apache.org/docs/2.2/ ) The Download site tells me Apache 2.2.9 is the best available option, and gives me two Unix sources, three Windows sources, and an Others; none of these mention z/OS, so I'll take the closest to this, which is Unix; the first choice is a .gz file, the second is a .bz2 file. Either way, I'll have to download a file to unzip the tarball. I choose the .gz file because the z/OS Ported Tools page has a port for gzip. You see, I can make some basic deductions and apply some reasonably knowledgable reasoning to select the files I need. But then... No clues on the Download page about installing. So, I roll over to the Documentation page, which has lots of interesting links... Under Reference Manual I see Compiling and Installing hey, that looks like just the thing! Go there ( http://httpd.apache.org/docs/2.2/install.html ) And I am told pretty clearly that I will need libtool and autoconf. Now please remember I am a stranger in a strange land. There is no definition nor link to any place to get these tools. Where do I go? What do they do, anyway? You could help the cause a lot by providing this kind of information. I know that people who know know. Reminds me of the ancient days of mainframes when the systems people were kind of high priests and were jealous of letting their knowldege be widely available. Anyway, Google ends up pointing me back to the IBM Ported Tools page, which contains a large tarball with lots of tools, including libtool and autoconf. Of course, I have no idea if these are right for Apache 2.2.9 on z/OS 1.9. But we'll give it a try. OK, so I'm off. We'll send back dispatches from the trenches. Kind regards, -Steve Comstock The Trainer's Friend, Inc. 303-393-8716 http://www.trainersfriend.com z/OS Application development made easier * Our classes include + How things work + Programming examples with realistic applications + Starter / skeleton code + Complete working programs + Useful utilities and subroutines + Tips and techniques == Check out the Trainer's Friend Store to purchase z/OS == == application developer toolkits. Sample code in four== == programming languages, JCL to Assemble or compile, == == bind and test. == == http://www.trainersfriend.com/TTFStore/index.html==
Re: Starting over
Steve Comstock wrote: And I am told pretty clearly that I will need libtool and autoconf. Now please remember I am a stranger in a strange land. There is no definition nor link to any place to get these tools. Where do I go? What do they do, anyway? You could help the cause a lot by providing this kind of information. I know that people who know know. Reminds me of the ancient days of mainframes when the systems people were kind of high priests and were jealous of letting their knowldege be widely available. Steve, you shouldn't need to reinstall libtool or autoconf, in fact as of 2.2.9 (and apr 1.3.2) these were bleeding edge. You only need such things if you were to run ./buildconf, which I don't suggest you do. I think Greg may have confused you further. We use these to create the tarball you obtained so that you don't have to grab anything (except compiler, linker etc etc). Sorry bout your disk crash :( Bill