Re: [Knowledge Base] First coherent release

2001-10-11 Thread Drew Taylor

I've run into a WEIRD problem that I think is ActivePerl related. I've 
installed the PerlKB modules and added some debugging code to 
PerlKB::Store.pm. The short story is that I have to shift TWICE to get rid 
of the PerlKB::Store! This is with the latest ActivePerl which I just 
installed tonight. And to top it off, once the config href is populated I 
get an illegal operation error and no result. :-( My system is Win98 SE.

Any ideas? This is just weird...


C:\install\PerlKB-0.02\exampleperl -v

This is perl, v5.6.1 built for MSWin32-x86-multi-thread
(with 1 registered patch, see perl -V for more detail)

Copyright 1987-2001, Larry Wall

Binary build 629 provided by ActiveState Tool Corp. http://www.ActiveState.com
Built 12:27:04 Aug 20 2001


 PerlKB::Store.pm
sub new {
 my $class = shift;
 $class = ref $class || $class;
 my $self = { };
 #shift;
 carp(new called w/ @_);
 print Dumper($self-{config});
 
}

C:\install\PerlKB-0.02\exampleperl test.pl
new called w/ PerlKB::Store type File configuration 
PerlKB::Configuration=HASH(0
x176f0d8) document_root ../lib at test.pl line 10
$VAR1 = {
   'PerlKB::Configuration=HASH(0x176f0d8)' = 'document_root',
   'PerlKB::Store' = 'type',
   '../lib' = undef,
   'File' = 'configuration'
 };
Can't call method isa on an undefined value at 
E:/Perl/site/lib/PerlKB/Store.p
m line 29.



At 12:09 AM 10/11/01 -0500, James G Smith wrote:
I've put together a tarball of the PerlKB modules:

http://prdownloads.sourceforge.net/perlkb/PerlKB-0.02.tar.gz

The example/ directory has a little script that shows how the store objects
work.  The scripts/ directory has a perl script that starts up the
PerlKB::Shell monitor (modeled in a small way after the CPAN shell).

Otherwise, it doesn't do a whole lot, but it's starting to come together.

Project page: http://sourceforge.net/projects/perlkb/
+--
James Smith - [EMAIL PROTECTED] | http://www.jamesmith.com/
   [EMAIL PROTECTED]  | 
 http://cis.tamu.edu/systems/opensystems/
+--

Drew Taylor JA[P|m_p|SQL]H
http://www.drewtaylor.com/  Just Another Perl|mod_perl|SQL Hacker
mailto:[EMAIL PROTECTED]  *** God bless America! ***







Re: ANN/RFC: Apache::Session::Generate variants

2001-10-11 Thread Tatsuhiko Miyagawa

On Thu, 11 Oct 2001 01:06:33 -0500 (CDT)
Dave Rolsky [EMAIL PROTECTED] wrote:

 Jeff, if you're still maintaining this package it'd be nice to put out a
 new release.  If not, it'd be good to give it to someone else.  Hell, I'll
 volunteer if no one more interested comes along.  I don't have any big
 plans for it but I can at least integrate patches and such.
 
 Apache::Session is in use in a lot of places and it would be good to have
 an active maintainer.

++1. And I don't mind taking over, if nobody else wants to.

--
Tatsuhiko Miyagawa [EMAIL PROTECTED]




Re: [Knowledge Base] First coherent release

2001-10-11 Thread Jim Smith

On Thu, Oct 11, 2001 at 02:53:09AM -0400, Drew Taylor wrote:
 I've run into a WEIRD problem that I think is ActivePerl related. I've 
 installed the PerlKB modules and added some debugging code to 
 PerlKB::Store.pm. The short story is that I have to shift TWICE to get rid 
 of the PerlKB::Store! This is with the latest ActivePerl which I just 
 installed tonight. And to top it off, once the config href is populated I 
 get an illegal operation error and no result. :-( My system is Win98 SE.
 
 Any ideas? This is just weird...

*doh* yes.  I should have caught it.  The following change has been made to
cvs ( == old,  == new).  Change the URL from -0.02.tar.gz to -0.03.tar.gz.

% cvs diff Store.pm 
Index: Store.pm
===
RCS file: /cvsroot/perlkb/perlkb/lib/PerlKB/Store.pm,v
retrieving revision 1.4
diff -r1.4 Store.pm
18c18
 croak No configuration unless $self - {config} - {configuration} - 
isa(PerlKB::Configuration);
---
 croak No configuration unless $self - {config} - {configuration}  $self - 
{config} - {configuration} -
isa(PerlKB::Configuration);
33c33
 sub TIEHASH { return $_[0] - new(@_); }
---
 sub TIEHASH { return shift - new(@_); }




Apache::Registry caching of compiled scripts

2001-10-11 Thread Nicholas Oxhøj

Hi

Does anybody know why Apache::Registry caches compiled scripts by their URI, instead 
of by their absolute path?

At my site we have quite a lot of virtual hosts, which use the same base of cgi 
scripts. This causes the same scripts to be compiled and cached several times (one 
time for each virtual host).

As I understand it, this behaviour COULD be changed by putting

  $Apache::Registry::NameWithVirtualHost = 0

in a perl start-up file, which would only cache on the relative URI (without the host 
name), but this won't really do, since not ALL the virtual hostst use the same base of 
CGI scripts.

So I was just wondering why the compiled scripts are not cached under the absolute 
path to the script, instead of under the URI, as the former seems quite logical at 
first and would seem to solve some performance/memory issues when using virtual hosts.

This design choice probably has a very good reason, which I am just unable to see. I 
would just like to find out in order to learn... :-)

Nicholas Oxhøj





Re: Problem with Apache-request

2001-10-11 Thread Issac Goldstand

Try doing my $r=Apache::Request-new($r);

   Issac

Internet is a wonderful mechanism for making a fool of
yourself in front of a very large audience.
  --Anonymous

Moving the mouse won't get you into trouble...  Clicking it might.
  --Anonymous

PGP Key 0xE0FA561B - Fingerprint:
7E18 C018 D623 A57B 7F37 D902 8C84 7675 E0FA 561B




- Original Message - 
From: Randy Rasmussen [EMAIL PROTECTED]
To: [EMAIL PROTECTED]
Sent: Wednesday, October 10, 2001 18:35
Subject: Problem with Apache-request


 I am having a problem with a module that needs Apache-request.
 
 The module is AuthCookieLDAP. I have a .htaccess (/test2/.htaccess) file
 that looks like:
 AuthType Apache::AuthCookieLDAP
 AuthName SA
 PerlAuthenHandler Apache::AuthCookieLDAP-authenticate
 PerlAuthzHandler Apache::AuthCookieLDAP-authorize
 require valid-user
 
 That in turn reads my httpd.conf file which has the following:
 Files LOGIN
  AuthType Apache::AuthCookieLDAP
  AuthName SA
  SetHandler perl-script
  PerlHandler Apache::AuthCookieLDAP-login
 /Files
 
 PerlModule Apache::AuthCookieLDAP
 PerlSetVar SAPath /
 PerlSetVar SALoginScript /cgi-bin/login.pl
 PerlSetVar SALDAP_DN o=isp
 PerlSetVar SADBI_DSN isp
 PerlSetVar SALDAP_SecretKeyFile .../apache/foobar.com.key
 PerlSetVar SALDAP_User tesuser
 PerlSetVar SALDAP_host host.foobar.com
 #PerlSetVar SALDAP_host ldap.foobar.com
 PerlSetVar SALDAP_EncryptionType none
 PerlSetVar SALDAP_SessionLifetime 00-24-00-00
 
 
 Then it runs the login.pl script which looks like:
 #!/usr/bin/perl
 #
 # $Id: login.pl,v 1.1 2000/07/11 17:03:05 jacob Exp $
 use strict;
 use 5.004;
 use Text::TagTemplate;
 use Apache;
 
 my $t = new Text::TagTemplate;
 my $r = Apache-request();
 
 my $destination;
 my $authcookiereason;
 if ( $r-prev() ) { # we are called as a subrequest.
 $destination = $r-prev()-args()
  ? $r-prev()-uri() . '?' .  $r-prev-args()
  : $r-prev()-uri();
 $authcookiereason = $r-prev()-subprocess_env(
 'AuthCookieReason' );
 } else {
 $destination = $r-args( 'destination' );
 $authcookiereason = $r-args( 'AuthCookieReason' );
 }
 $t-add_tag( DESTINATION = $destination );
 
 unless ( $authcookiereason eq 'bad_cookie' ) {
 $t-template_file( ../html/login.html );
 } else {
 $t-template_file( ../html/login-failed.html );
 }
 
 $r-send_http_header;
 print $t-parse_file unless $r-header_only;
 
 
 When I go to /test2/index.html I get this error:
 Can't locate object method request via package Apache at
 .../cgi-bin/login.pl line 16.
 [Wed Oct 10 10:43:26 2001] [error] [client 172.28.22.253] Premature end
 of script headers: .../cgi-bin/login.pl
 
 Here is the software and versions I have installed:
 
 apache 1.3.20, Apache-AuthCookie-3.00, Apache-AuthCookieLDAP-0.02,
 mod_perl-1.26, perl5.005_02
 
 Please help. I have looke all over deja.com, and all of the perl and
 mod_perl sites I can think of to no avail.
 
 Thanks in advance,
 
 Randy
 
 




Re: Problem with Apache-request

2001-10-11 Thread Chris Strom

Are you running login.pl under Apache::Registry?  If not, something like
the following should work:

  Alias /perl/ /home/httpd/perl/
  PerlModule Apache::Registry
  Location /perl
SetHandler perl-script
PerlHandler Apache::Registry
Options ExecCGI
  /Location
 
Then put your login.pl script into /home/httpd/perl and change 

 PerlSetVar SALoginScript /cgi-bin/login.pl

to 

PerlSetVar SALoginScript /perl/login.pl


Randy Rasmussen [EMAIL PROTECTED] writes:

 I am having a problem with a module that needs Apache-request.
 
 The module is AuthCookieLDAP. I have a .htaccess (/test2/.htaccess) file
 that looks like:
 AuthType Apache::AuthCookieLDAP
 AuthName SA
 PerlAuthenHandler Apache::AuthCookieLDAP-authenticate
 PerlAuthzHandler Apache::AuthCookieLDAP-authorize
 require valid-user
 
 That in turn reads my httpd.conf file which has the following:
 Files LOGIN
  AuthType Apache::AuthCookieLDAP
  AuthName SA
  SetHandler perl-script
  PerlHandler Apache::AuthCookieLDAP-login
 /Files
 
 PerlModule Apache::AuthCookieLDAP
 PerlSetVar SAPath /
 PerlSetVar SALoginScript /cgi-bin/login.pl
 PerlSetVar SALDAP_DN o=isp
 PerlSetVar SADBI_DSN isp
 PerlSetVar SALDAP_SecretKeyFile .../apache/foobar.com.key
 PerlSetVar SALDAP_User tesuser
 PerlSetVar SALDAP_host host.foobar.com
 #PerlSetVar SALDAP_host ldap.foobar.com
 PerlSetVar SALDAP_EncryptionType none
 PerlSetVar SALDAP_SessionLifetime 00-24-00-00
 
 
 Then it runs the login.pl script which looks like:
 #!/usr/bin/perl
 #
 # $Id: login.pl,v 1.1 2000/07/11 17:03:05 jacob Exp $
 use strict;
 use 5.004;
 use Text::TagTemplate;
 use Apache;
 
 my $t = new Text::TagTemplate;
 my $r = Apache-request();
 
 my $destination;
 my $authcookiereason;
 if ( $r-prev() ) { # we are called as a subrequest.
 $destination = $r-prev()-args()
  ? $r-prev()-uri() . '?' .  $r-prev-args()
  : $r-prev()-uri();
 $authcookiereason = $r-prev()-subprocess_env(
 'AuthCookieReason' );
 } else {
 $destination = $r-args( 'destination' );
 $authcookiereason = $r-args( 'AuthCookieReason' );
 }
 $t-add_tag( DESTINATION = $destination );
 
 unless ( $authcookiereason eq 'bad_cookie' ) {
 $t-template_file( ../html/login.html );
 } else {
 $t-template_file( ../html/login-failed.html );
 }
 
 $r-send_http_header;
 print $t-parse_file unless $r-header_only;
 
 
 When I go to /test2/index.html I get this error:
 Can't locate object method request via package Apache at
 .../cgi-bin/login.pl line 16.
 [Wed Oct 10 10:43:26 2001] [error] [client 172.28.22.253] Premature end
 of script headers: .../cgi-bin/login.pl
 
 Here is the software and versions I have installed:
 
 apache 1.3.20, Apache-AuthCookie-3.00, Apache-AuthCookieLDAP-0.02,
 mod_perl-1.26, perl5.005_02
 
 Please help. I have looke all over deja.com, and all of the perl and
 mod_perl sites I can think of to no avail.




Re: Apache::Registry caching of compiled scripts

2001-10-11 Thread darren chamberlain

Nicholas Oxhj [EMAIL PROTECTED] said something to this effect on 10/11/2001:
 Does anybody know why Apache::Registry caches compiled scripts
 by their URI, instead of by their absolute path?

Try Apache::RegistryNG, which caches scripts by their filename.

(darren)

-- 
Premature optimization is the root of all evil in programming.
-- C.A.R. Hoare



Re: Problem with Apache-request

2001-10-11 Thread Perrin Harkins

 Try doing my $r=Apache::Request-new($r);

You're confusing Apache::Request with Apache-request(), which is easy to
do.  Apache::Request is a different class, which is part of the libapreq
distribution.  Apache-request() returns the current request object
(commonly called $r).

- Perrin




EmbPerl for ActivePerl Distribution

2001-10-11 Thread Grant Babb

all-

don't even start with me about using win2K: sometimes (make that ALL the 
times) you don't get to make those kind of decisions.
i loaded Apache and mod_perl onto a win2k box with ActivePerl.  everything 
compiled and started without errors, thanks to the magical binaries of Mr 
Kobes and the Winnipeg site.  Then I  find that ActivePerl has no EmbPerl 
module my sole reason for installing mod_perl.  I know they have some 
proprietary version, but i will gladly pass on that.

my question is this:
is there a perl module i can compile and place into the distribution I 
have, or do i have to install a different distribution of Perl and 
recompile mod_perl with the new Apache/Perl combo.

being able to use ActiveState's Perl distro is very valuable: the PPM is a 
very nice thing.

thanks in advance-
grant babb
Data Junction Corporation




Re: [Knowledge Base] First coherent release

2001-10-11 Thread Drew Taylor

I feel a little stupid now that I actually read up on tying hashes. Had I 
read Ch 14 of the Camel #3, I might have phrased my question in a better 
way so as to not illuminate my inexperience with tying variables. :-)

I assume that the reason I get the Can't locate the render_format method 
is because you're not actually storing any objects yet?

One final question, by using our you're restricting these modules to perl 
5.6.x. Is there any particular reason for this? From the looks of it, the 
usage of our could easily be changed. Do you have plans to take advantage 
of other 5.6 specific features? Either way it would be nice if you included 
a require 5.6.0; in PerlKB.pm so that it would be immediately obvious to 
the new user.

At 03:06 AM 10/11/01 -0500, Jim Smith wrote:
On Thu, Oct 11, 2001 at 02:53:09AM -0400, Drew Taylor wrote:
  I've run into a WEIRD problem that I think is ActivePerl related. I've
  installed the PerlKB modules and added some debugging code to
  PerlKB::Store.pm. The short story is that I have to shift TWICE to get rid
  of the PerlKB::Store! This is with the latest ActivePerl which I just
  installed tonight. And to top it off, once the config href is populated I
  get an illegal operation error and no result. :-( My system is Win98 SE.
 
  Any ideas? This is just weird...

*doh* yes.  I should have caught it.  The following change has been made to
cvs ( == old,  == new).  Change the URL from -0.02.tar.gz to -0.03.tar.gz.

% cvs diff Store.pm
Index: Store.pm
===
RCS file: /cvsroot/perlkb/perlkb/lib/PerlKB/Store.pm,v
retrieving revision 1.4
diff -r1.4 Store.pm
18c18
 croak No configuration unless $self - {config} - {configuration} 
- isa(PerlKB::Configuration);
---
  croak No configuration unless $self - {config} - 
 {configuration}  $self - {config} - {configuration} -
isa(PerlKB::Configuration);
33c33
 sub TIEHASH { return $_[0] - new(@_); }
---
  sub TIEHASH { return shift - new(@_); }

Drew Taylor JA[P|m_p|SQL]H
http://www.drewtaylor.com/  Just Another Perl|mod_perl|SQL Hacker
mailto:[EMAIL PROTECTED]  *** God bless America! ***







Off-topic - Apache Config - Load crises

2001-10-11 Thread Rafiq Ismail

I know this is a bit off topic, but I could use some immediate advise on
server config?


Got a server which is getting hit really bad.
Have to keep it up.  I've got:


P Timeout 300

# Keepalive, better on this server...
KeepAlive   On
MaxKeepAliveRequests100
KeepAliveTimeout5

# performance services
MinSpareServers 5
MaxSpareServers 50
StartServers20
StartServers20
MaxClients  250


Pings look like:

64 bytes from x.x.x.x: icmp_seq=0 ttl=244 time=1069.3 ms
64 bytes from x.x.x.x: icmp_seq=1 ttl=244 time=984.8 ms
64 bytes from x.x.x.x: icmp_seq=2 ttl=244 time=1138.9 ms
64 bytes from x.x.x.x: icmp_seq=3 ttl=244 time=1567.1 ms
64 bytes from x.x.x.x: icmp_seq=4 ttl=244 time=1622.3 ms
64 bytes from x.x.x.x: icmp_seq=5 ttl=244 time=1382.8 ms
64 bytes from x.x.x.x: icmp_seq=6 ttl=244 time=1145.5 ms
64 bytes from x.x.x.x: icmp_seq=7 ttl=244 time=1065.6 ms
64 bytes from x.x.x.x: icmp_seq=8 ttl=244 time=1133.6 ms



There are some really graphic intensive pages here, however I'm not sure
if Keep alive is good when there's lots of contention for pages.  Should
I:
 i) disable keep alive?

ii) reduce the keep alive time out ?

   iii) up my number for max spare servers?  Since i've not maxed out
on load or memory, perhaps more idle servers will reduce the contention
for apache children?  My intutition is that since the server is obviously
in trouble, resource wise, perhaps increasing the number of daemons will
relieve the load.  Not sure.  It's a big box.  Any ideas?

   iv) Something else?


I'd appreciate some suggestions.

Thanks,

R.









-- 
Rafiq Ismail

Software Engineer and Systems Administrator
http://www.codix.net


All the best people in life seem to like Linux. - Steve Wozniak







Re: EmbPerl for ActivePerl Distribution

2001-10-11 Thread Randy Kobes

On Thu, 11 Oct 2001, Grant Babb wrote:

 all-

 don't even start with me about using win2K: sometimes (make that ALL the
 times) you don't get to make those kind of decisions.
 i loaded Apache and mod_perl onto a win2k box with ActivePerl.  everything
 compiled and started without errors, thanks to the magical binaries of Mr
 Kobes and the Winnipeg site.  Then I  find that ActivePerl has no EmbPerl
 module my sole reason for installing mod_perl.  I know they have some
 proprietary version, but i will gladly pass on that.

Hi,
We have an HTML::Embperl ppm package (and also
Apache::ASP and HTML::Mason) at
http://theoryx5.uwinnipeg.ca/ppmpackages/
which you can install via the ppm utility in the same way that
the mod_perl package is installed from this location.

best regards,
randy kobes




Re: [Knowledge Base] First coherent release

2001-10-11 Thread Jim Smith

On Thu, Oct 11, 2001 at 11:25:43AM -0400, Drew Taylor wrote:
 I feel a little stupid now that I actually read up on tying hashes. Had I 
 read Ch 14 of the Camel #3, I might have phrased my question in a better 
 way so as to not illuminate my inexperience with tying variables. :-)

 n/p :)
 
 I assume that the reason I get the Can't locate the render_format method 
 is because you're not actually storing any objects yet?

 Not sure.  It should be able to see it.  Can you give me the line number
 or any other context for it?  Is it version 0.03 (the changes I mentioned
 in the previous e-mail)?

 Do you have Config::Pod located somewhere?  It's needed for the
 PerlKB::Configuration::Pod module to work (and no, I don't have that
 documented that I know of, yet - sorry).

 Btw, thanks for trying it out -- especially since I don't have access to
 Microsoft sysems :)
 
 One final question, by using our you're restricting these modules to perl 
 5.6.x. Is there any particular reason for this? From the looks of it, the 
 usage of our could easily be changed. Do you have plans to take advantage 
 of other 5.6 specific features? Either way it would be nice if you included 
 a require 5.6.0; in PerlKB.pm so that it would be immediately obvious to 
 the new user.

 I will include a `require 5.006;'

 I do make use of `use base', the three argument form of `open' and
 auto-vivification of file handles in addition to `our'.  Can't think of
 any others right now.
 
 --jim



Re: [Knowledge Base] First coherent release

2001-10-11 Thread Drew Taylor

At 11:45 AM 10/11/01 -0500, Jim Smith wrote:
On Thu, Oct 11, 2001 at 11:25:43AM -0400, Drew Taylor wrote:
  I assume that the reason I get the Can't locate the render_format method
  is because you're not actually storing any objects yet?

  Not sure.  It should be able to see it.  Can you give me the line number
  or any other context for it?  Is it version 0.03 (the changes I mentioned
  in the previous e-mail)?

Yes, I did add the changes you mentioned in the previous email althought I 
did not DL the new tarball. Let me try that...
Interesting... I DL the newest taball. Now I get a bunch of code scrolling 
by (stupid DOS prompt...) which I guess is the sample.doc. But I still get 
the error:

Can't locate object method render_format via package 
PerlKB::Document::pod (
perhaps you forgot to load PerlKB::Document::pod?) at test.pl line 40.

  Do you have Config::Pod located somewhere?  It's needed for the
  PerlKB::Configuration::Pod module to work (and no, I don't have that
  documented that I know of, yet - sorry).

Yup, I found out about that one the hard way. :-)

  Btw, thanks for trying it out -- especially since I don't have access to
  Microsoft sysems :)

Glad to help. BTW, Win32 is just my home system. All my real programming is 
done on *nix.

Drew Taylor JA[P|m_p|SQL]H
http://www.drewtaylor.com/  Just Another Perl|mod_perl|SQL Hacker
mailto:[EMAIL PROTECTED]  *** God bless America! ***







Re: Off-topic - Apache Config - Load crises

2001-10-11 Thread Jim Cox


Your problem may be a network problem, not Apache/Mod_perl.

Check with your upstream provider and have them do a bandwidth 
analysis. Here is why.

I've strobed your network and the return time latency seems to be high. 

It would appear that you have about a 28 ms latency overhead in/out of 
your network. That is not a good sign. This is on top of what appears to 
be a standard 1.54 - 2.0 Mbps line.  If your upstream feed is more than
a T1 or E1 then you need to have a talk with your upstream. 

I suggest invest some time in bing. (bing not ping)

Of course I'm looking at this through about 20 hops and because of 
that most of my information is inconclusive. I have noted that
codix-pri-gw.uk.insnet.net, which appears to be an assigned router 
by your upstream, appears to be dropping packets.  I get a 40% packet
loss when I test to that address and beyond.

Anyway, SWAG if this helps, good.  If it did not help,... don't blame me,
I'm not in the UK. 
 

Rafiq Ismail wrote:
 
 I know this is a bit off topic, but I could use some immediate advise on
 server config?
 
 Got a server which is getting hit really bad.
 Have to keep it up.  I've got:
 
 P Timeout 300
 
 # Keepalive, better on this server...
 KeepAlive   On
 MaxKeepAliveRequests100
 KeepAliveTimeout5
 
 # performance services
 MinSpareServers 5
 MaxSpareServers 50
 StartServers20
 StartServers20
 MaxClients  250
 
 Pings look like:
 
 64 bytes from x.x.x.x: icmp_seq=0 ttl=244 time=1069.3 ms
 64 bytes from x.x.x.x: icmp_seq=1 ttl=244 time=984.8 ms
 64 bytes from x.x.x.x: icmp_seq=2 ttl=244 time=1138.9 ms
 64 bytes from x.x.x.x: icmp_seq=3 ttl=244 time=1567.1 ms
 64 bytes from x.x.x.x: icmp_seq=4 ttl=244 time=1622.3 ms
 64 bytes from x.x.x.x: icmp_seq=5 ttl=244 time=1382.8 ms
 64 bytes from x.x.x.x: icmp_seq=6 ttl=244 time=1145.5 ms
 64 bytes from x.x.x.x: icmp_seq=7 ttl=244 time=1065.6 ms
 64 bytes from x.x.x.x: icmp_seq=8 ttl=244 time=1133.6 ms
 
 There are some really graphic intensive pages here, however I'm not sure
 if Keep alive is good when there's lots of contention for pages.  Should
 I:
  i) disable keep alive?
 
 ii) reduce the keep alive time out ?
 
iii) up my number for max spare servers?  Since i've not maxed out
 on load or memory, perhaps more idle servers will reduce the contention
 for apache children?  My intutition is that since the server is obviously
 in trouble, resource wise, perhaps increasing the number of daemons will
 relieve the load.  Not sure.  It's a big box.  Any ideas?
 
iv) Something else?
 
 I'd appreciate some suggestions.
 
 Thanks,
 
 R.
 
 --
 Rafiq Ismail
 
 Software Engineer and Systems Administrator
 http://www.codix.net
 
 All the best people in life seem to like Linux. - Steve Wozniak

-- 
Jim Cox (mailto:[EMAIL PROTECTED]) 
(817) 315-8134   (888) 834-7656 Toll Free
(817) 315-8253 FAX



Re: EmbPerl for ActivePerl Distribution

2001-10-11 Thread Gerald Richter

 We have an HTML::Embperl ppm package (and also
 Apache::ASP and HTML::Mason) at
 http://theoryx5.uwinnipeg.ca/ppmpackages/
 which you can install via the ppm utility in the same way that
 the mod_perl package is installed from this location.


And everthing could be found in Embperl's INSTALL.pod file :-) see:
http://perl.apache.org/embperl/INSTALL.pod.1.html#WIN_32_with_ActiveState_Pe
rl

Gerald



-
Gerald Richterecos electronic communication services gmbh
Internetconnect * Webserver/-design/-datenbanken * Consulting

Post:   Tulpenstrasse 5 D-55276 Dienheim b. Mainz
E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131
WWW:http://www.ecos.de  Fax:  +49 6133 925152
-





Re: Off-topic - Apache Config - Load crises

2001-10-11 Thread Robert Landrum

I know this is a bit off topic, but I could use some immediate advise on
server config?


Got a server which is getting hit really bad.
Have to keep it up.  I've got:


P Timeout 300

# Keepalive, better on this server...
KeepAlive   On
MaxKeepAliveRequests100
KeepAliveTimeout5


Hmm... I usually drop keep alive all together and move the images to 
another server... like images.yourhost.com.  Keep Alive should be set 
high enough to avoid closing a connection before a machine has time 
to make the next request.  5 seconds is a pretty short interval.  And 
with your 1 second ping times, your looking at a 2 second round trip 
on packets...  So there'll be 2 or more seconds of delay between the 
time that the first request sends it's last packet and when the next 
request sends it's first packet.

I'd suggest upping the keep alive timeout to 10 or 15 (isn't 15 the default?).

Another possible solution (if you have a lot of memory and a lot of 
dynamic content) is to throw a squid cache on the web server.  I had 
good luck with squid during the last election...

Good luck,

Rob


--
Only two things are infinite: The universe, and human stupidity. And I'm not
sure about the former. --Albert Einstein



Re: Off-topic - Apache Config - Load crises

2001-10-11 Thread Perrin Harkins

 Got a server which is getting hit really bad.
 Have to keep it up.

You didn't really give us enough information to guess at what your problem
is.  You describe one symptom in this message: slow ping times.  What else
is wrong?  Are pages loading slowly?  Failing to load?  What applications
are you running?  Are the problems with applications or static pages?  Are
you running mod_perl at all?  How much memory is free?  Are you swapping?
How are you checking?  What platform is this?  Have you turned

Off the top of my head, your MaxClients is set way too high for a mod_perl
box.

- Perrin




Re: Off-topic - Apache Config - Load crises

2001-10-11 Thread Stephen Reppucci


I agree with the response that you need to do some statistics
gathering to try to accurately isolate the cause of your problems.

I *don't* agree with the other suggestion that was made to UP the
keepalive to 15-20 seconds (the default that apache comes with is 5,
IIRC).

Here's why: Assuming that you have one server serving both modperl
and image requests, those keepalives are tieing up a large, heavy
server, doing nothing but waiting for a new potential request.
(Right on to the suggestion to try to get those image requests
directed to a separate web server which can be separately tuned...)

I actually have a snippet from a writeup I did for a client who was
experiencing high server loads about a year ago, here's what I wrote
then:

-
KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 15

In my experience, the performance killer here is KeepAliveTimeout.

This defines the number of seconds that a server child will wait for
a client to send additional requests over an already-open connection
before closing the socket and making itself available to service
other clients' requests - this default value is way too high.

Where keep alives work well is in situations where an bunch of
requests are likely to occur one after another - such as what's
typical when fetching an HTML page containing dozens or more image
files served from the same server. Keeping the connection open and
serving the HTML page and many of its images without tearing down
and re-establishing the connection makes sense here.

On a heavily loaded server however, having a server hang around
idle, tieing up resources for this long waiting for a new request is
wasteful. It's much less of a drain to get that process back into
the pool of available child servers as quickly as possible, allowing
it to service other requests. This is especially true when you
realize that the typical browser tries to optimize its transfers by
opening up to four separate TCP connections to the server when
loading a page's components, thereby tieing up four child servers.

Thinking of the typical client request, where an HTML page is
fetched and its referenced images are then also requested, it makes
sense to me that these requests are going to come very quickly. It
certainly seems reasonable to expect that subsequent component
requests will occur in under a second, and that if more than a
second elapses without a request, then it's likely that all of the
components have been read and the user is likely now reading the
page.

This being said, I like to set KeepaliveTimeout to its lowest value
- '1'. In my not-very-scientific tests, this seems to be the best
value to balance the latency experienced by any one client with the
overall performance of the server.

-

Lowering the keepalive did the trick for these people.

Disclaimer: I don't have any carefully gathered evidence that this
idea (setting keepalive to '1') will do what I postulate it should
above. But back when I had access to a large website, with lots of
bandwidth, we did some empirical tests that certainly seemed to
confirm this idea -- setting a smaller keepalive resulted in better
'ab' numbers. I *did* though send a message to the Apache group, and
got a response from Mark Slemko which pointed towards this as a
possible issue.

A couple of other suggestions: Set Timeout to a lower value (maybe
30?) and decrease MaxClients using the techniques described in Stas'
guide.

Also, I agree that given the network latency of your site, you might
be better off setting the keepalives to a higher value than
what I recommend in the above (maybe 2?)

I'd love hear others' thoughts on this -- ideas for tuning web
servers is a fun topic, afaic...!

Steve


On Thu, 11 Oct 2001, Rafiq Ismail wrote:

 I know this is a bit off topic, but I could use some immediate advise on
 server config?


 Got a server which is getting hit really bad.
 Have to keep it up.  I've got:


 P Timeout 300

 # Keepalive, better on this server...
 KeepAlive   On
 MaxKeepAliveRequests100
 KeepAliveTimeout5

 # performance services
 MinSpareServers 5
 MaxSpareServers 50
 StartServers20
 StartServers20
 MaxClients  250


 Pings look like:

 64 bytes from x.x.x.x: icmp_seq=0 ttl=244 time=1069.3 ms
 64 bytes from x.x.x.x: icmp_seq=1 ttl=244 time=984.8 ms
 64 bytes from x.x.x.x: icmp_seq=2 ttl=244 time=1138.9 ms
 64 bytes from x.x.x.x: icmp_seq=3 ttl=244 time=1567.1 ms
 64 bytes from x.x.x.x: icmp_seq=4 ttl=244 time=1622.3 ms
 64 bytes from x.x.x.x: icmp_seq=5 ttl=244 time=1382.8 ms
 64 bytes from x.x.x.x: icmp_seq=6 ttl=244 time=1145.5 ms
 64 bytes from x.x.x.x: icmp_seq=7 ttl=244 time=1065.6 ms
 64 bytes from x.x.x.x: icmp_seq=8 ttl=244 time=1133.6 ms



 There are some really graphic intensive pages here, however I'm not sure
 if Keep alive is good when there's lots of contention for pages.  Should
 I:
i) disable 

Re: Apache::Gallery

2001-10-11 Thread Ken Williams

Michael,

Yeah, you can put it in the Apache namespace if it's mod_perl-dependent.
That's what it's there for. =)  The name Apache::Gallery seems decent.



Michael Legart [EMAIL PROTECTED] wrote:

 Hi,

 Apache::Gallery is a picture gallery implemented as a mod_perl handler,
 using libgd2 for on-the-fly image resizing (resized pictures are cached)
 and CGI::FastTemplate for easy customization.

 Demo can be seen at http://pictures.legart.dk/ordb/ and source can be
 downloaded from http://legart.dk/code/Apache-Gallery-0.1.1.tar.gz

 It is still at a very early stage, but i have alot of ideas for
 improvements...

 Would it be ok to upload this to CPAN in the Apache namespace?

 Thanks,
 Michael





Re: OT: secure mod_perl enabled apache on MacOSX 10.1

2001-10-11 Thread Ken Williams

Joe,

The problem is that Apple has made some strange changes to the way shared 
libraries are linked.  I'm not very conversant in the details, but there 
are some people on the [EMAIL PROTECTED] list that have discussed it.

Unfortunately, Apache::Request and Apache::Cookie don't define any tests, 
so a user can install them and think they're perfectly fine, but they 
fail pretty spectacularly when you try to use them. =(


Joe Schaefer [EMAIL PROTECTED] wrote:

 John Siracusa [EMAIL PROTECTED] writes:

 P.S.- d) Apache::Request and Apache::Cookie still can't be
 loaded simultaneously! :(

 Why not?  Does it work OK with a statically-linked mod_perl?

 --
 Joe Schaefer






Re: [VERY OT] What hourly rate to charge for programming?

2001-10-11 Thread Dave Hodgkinson

Gunther Birznieks [EMAIL PROTECTED] writes:

 America is richer than Australia.

Yeah, but the food's better in Oz.

Still, the beer sucks in both ;-)


-- 
David Hodgkinson, Wizard for Hirehttp://www.davehodgkinson.com
Editor-in-chief, The Highway Star   http://www.deep-purple.com
All the Purple Family Tree news   http://www.slashrock.com
   Interim Technical Director, Web Architecture Consultant for hire



Re: [VERY OT] What hourly rate to charge for programming?

2001-10-11 Thread Chris Devers

On Thu, 11 Oct 2001 [EMAIL PROTECTED] wrote:

 To: Gunther Birznieks [EMAIL PROTECTED],
 
  Still, the beer sucks in both ;-)
 
 That's because it's stale piss, I'm sure the beer glasses are pissed
 in to save money ;-) Heck, the beer is so bad nobody can possibly tell
 the difference anyway.

Ahh, you have Budweiser in Australia too, then? ;) 
 

--
Chris Devers [EMAIL PROTECTED]
Apache / mod_perl  http://bunny.skillcheck.com/admin/chris/resume/




Re: [VERY OT] What hourly rate to charge for programming?

2001-10-11 Thread Dave Hodgkinson

Chris Devers [EMAIL PROTECTED] writes:

 Ahh, you have Budweiser in Australia too, then? ;) 

Worse: Fosters.

-- 
David Hodgkinson, Wizard for Hirehttp://www.davehodgkinson.com
Editor-in-chief, The Highway Star   http://www.deep-purple.com
All the Purple Family Tree news   http://www.slashrock.com
   Interim Technical Director, Web Architecture Consultant for hire



Re: Off-topic - Apache Config - Load crises

2001-10-11 Thread Dave Hodgkinson

Rafiq Ismail [EMAIL PROTECTED] writes:

iv) Something else?

Two tier Apache.
Increase shareability.
Read the guide.

-- 
David Hodgkinson, Wizard for Hirehttp://www.davehodgkinson.com
Editor-in-chief, The Highway Star   http://www.deep-purple.com
All the Purple Family Tree news   http://www.slashrock.com
   Interim Technical Director, Web Architecture Consultant for hire



Apache::Session 1.54 released

2001-10-11 Thread Jeffrey W. Baker


Apache::Session 1.54, also know as the you impatient bastards release,
has been uploaded to CPAN.  Changes in this release include:

Fix ID validation in Flex
Move from MD5 to Digest::MD5
Include new generators ModUniqueId and ModUsertrack

-jwb





Re: [Knowledge Base] First coherent release

2001-10-11 Thread Jim Smith

On Thu, Oct 11, 2001 at 01:05:17PM -0400, Drew Taylor wrote:
 At 11:45 AM 10/11/01 -0500, Jim Smith wrote:
 On Thu, Oct 11, 2001 at 11:25:43AM -0400, Drew Taylor wrote:
   I assume that the reason I get the Can't locate the render_format method
   is because you're not actually storing any objects yet?
 
   Not sure.  It should be able to see it.  Can you give me the line number
   or any other context for it?  Is it version 0.03 (the changes I mentioned
   in the previous e-mail)?
 
 Yes, I did add the changes you mentioned in the previous email althought I 
 did not DL the new tarball. Let me try that...
 Interesting... I DL the newest taball. Now I get a bunch of code scrolling 
 by (stupid DOS prompt...) which I guess is the sample.doc. But I still get 
 the error:
 
 Can't locate object method render_format via package 
 PerlKB::Document::pod (
 perhaps you forgot to load PerlKB::Document::pod?) at test.pl line 40.

 ok - I think I know what the problem is.

 The PerlKB::Document object accepts a `type' argument on creation and
 tries to load the corresponding module.  If it is successful, then it
 bless's the current document object (being created) into that
 class/module.

 I think DOS/Windows is presenting a case-insensitive filesystem and thus
 PerlKB::Document::pod loads, but is really PerlKB::Document::Pod.  The
 PerlKB::Document code tries qw(pod POD Pod) in that order and stops with
 the first successful load.  This is regardless of the capitalization of
 `type'.  This was made this way to allow differences in actual and
 expected capitalization (e.g., qw(html HTML Html)).  This side effect on
 case-insensitive filesystems should be viewed as a bug.  I'll try and
 figure out a fix that can still be flexable enough to not require prior
 knowledge of modules (within PerlKB::Document) and allow for
 capitalization varients.

 If I can't think of a good way around this, I'll ditch it and require
 proper capitalization of the `type' parameter.

--jim



PerlModule not updating %INC

2001-10-11 Thread David Pisoni

Hello,

We are using perl 5.6.0 for Apache 1.3/20, with mod_perl 1.26.  We are running these 
on a RedHat Linux 7.1, kernel v2.4.2 system.

We have been doing development using mod_perl, but finding that Apache::StatINC was 
not working as expected (i.e., we needed to restart the web server in order to see our 
module changes in effect.)  Our apache config files preload all necessary modules at 
start time using the 'PerlModule' directive.  When I started peeking through 
Apache::Status I found that although all of our loaded modules appear in the 
Inheritance Tree and the ISA Tree, most of them did not appear in the Loaded 
Modules section.  (I also did a test handler with a dump of the contents of %INC, and 
said modules were missing.)  The only modules of ours which DID appear were those 
which were ALSO called for with 'use' calls by other modules.

Out of curiosity, I took our configuration file and changed all the 'PerlModule' 
directives to 'use' calls (inside a Perl block), and lo and behold, they all 
appeared in %INC.

I could not find any documentation suggesting that the PerlModule directive would 
successfully load a module while circumventing %INC, nor do I recall in my previous 
projects developed using mod_perl having this problem.  (Although I've been away 
awhile -- maybe I forget.)

Any guidance?

Thanks,
-- 
David Pisoni

One machine can do the work of fifty ordinary men. No machine can do the work of one 
extraordinary man. -Elbert Hubbard, author, editor, printer (1856-1915)



Re: ANN/RFC: Apache::Session::Generate variants

2001-10-11 Thread Dave Rolsky

On Thu, 11 Oct 2001, Jeffrey W. Baker wrote:

 Well, you guys are touchy lot!  My releases are no less frequent than
 releases of DBI or even mod_perl.  So just chill out, I sometimes have
 other things on my mind.

I don't know about touchy so much as frustrated.  Apache::Session is very
widely used but it doesn't feel well supported.

Comparing it to DBI or mod_perl seems a bit silly.  It is not as widely
used as either and is far less complex.

My big concern is that there is a fatal error in Apache::Session::Flex
that makes it completely unusable.  You've known about this for at least
9-12 months but you haven't bothered to release a simple bugfix release
for it.  Its a 3-4 line change!

The only way around it is to constantly patch my local copies or use a
hack work-around code which subclasses Flex to fix the populate method.
This is stupid.

I don't really want to reinvent the wheel or tell people not to use
Apache::Session, but its getter harder to avoid either.

If you have other things on your mind, that's fine.  That's why I
suggested you should consider letting someone else maintain it.  I know
I'm not the only person frustrated by the current state of affairs.


-dave

/*==
www.urth.org
We await the New Sun
==*/




Re: ANN/RFC: Apache::Session::Generate variants

2001-10-11 Thread Jeffrey W. Baker



On Thu, 11 Oct 2001, Dave Rolsky wrote:

 On Thu, 11 Oct 2001, Jeffrey W. Baker wrote:

  Well, you guys are touchy lot!  My releases are no less frequent than
  releases of DBI or even mod_perl.  So just chill out, I sometimes have
  other things on my mind.

 I don't know about touchy so much as frustrated.  Apache::Session is very
 widely used but it doesn't feel well supported.

 Comparing it to DBI or mod_perl seems a bit silly.  It is not as widely
 used as either and is far less complex.

 My big concern is that there is a fatal error in Apache::Session::Flex
 that makes it completely unusable.  You've known about this for at least
 9-12 months but you haven't bothered to release a simple bugfix release
 for it.  Its a 3-4 line change!

Then package it up, send me the tarball, and I'll upload it to CPAN.
Repeatedly sending me patches isn't any more likely to get me to pay
attention to it.

Regarding Flex, nobody uses it.  It is for debugging.  If you have a
particular variant of Flex that you use all the time (very likely), you
can code up a 6-line module to make a real implementation like all the
other session modules.

Flex is for debugging, period.

Version 1.54 is uploaded to CPAN so go nuts.

-jwb




[OT] Off Topic?

2001-10-11 Thread George Sanderson

Is there anything special about putting things, like, [OT] in the subject
line, other than being informative?

The reason I ask, is that I would like to send [OT] messages to the most
appropriate list.  

Is there a reference that provides a list of lists for apache.org that can
be used to direct the message to the most appropriate list?


++
| George Sanderson [EMAIL PROTECTED]
| http://www.xorgate.com
++




Re: PerlModule not updating %INC

2001-10-11 Thread Perrin Harkins

 We are using perl 5.6.0 for Apache 1.3/20, with mod_perl 1.26.

Are you sure?  There was a problem with %INC and PerlModule, but I thought
it was fixed in 1.26.

- Perrin




[OT] Overridding a module's use of a function

2001-10-11 Thread George Sanderson

I discovered that File::NCopy uses the function glob to expand file
names.  My problem is that I need to pass file names that have spaces in
them and glob does not process them.  So I did the following override (I
do not need to expand the file names):

package Apache::AAM;
. . .
package File::NCopy;
use subs qw(glob);
sub glob {@_};
package Apache::AAM;
. . .

Is there a better way to do this?

++
| George Sanderson [EMAIL PROTECTED]
| http://www.xorgate.com
++




Re: PerlModule not updating %INC

2001-10-11 Thread David Pisoni

At 18.07 -0400 10/11/2001, Perrin Harkins wrote:
  We are using perl 5.6.0 for Apache 1.3/20, with mod_perl 1.26.

Are you sure?  There was a problem with %INC and PerlModule, but I thought
it was fixed in 1.26.

- Perrin

Indeed, like I said, I tested it by dumping %INC myself -- the modules are indeed 
missing when loaded with PerlModule.

Enjoy,
David



Re: PerlModule not updating %INC

2001-10-11 Thread Perrin Harkins

 At 18.07 -0400 10/11/2001, Perrin Harkins wrote:
   We are using perl 5.6.0 for Apache 1.3/20, with mod_perl 1.26.
 
 Are you sure?  There was a problem with %INC and PerlModule, but I
thought
 it was fixed in 1.26.
 
 - Perrin

 Indeed, like I said, I tested it by dumping %INC myself -- the modules are
indeed missing when loaded with PerlModule.

No, I meant are you sure you're running 1.26?  Please doublecheck it, since
this sounds so much like the bug from the previous release.
- Perrin




Re: [OT] Overridding a module's use of a function

2001-10-11 Thread Robert Landrum

At 5:15 PM -0500 10/11/01, George Sanderson wrote:
I discovered that File::NCopy uses the function glob to expand file
names.  My problem is that I need to pass file names that have spaces in
them and glob does not process them.  So I did the following override (I
do not need to expand the file names):

package Apache::AAM;
. . .
package File::NCopy;
use subs qw(glob);
sub glob {@_};
package Apache::AAM;
. . .

*File::NCopy::glob = sub {@_};  # should do the same thing

I think _Advanced Perl Programming_ covered overriding subs with subrefs...

Rob

--
Only two things are infinite: The universe, and human stupidity. And I'm not
sure about the former. --Albert Einstein



Re: PerlModule not updating %INC

2001-10-11 Thread David Pisoni

At 18.23 -0400 10/11/2001, Perrin Harkins wrote:
  At 18.07 -0400 10/11/2001, Perrin Harkins wrote:
   We are using perl 5.6.0 for Apache 1.3/20, with mod_perl 1.26.
 
 Are you sure?  There was a problem with %INC and PerlModule, but I
thought
 it was fixed in 1.26.
 
 - Perrin

 Indeed, like I said, I tested it by dumping %INC myself -- the modules are
indeed missing when loaded with PerlModule.

No, I meant are you sure you're running 1.26?  Please doublecheck it, since
this sounds so much like the bug from the previous release.
- Perrin

Indeed, here's the signature from Apache::Status :

Embedded Perl version v5.6.0 for Apache/1.3.20 (Unix) (Red-Hat/Linux) 
mod_perl/1.26

Apache.pm shows v1.27 (that's a little weird, but I assume unimportant.)

Thanks,
David



Re: [OT] Overridding a module's use of a function

2001-10-11 Thread Drew Taylor

It's funny you should ask, because I just finished reading that section 
today! :-) On pg 306-7 of the Camel (3rd edition):

*CORE::GLOBAL::glob = sub {
 my $pat = shift;
 my @got;
 # do whatever
 return @got;
}

will override a built-in function everywhere, regardless of namespaces. The 
method you use (namely overriding CORE::function) restricts the overriding 
of the function to the package that requests the import.

At 05:15 PM 10/11/01 -0500, George Sanderson wrote:
I discovered that File::NCopy uses the function glob to expand file
names.  My problem is that I need to pass file names that have spaces in
them and glob does not process them.  So I did the following override (I
do not need to expand the file names):

package Apache::AAM;
. . .
package File::NCopy;
use subs qw(glob);
sub glob {@_};
package Apache::AAM;
. . .

Is there a better way to do this?

Drew Taylor JA[P|m_p|SQL]H
http://www.drewtaylor.com/  Just Another Perl|mod_perl|SQL Hacker
mailto:[EMAIL PROTECTED]  *** God bless America! ***







Re: [OT] Off Topic?

2001-10-11 Thread Perrin Harkins

 Is there anything special about putting things, like, [OT] in the subject
 line, other than being informative?

No, but it does allow people to use automatic mail filters to ignore OT
messages.

 Is there a reference that provides a list of lists for apache.org that can
 be used to direct the message to the most appropriate list?

The list you want may or may not be at apache.org.  There is a list of
resources at the end of The Guide:
http://perl.apache.org/guide/help.html

However, there is a much more complete list for Perl at
http://lists.perl.org/.  And don't forget the USENET groups.  Also, there
are a whole bunch of people at http://perlmonks.org/ who are positively
chafing at the bit to answer tricky Perl questions for you.

- Perrin




Re: [OT] Off Topic?

2001-10-11 Thread Ged Haywood

Hi George,

On Thu, 11 Oct 2001, George Sanderson wrote:

 Is there anything special about putting things, like, [OT] in the subject
 line, other than being informative?

See attached.

73,
Ged.


This document is named admin.txt.

Introduction to The mod_perl Mailing List 
-

Ninety percent of the questions asked on the List have already been
asked before, and answers will be found at one of the links below.
Before you post to the mod_perl List, please read the following.
Hopefully it will save you (and everyone else) some time.

Except where noted the language of all documents is English.


1.  What is mod_perl?

http://perl.apache.org/guide/intro.html#What_is_mod_perl


2.  What you need to know to be able to use mod_perl

You need to know about Apache, CGI and of course about Perl itself.
There are links to extensive resources covering these and other topics
on the mod_perl home - see below for the URI.  If you already have
Perl on your machine then it's likely that you already have the Perl
documentation.  Try typing `perldoc perldoc' and `man perl'.


3.  How to get help with mod_perl itself

http://perl.apache.org

is the mod_perl home, it has links for everything related to mod_perl.

3.1.  Documentation which comes with the distribution

Read the documents which came with mod_perl, particularly the ones
named INSTALL, README and SUPPORT.  Also read the documents to which
they refer.  Read all the relevant documentation about your operating
system, any tools you use such as compilers and databases, and about
the Apache Web server.

You will get a much better response from the mod_perl List if you can
show that you have made the effort of reading the documentation.


3.2.  Other documentation

There are dozens of references to many authoritative resources at

http://perl.apache.org/guide/help.html

These references cover many topics other than mod_perl itself.
See also the section below about the mod_perl Guide.


4.  How to get on (and off!) the mod_perl mailing List

Traffic on the mod_perl List can be high at times, several hundred
posts per week, so you might want to consider subscribing to the
mod_perl Digest List as an alternative to the mod_perl List.

4.1.  To get on the Lists

There are two stages to getting on the list.  Firstly you have to send
a mail message to:

[EMAIL PROTECTED]

or

[EMAIL PROTECTED]

You will receive a reply with detailed instructions.  Secondly you
have to do what it says in the instructions.  After you are subscribed
you will receive a messsage with lots of useful information about the
List.  Read it.  Print it, even.  Save a copy of it.  You *can* get
another copy of it, but then you'll feel silly.

4.2.  To get off the List

Instructions on how to unsubscribe are posted in the headers of every
message which you receive from the List.  Basically you have to send a
message to:

[EMAIL PROTECTED]

Instructions on how to get help are also posted in the headers of
every message which you receive from the List.  Send a message to:

[EMAIL PROTECTED]


5.  To post to the List

Posting to the List is just sending a message to [EMAIL PROTECTED].

Your message will not be accepted unless you have first subscribed,
see the section above.

Do not post questions to [EMAIL PROTECTED], except to
subscribe to the list!  Please do not post to the List to unsubscribe.

5.1.  Private mail

Please do not send private mail to List members unless it is invited.

5.2.  Other tips

5.2.1.  PLEASE read the information in sections 1, 2 and 3 above
before posting.  Please also try to see if your question has been
asked recently, there are links to searchable archives of the List
on the mod_perl home page http://perl.apache.org.

5.2.2.  The Subject: line is important.  Choose an *informative*
Subject: line for the mail header.  Busy List members will skip
messages with unclear subjects.  See also 5.2.8 below.

5.2.3.  To save time and to keep badwidth usage to a minimum, please
keep posts reasonably short, but please make it clear precisely what
you are asking.  If you can, send a *small* example which reproduces
your problem.  Please do not send long scripts which cannot easily be
understood.  Please do not send large attachments of many kilobytes,
if they are needed then put them on the Web somewhere or say in your
message that you can send them separately if they are needed.

5.2.4.  Don't forget that the people reading the list have no idea
even what operating system your computer runs unless you tell them.
Include at least the information requested in the document entitled
SUPPORT which you will find in the mod_perl distribution.

You can see an A HREF=http://perl.apache.org/maillist/goodpost.html;
excellent example/A of a post with good supporting information on
the mod_perl site.  The followup posts show you 

apache::dbi vs mysql relay

2001-10-11 Thread greg

Hello,

Are there any benchmark comparisons between apache::dbi and mysql relay?
We're planning on having four sql servers, one of them will do all of the 
writes to the db and the other three will only be used for reads from the db. 
The data in the db that is doing the writing will be constantly replicated 
across the other three machines.  Which would be better to use to initiate a 
persistent database connection? The main concern we have is having to have 
two different database handles open for one script, one to the machine that 
does the writing and the other to do the reads. Can Apache::DBI detect this?

Thanks in advance,
greg



Re: apache::dbi vs mysql relay

2001-10-11 Thread Perrin Harkins


 Are there any benchmark comparisons between apache::dbi and mysql
relay?

I've never heard of this mysql relay before.  A Google search found
this:
http://www.firstworks.com/sqlrelay.html

Is that it?  Looks interesting!

 We're planning on having four sql servers, one of them will do all of
the
 writes to the db and the other three will only be used for reads from
the db. 
 The data in the db that is doing the writing will be constantly
replicated
 across the other three machines.  Which would be better to use to
initiate a
 persistent database connection? The main concern we have is having to
have
 two different database handles open for one script, one to the machine
that
 does the writing and the other to do the reads. Can Apache::DBI detect
this?

Apache::DBI can certainly tell the difference between two database
handles.  It caches based on your connection parameters.

For raw performance, you can't beat Apache::DBI.  It simply does a hash
lookup, and uses an already open connection if there is one.  SQL Relay
appears to need at least one socket connection to be created at the
beginning of each request and torn down at the end.

SQL Relay looks like it would scale further though, in situations where
the number of open database connections becomes an issue.  This is
generally not a problem for small sites or sites running databases like
Oracle on big iron, but it could be in your situation, using MySQL.

Also, SQL Relay claims to have load balancing features between multiple
replicated databases.  With Apache::DBI, you would need to configure
your mod_perl servers to point to specific databases.

If you try this thing out, please report back to the list on how it
works for you.  I think a lot of people here might be interested.

- Perrin




cvs commit: modperl-2.0/src/modules/perl modperl_config.h

2001-10-11 Thread dougm

dougm   01/10/11 08:38:23

  Modified:src/modules/perl modperl_config.h
  Log:
  add MP_dTHX macro
  
  Revision  ChangesPath
  1.28  +10 -0 modperl-2.0/src/modules/perl/modperl_config.h
  
  Index: modperl_config.h
  ===
  RCS file: /home/cvs/modperl-2.0/src/modules/perl/modperl_config.h,v
  retrieving revision 1.27
  retrieving revision 1.28
  diff -u -r1.27 -r1.28
  --- modperl_config.h  2001/08/08 16:20:31 1.27
  +++ modperl_config.h  2001/10/11 15:38:23 1.28
  @@ -59,6 +59,16 @@
   #   define MP_dSCFG_dTHX dTHXa(scfg-perl)
   #endif
   
  +/* hopefully this macro will not need to be used often */
  +#ifdef USE_ITHREADS
  +#   define MP_dTHX \
  +modperl_interp_t *interp = \
  +   modperl_interp_select(r, r-connection, r-server); \
  +dTHXa(interp-perl)
  +#else
  +#   define MP_dTHX dNOOP
  +#endif
  +
   int modperl_config_apply_PerlModule(server_rec *s,
   modperl_config_srv_t *scfg,
   PerlInterpreter *perl, apr_pool_t *p);
  
  
  



Re: perl.apache.org / apache.perl.org

2001-10-11 Thread brian moseley

On Sun, 7 Oct 2001, Stas Bekman wrote:

 can you please post the URL again? thanks!

http://thisishomemade.com/for/modperl/site/

like he said before, it's really just a reorganization of
the available information, rather than a complete site
architecture with fancy rollover navigation, huge menu bars,
swooshes and swirls. what with mp2 and what not, it may be
that this design's time has passed.




Re: perl.apache.org / apache.perl.org

2001-10-11 Thread brian moseley

On Sun, 7 Oct 2001, Stas Bekman wrote:

 We have had two new designs worked out long time ago,
 but one has been picked by take23.org and the other
 wasn't applied. (hi brian)

:(

sorry! i have this tendency to bite off more than i can
chew. i have 10 projects and none of them will ever be
finished.

 What I want to say, is that it's not a point of where to
 host the site.  The point is that we need someone to do
 the job of re-doing and making it easy to maintain the
 site, to keep it nice.

jim's design is still available if somebody wants to use it.




cvs commit: modperl-2.0/lib/Apache Build.pm

2001-10-11 Thread dougm

dougm   01/10/11 12:32:43

  Modified:lib/Apache Build.pm
  Log:
  fixup ldopts for hpux
  
  Revision  ChangesPath
  1.48  +8 -0  modperl-2.0/lib/Apache/Build.pm
  
  Index: Build.pm
  ===
  RCS file: /home/cvs/modperl-2.0/lib/Apache/Build.pm,v
  retrieving revision 1.47
  retrieving revision 1.48
  diff -u -r1.47 -r1.48
  --- Build.pm  2001/09/13 02:01:31 1.47
  +++ Build.pm  2001/10/11 19:32:43 1.48
  @@ -127,6 +127,14 @@
   my $ldopts = ExtUtils::Embed::ldopts();
   chomp $ldopts;
   
  +if ($^O eq 'hpux' and $Config{ld} eq 'ld') {
  +while ($ldopts =~ s/-Wl,(\S+)/$1/) {
  +my $cp = $1;
  +(my $repl = $cp) =~ s/,/ /g;
  +$ldopts =~ s/\Q$cp/$repl/;
  +}
  +}
  +
   if ($self-{MP_USE_GTOP}) {
   $ldopts .= $self-gtop_ldopts;
   }
  
  
  



cvs commit: modperl-2.0 Makefile.PL

2001-10-11 Thread dougm

dougm   01/10/11 12:48:08

  Modified:.Makefile.PL
  Log:
  add os specific sanity checks starting with hpux
  
  Revision  ChangesPath
  1.43  +19 -0 modperl-2.0/Makefile.PL
  
  Index: Makefile.PL
  ===
  RCS file: /home/cvs/modperl-2.0/Makefile.PL,v
  retrieving revision 1.42
  retrieving revision 1.43
  diff -u -r1.42 -r1.43
  --- Makefile.PL   2001/10/11 03:29:32 1.42
  +++ Makefile.PL   2001/10/11 19:48:08 1.43
  @@ -181,6 +181,7 @@
   
   $build-lib_check('gdbm');
   malloc_check();
  +os_check();
   }
   
   sub malloc_check {
  @@ -200,6 +201,24 @@
   }
   }
   
  +sub os_check {
  +my $check = \{os_check_$^O};
  +return unless defined $check;
  +$check-()
  +}
  +
  +sub os_check_hpux {
  +my $ccflags = $build-perl_config('ccflags');
  +
  +if ($build-{MP_USE_DSO} and $Config{ld} eq 'ld') {
  +unless ($ccflags =~ /\+z/i) {
  +$build-phat_warn(EOF);
  +mod_perl is unlikely to link with your libperl, suggestions:
  +*) Rebuild Perl with Configure -Accflags=+Z ...
  +EOF
  +}
  +}
  +}
   
   # by default only Makefile.PL's in the first level sub-dirs are
   # discovered. If you want to reach a Makefile.PL's in some remote
  
  
  



Re: perl.apache.org / apache.perl.org

2001-10-11 Thread Nathan Torkington

Stas Bekman writes:
 Everything is under CVS, and if somebody wants to come and give a
 hand to redo the site, there is no problem to give a cvs access to
 this person.

I'll chew on a new layout and give you something by the end of the
week.  Thanks,

Nat




cvs commit: modperl-2.0/lib/Apache Build.pm

2001-10-11 Thread dougm

dougm   01/10/11 17:23:51

  Modified:lib/Apache Build.pm
  Log:
  fixup hpux cflags
  
  Revision  ChangesPath
  1.49  +16 -1 modperl-2.0/lib/Apache/Build.pm
  
  Index: Build.pm
  ===
  RCS file: /home/cvs/modperl-2.0/lib/Apache/Build.pm,v
  retrieving revision 1.48
  retrieving revision 1.49
  diff -u -r1.48 -r1.49
  --- Build.pm  2001/10/11 19:32:43 1.48
  +++ Build.pm  2001/10/12 00:23:50 1.49
  @@ -178,10 +178,25 @@
   $ccopts;
   }
   
  +sub ccopts_hpux {
  +my $cflags = shift;
  +#return if $Config{cc} eq 'gcc'; #XXX?
  +return if $$cflags =~ /(-Ae|\+e)/;
  +$$cflags .=  -Ae;
  +}
  +
   sub ccopts {
   my($self) = @_;
  +
  +my $cflags = $self-strip_lfs(ExtUtils::Embed::ccopts()) .
  +  $self-ap_ccopts;
  +
  +my $fixup = \{ccopts_$^O};
  +if (defined $fixup) {
  +$fixup-(\$cflags);
  +}
   
  -$self-strip_lfs(ExtUtils::Embed::ccopts()) . $self-ap_ccopts;
  +$cflags;
   }
   
   sub perl_config {