Strange continous SEVERE error after upgrading to APR 1.3, Critical poller failure, Timer expired

2008-06-25 Thread Jimi Hullegård
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

2008-06-25 Thread Graham Leggett

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

2008-06-25 Thread Oden Eriksson
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

2008-06-25 Thread EU EU MEMO SÓ


- 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

2008-06-25 Thread EU EU MEMO SÓ


- 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

2008-06-25 Thread EU EU MEMO SÓ


- 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

2008-06-25 Thread EU EU MEMO SÓ


- 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

2008-06-25 Thread EU EU MEMO SÓ


- 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

2008-06-25 Thread EU EU MEMO SÓ


- 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

2008-06-25 Thread EU EU MEMO SÓ


- 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

2008-06-25 Thread EU EU MEMO SÓ


- 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

2008-06-25 Thread EU EU MEMO SÓ


- 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

2008-06-25 Thread EU EU MEMO SÓ


- 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

2008-06-25 Thread Nick Kew
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

2008-06-25 Thread Jimi Hullegård
 -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

2008-06-25 Thread Nick Kew

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

2008-06-25 Thread Jimi Hullegård
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

2008-06-25 Thread Greg Ames
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.

2008-06-25 Thread Greg Ames
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.

2008-06-25 Thread Steve Comstock

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.

2008-06-25 Thread William A. Rowe, Jr.

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

2008-06-25 Thread Ruediger Pluem



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

2008-06-25 Thread William A. Rowe, Jr.

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.

2008-06-25 Thread Steve Comstock

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.

2008-06-25 Thread William A. Rowe, Jr.

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.

2008-06-25 Thread Steve Comstock

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

2008-06-25 Thread Steve Comstock

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

2008-06-25 Thread William A. Rowe, Jr.

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