RE: Apache::Request problem (possible bug)

2001-04-06 Thread Geoffrey Young

 this was fixed in cvs this past month.  check out the archive of the
apreq-dev list (if there is one somewhere) to see the details.  basically it
was because using param() to set a variable was calling Apache::Table-set,
which stringifies its arguments.  Now it calls Apache::Table-add and does
some undef'ing, allowing you to set multiple values from a ref.


--Geoff

-Original Message--
From: Cees Hek
To: [EMAIL PROTECTED]
Sent: 4/6/01 11:07 AM
Subject: Apache::Request problem (possible bug)


Either I've found a problem with Apache::Request, or I don't know what
I'm
doing :)

Setting variables with $r-param() doesn't seem to work for array
references.  ie the following line from the man page doesn't work
correctly

$r-param('foo' = [qw(one two three)]);

When you look at foo afterwards it returns the string 'ARRAY(0x8c04fd8)'
instead of an actual reference to the array.  

I have include a basic handler that demostrates this on my machine
(Apache/1.3.17 mod_perl/1.24 perl 5.005_03)


package Apache::Test;
# File: Apache/Test.pm

use strict;
use Apache::Constants qw(:common);
use Apache::Request ();

sub handler {
my $r = new Apache::Request(shift);

$r-content_type('text/html');
$r-send_http_header();

my @list = $r-param('list');

$r-param('newlist' = [qw(one two three)]);

my @newlist = $r-param('newlist');

my $list = join ', ', @list;
my $newlist = join ', ', @newlist;
print "EOM";

HTML
BODY
list - $listBR
newlist - $newlistBR
BR
FORM
SELECT NAME="list" MULTIPLE
  OPTIONBlue
  OPTIONGreen
  OPTIONRed
  OPTIONYellow
/SELECT
INPUT TYPE="submit"
/FORM
/BODY
/HTML
EOM

return OK;
}

1;



-- 
Cees Hek
SiteSuite Corporation
[EMAIL PROTECTED]



Re: system(), exec()?

2001-04-06 Thread Stas Bekman

On Thu, 5 Apr 2001, Mike Austin wrote:

 On Thu, 5 Apr 2001, Stas Bekman wrote:

  httpd.conf:
  PerlSetEnv PERL5OPT -Mops=system

 Doesn't work.  I'm still able to use the system() call.

 Here's the stanza I used:

 Location /perl/
 PerlSetEnv PERL5OPT -M-ops=system
 SetHandler perl-script
 PerlHandler Apache::Registry
 Options +ExecCGI
 PerlSendHeader On
 /Location

True, I've played with -Mop:subprocess, which works from the command line,
but not if you set it from the httpd.conf... I guess you need to dive into
Opcode.pm to find out the fine details.

I was lucky to sit next to Nat here at ApacheCon, so here is one way to
hack it:

package My::Override;
require Exporter;
@ISA = 'Exporter';
@EXPORT_OK = qw(GLOBAL_system system);
sub import {
my $pkg = shift;
return unless @_;
my $sym = shift;
my $where = ($sym =~ s/^GLOBAL_// ? 'CORE::GLOBAL' : caller(0));
$pkg-export($where, $sym, @_);
}
sub system {
warn "cannot run @_";
}
1;

then in your code:

  my $r = shift;
  $r-send_http_header("text/plain");
  $r-print("Hello $$\n");
  $ENV{PATH} = '';

  use My::Override qw(system);
  system("/bin/echo", "hello");

prints:

  cannot run /bin/echo hello at /home/httpd/perl/My/Override.pm line 13.

Since you want to override this for the whole interpreter you do this in
the startup.pl:

  use My::Override qw(GLOBAL_system);

the only problem is that people can still call CORE::system() and get the
original function.

Philip told me that he has hacked Apache::Registry to use Safe.pm, and it
works well for him.

_
Stas Bekman  JAm_pH --   Just Another mod_perl Hacker
http://stason.org/   mod_perl Guide  http://perl.apache.org/guide
mailto:[EMAIL PROTECTED]   http://apachetoday.com http://logilune.com/
http://singlesheaven.com http://perl.apache.org http://perlmonth.com/






Re: Apache::Compress and Apache::Filter

2001-04-06 Thread Dirk Lutzebaeck

Ken Williams writes:
  Hi JR,
  
  I've been avoiding this bug to my peril.  Does the following patch fix it?
  
  =
  --- Filter.pm   2000/12/20 03:43:44 1.16
  +++ Filter.pm   2001/04/06 05:05:24
  @@ -120,8 +120,8 @@
   
   sub send_fd {
 my $self = shift;
  -  if ($self-is_last_filter) {
  +  if ($self-is_last_filter and !Universal::isa($_[0], ref $self)) {
   $self-SUPER::send_fd(@_);
 } else {
   my $fd = shift;
  =
  
  The bug occurs when the client doesn't support gzip, and you're using
  Apache::Filter, and Apache::Compress is the final filter in the chain.

Ken, would you mind to put a new version onto cpan if it works. I had
the problem myself sometime ago but hadn't fixed it the way you
proposed but patched Apache::Compress not to use send_fd but using a
while loop.

Dirk



Re: CGI - mod_perl 101

2001-04-06 Thread Brett W. McCoy

On Fri, 6 Apr 2001, Paul Lombardo wrote:

 What is the best way (Is there a reference source)  to move cgi scripts to
 perl modules so they run under mod_perl?

http://perl.apache.org/dist/cgi_to_mod_perl.html

-- Brett
   http://www.chapelperilous.net/btfwk/

When in doubt, do it.  It's much easier to apologize than to get permission.
-- Grace Murray Hopper




Long KeepAlives sensible?

2001-04-06 Thread Elizabeth Mattijsen

I realise that KeepAlives are discouraged in combination with mod_perl.

However, for a project I'm working on, I would like to try to have 
KeepAlive On to allow for _very_ quick response times.  I can set the 
Content-Length: header for my output, so there is no problem there.  And 
the way the things will be set up, is that every user only uses 1 
persistent connection (just for the html/xml only, other stuff will be 
retrieved from other servers).  I'm thinking of KeepAliveTimeouts of up to 
300 seconds.  You could think of it as session caching on a connection.

The data served consists of potentially many millions of newsgroup and 
mailing list messages (yes: we'll be doing Perl-related stuff also).  Some 
data (which newsgroups and mailinglist, which start of threads, etc) will 
be loaded at startup of the server and shared "globally" by all apache 
children.  Data pertaining to a particular newsgroup will be loaded on 
demand in the apache child handling the request.


I see the following potential problems with this approach:

1. To facilitate memory management, I would like to have the apache child 
terminate whenever the keep-alive connection is broken or has timed 
out.  There does not seem to be a handler that will handle the end of a 
keep-alive connection yet.  Is that correct?  Is there a way around it?

2. when a user initiates another request before the first request is 
finished, a different apache child will be used to service the request, 
thereby breaking the other persistent connection.  This may cause several 
children to co-exist with essentially the same data internally, but not 
being shared at the os memory level.


I guess my questions really are: does such an approach make sense?  Are 
there solutions to the problems mentioned above?  Are there any pitfalls 
that I didn't realise yet?


Any feedback would be greatly appreciated.


Elizabeth Mattijsen




Re: Long KeepAlives sensible?

2001-04-06 Thread Elizabeth Mattijsen

At 02:36 PM 4/6/01 +0200, Elizabeth Mattijsen wrote:
1. To facilitate memory management, I would like to have the apache child 
terminate whenever the keep-alive connection is broken or has timed 
out.  There does not seem to be a handler that will handle the end of a 
keep-alive connection yet.  Is that correct?  Is there a way around it?

I just realised this is a non-issue.  Just do a Apache-child_terminate and 
the child will terminate at the end of the request, which _is_ at the end 
of the KeepAlive...


Elizabeth Mattijsen




Re: Apache::Request problem (possible bug)

2001-04-06 Thread Kee Hinckley

-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

At 1:07 AM +1000 4/7/01, Cees Hek wrote:
   $r-param('newlist' = [qw(one two three)]);

   my @newlist = $r-param('newlist');

my @newlist = @{$r-param('newlist')};


What you stored was not an array, but a reference to an array.
- -- 

Kee Hinckley - Somewhere.Com, LLC - Cyberspace Architects
Now Playing - Folk, Rock, odd stuff - http://www.somewhere.com/playlist.cgi
Now Writing - Technosocial buzz - http://commons.somewhere.com/buzz/

I'm not sure which upsets me more: that people are so unwilling to accept
responsibility for their own actions, or that they are so eager to regulate
everyone else's.

-BEGIN PGP SIGNATURE-
Version: PGPfreeware 7.0.3 for non-commercial use http://www.pgp.com

iQA/AwUBOs3IhyZsPfdw+r2CEQKJdgCggzcUkVZyshv0FlIon8adiDRqOIwAnRWv
EDOxp/nQOjVxPJRyhd/BydE3
=Eyiy
-END PGP SIGNATURE-



execute JAR procedures

2001-04-06 Thread cbell

Hello everyone, I'm looking for a way to execute JAVA procedures in a
JAR file from my modperl programs.  I have a couple .jar files that I
would like to import somehow into my perl scripts, and then be able to
execute the functions in them.

I've been looking through the Jakarta and Tomcat stuff but it seems like
overkill, this is the only JAVA I am using right now and was hoping
there was a simpler way.

My configuration is:  Redhat 6.2, Apache 1.3.14, mod_perl 1.24_01, and
mod_ssl-2.7.1-1.3.14.

Thanks in advance,
Chris.




Re: execute JAR procedures

2001-04-06 Thread Ilya Martynov


c Hello everyone, I'm looking for a way to execute JAVA procedures in a
c JAR file from my modperl programs.  I have a couple .jar files that I
c would like to import somehow into my perl scripts, and then be able to
c execute the functions in them.

c I've been looking through the Jakarta and Tomcat stuff but it seems like
c overkill, this is the only JAVA I am using right now and was hoping
c there was a simpler way.

Take a look at 'Java' or 'Inline-Java' module available from CPAN.

-- 
 -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
| Ilya Martynov (http://martynov.org/)|
| GnuPG 1024D/323BDEE6 D7F7 561E 4C1D 8A15 8E80  E4AE BE1A 53EB 323B DEE6 |
| AGAVA Software Company (http://www.agava.com/)  |
 -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-



Re: Apache::Compress and Apache::Filter

2001-04-06 Thread JR Mayberry

I hack/fixed it by taking out the check to see if its the last module in a
chain..

For me, that is always a safe assumption..

Let me know if theres ever a real fix..


- Original Message -
From: "Ken Williams" [EMAIL PROTECTED]
To: "JR Mayberry" [EMAIL PROTECTED]
Cc: [EMAIL PROTECTED]
Sent: Friday, April 06, 2001 1:10 AM
Subject: Re: Apache::Compress and Apache::Filter


 Hi JR,

 I've been avoiding this bug to my peril.  Does the following patch fix it?

 =
 --- Filter.pm   2000/12/20 03:43:44 1.16
 +++ Filter.pm   2001/04/06 05:05:24
 @@ -120,8 +120,8 @@

  sub send_fd {
my $self = shift;
 -  if ($self-is_last_filter) {
 +  if ($self-is_last_filter and !Universal::isa($_[0], ref $self)) {
  $self-SUPER::send_fd(@_);
} else {
  my $fd = shift;
 =

 The bug occurs when the client doesn't support gzip, and you're using
 Apache::Filter, and Apache::Compress is the final filter in the chain.


 [EMAIL PROTECTED] (JR Mayberry) wrote:
 Does anyone know anything about the above combo, and getting an error
 message:
 Bad filehandle at Filter.pm line 123
 
 when using a client that doesnt support gzip..(specifically 'ab', apache
 bench)


   ------
   Ken Williams Last Bastion of Euclidity
   [EMAIL PROTECTED]The Math Forum




Re: accessing SSL environment data in Perl*Handler

2001-04-06 Thread Nikolaus Rath

* Paul [EMAIL PROTECTED] wrote:
 Though I feel rather foolish, the fact remains that I can't seem to
 find my SSL environment variables.
 
 httpd.conf has
 
 Directory /
SSLVerifyClient   require
SSLOptions+StdEnvVars 
 # ...
 /Directory
 
 Exactly when and where are they set? 

In the fixup handler.

 For example, SSL_CLIENT_S_DN. Once set, shouldn't I be able to just
 say $ENV{SSL_CLIENT_S_DN}?
 
 My PerlPostReadRequestHandler can't seem to see them,

Yes, because it is run before the fixup handler. You must use a sub
request to get the values.


  - Nikolaus

-- 
Bitte wenden.




Re: Long KeepAlives sensible?

2001-04-06 Thread Stas Bekman

 I realise that KeepAlives are discouraged in combination with mod_perl.

 However, for a project I'm working on, I would like to try to have
 KeepAlive On to allow for _very_ quick response times.  I can set the

Theo Schlossnagle at his talk (ApacheCon) yesterday has shown a setup
where one uses Keep-Alives with mod_perl, where mod_backhand is used at
the front end, instead of mod_proxy/squid. Basically the mod_perl
processes keep a constant connection to the front end server and
mod_backhand uses those connections as a pool. Check out
http://www.backhand.org/mod_backhand/.

I'm planning to add a section on this topic to the guide, but since I'm
busy working on finishing the book it might take a while before I get to
actually do it. So if anyone can write about it beforehand, that would be
really cool to have. Thanks!

_
Stas Bekman  JAm_pH --   Just Another mod_perl Hacker
http://stason.org/   mod_perl Guide  http://perl.apache.org/guide
mailto:[EMAIL PROTECTED]   http://apachetoday.com http://logilune.com/
http://singlesheaven.com http://perl.apache.org http://perlmonth.com/





Re: Apache::Compress and Apache::Filter

2001-04-06 Thread Ken Williams

Yeah, looks like I need to look at this problem for real.  Your fix
should be fine - in fact, it'll work in all cases, it's just not as fast
as possible if a real send_fd can be done.

I'll get something working soon and release it.


[EMAIL PROTECTED] (JR Mayberry) wrote:
I hack/fixed it by taking out the check to see if its the last module in a
chain..

For me, that is always a safe assumption..

Let me know if theres ever a real fix..


- Original Message -
From: "Ken Williams" [EMAIL PROTECTED]
To: "JR Mayberry" [EMAIL PROTECTED]
Cc: [EMAIL PROTECTED]
Sent: Friday, April 06, 2001 1:10 AM
Subject: Re: Apache::Compress and Apache::Filter


 Hi JR,

 I've been avoiding this bug to my peril.  Does the following patch fix it?

 =
 --- Filter.pm   2000/12/20 03:43:44 1.16
 +++ Filter.pm   2001/04/06 05:05:24
 @@ -120,8 +120,8 @@

  sub send_fd {
my $self = shift;
 -  if ($self-is_last_filter) {
 +  if ($self-is_last_filter and !Universal::isa($_[0], ref $self)) {
  $self-SUPER::send_fd(@_);
} else {
  my $fd = shift;
 =

 The bug occurs when the client doesn't support gzip, and you're using
 Apache::Filter, and Apache::Compress is the final filter in the chain.


 [EMAIL PROTECTED] (JR Mayberry) wrote:
 Does anyone know anything about the above combo, and getting an error
 message:
 Bad filehandle at Filter.pm line 123
 
 when using a client that doesnt support gzip..(specifically 'ab', apache
 bench)


   ------
   Ken Williams Last Bastion of Euclidity
   [EMAIL PROTECTED]The Math Forum



  ------
  Ken Williams Last Bastion of Euclidity
  [EMAIL PROTECTED]The Math Forum



Re: Question and problem with graphics and Apache:ASP running.

2001-04-06 Thread Joshua Chamas

Steve Hurley wrote:
 
 When I turn on Apache:ASP and try to load a few html files it messes up the graphics 
at the top.
 
   Now if I turn off the ASP, graphics load fine...
   Page with banner graphics split up: http://www.clark.cc.oh.us/asp/student.html
   page with one banner graphic...: http://www.clark.cc.oh.us/asp/student2.html
 
   in http.conf:
   Location /asp/
   SetHandler perl-script
   PerlHandler Apache::ASP
   PerlSetVar Global /tmp
   /Location
 

If you want to mix media types in the same directory, use the 
Files Apache config to mark certain files for Apache::ASP execution
like so:

Files ~ (\.htm$)
SetHandler  perl-script
PerlHandler Apache::ASP
PerlSetVar  NoState 1
/Files

I'm guessing that Apache::ASP was trying to parse anything under
/asp/, including graphics, which just _might_ mess things up :)

-- Josh
_
Joshua Chamas   Chamas Enterprises Inc.
NodeWorks  free web link monitoring   Huntington Beach, CA  USA 
http://www.nodeworks.com1-714-625-4051



Re: Long KeepAlives sensible?

2001-04-06 Thread Elizabeth Mattijsen

At 08:16 PM 4/6/01 -0700, Stas Bekman wrote:
  I realise that KeepAlives are discouraged in combination with mod_perl.
  However, for a project I'm working on, I would like to try to have
  KeepAlive On to allow for _very_ quick response times.  I can set the
Theo Schlossnagle at his talk (ApacheCon) yesterday has shown a setup
where one uses Keep-Alives with mod_perl, where mod_backhand is used at
the front end, instead of mod_proxy/squid. Basically the mod_perl
processes keep a constant connection to the front end server and
mod_backhand uses those connections as a pool. Check out
http://www.backhand.org/mod_backhand/.

Interesting approach...  would be a good option for scaling up my approach 
when needed without the pooling of connections...


I'm planning to add a section on this topic to the guide, but since I'm
busy working on finishing the book it might take a while before I get to
actually do it. So if anyone can write about it beforehand, that would be
really cool to have. Thanks!

I'm preparing a presentation about this project for the Amsterdam Perl 
Mongers and/or YAPC::Europe in Amsterdam in August.  No doubt parts of that 
will be usable for the guide... but that's not now so if anyone else wants 
to have a go at it...  ;-)


Elizabeth Mattijsen




Re: Long KeepAlives sensible?

2001-04-06 Thread Michael

 At 02:36 PM 4/6/01 +0200, Elizabeth Mattijsen wrote:
 1. To facilitate memory management, I would like to have the apache child 
 terminate whenever the keep-alive connection is broken or has timed 
 out.  There does not seem to be a handler that will handle the end of a 
 keep-alive connection yet.  Is that correct?  Is there a way around it?
 
 I just realised this is a non-issue.  Just do a
 Apache-child_terminate and the child will terminate at the end of
 the request, which _is_ at the end of the KeepAlive...
 
Hmmm
What if you want to explicitly zap the KeepAlives but not terminate 
the child. Example -- http chat scripts. Basically it amounts to 
having KeepAlives off for the particular script but on for everything 
else. How does one accomplish this.

Michael
[EMAIL PROTECTED]



RE: Long KeepAlives sensible?

2001-04-06 Thread Rob Bloodgood


 What if you want to explicitly zap the KeepAlives but not terminate 
 the child. Example -- http chat scripts. Basically it amounts to 
 having KeepAlives off for the particular script but on for everything 
 else. How does one accomplish this.

$r-header_out(Connection = 'close');

L8r,
Rob



Re: HELP: DBI Issues

2001-04-06 Thread Michael Peppler

Brendan McAdams writes:
  Unfortunately one of our sysadmins discovered a problem when he was
  stress testing the system: If he clicks a link to one of the apps
  components several times in succession, sybase's connections start
  dying.

  An example of sybase errors:
  [Fri Apr  6 17:02:50 2001] null: WARNING: Returning REPORT
  SPECIFICATION.
  [Fri Apr  6 17:02:50 2001] null: no statement executing at
  /usr/local/apache/lib/perl/Apache/MuniCenter/MuniTable.pm line 342.
  [Fri Apr  6 17:02:50 2001] null: DBD::Sybase::st fetchrow failed:
  OpenClient message: LAYER = (4) ORIGIN = (1) SEVERITY = (5) NUMBER =
  (28)
  [Fri Apr  6 17:02:50 2001] null: Message String: ct_fetch(): protocol
  specific layer: external error: There is a tds protocol error. An
  illegal token was received.

This is rather strange. Could you give me more information on your
setup? Are you using Sybase's OpenClient, or FreeTDS?
What version of Sybase and/or OpenClient do you have?

Thanks,

Michael
-- 
Michael Peppler - Data Migrations Inc. - [EMAIL PROTECTED]
http://www.mbay.net/~mpeppler - [EMAIL PROTECTED]
International Sybase User Group - http://www.isug.com
Sybase on Linux mailing list: [EMAIL PROTECTED]



RE: HELP: DBI Issues

2001-04-06 Thread Brendan McAdams

OpenClient, 11.1.1 patchlevel 8058
Sybase server 11.9.2

It's some rather heavy stored procedures returning large result sets.
Past that, what data do you need? 

-Original Message-
SNIP

This is rather strange. Could you give me more information on your
setup? Are you using Sybase's OpenClient, or FreeTDS?
What version of Sybase and/or OpenClient do you have?

Thanks,

Michael
-- 
Michael Peppler - Data Migrations Inc. - [EMAIL PROTECTED]
http://www.mbay.net/~mpeppler - [EMAIL PROTECTED]
International Sybase User Group - http://www.isug.com
Sybase on Linux mailing list: [EMAIL PROTECTED]



RE: HELP: DBI Issues

2001-04-06 Thread Brendan McAdams

Unfortunately mySQL would choke about 5 minutes into production for our
application and what we are doing 
I need a sybase solution.



ANNOUNCE: Apache::Filter 1.017

2001-04-06 Thread Ken Williams

The URL

http://www.mathforum.com/~ken/modules/archive/Apache-Filter-1.017.tar.gz

has entered CPAN as

  file: $CPAN/authors/id/K/KW/KWILLIAMS/Apache-Filter-1.017.tar.gz
  size: 24147 bytes
   md5: 304aabb626ae8694ca75e639b1981e7b


Changes from 1.016:

   Fixed a filehandle bug in which send_fd() would complain about a 'Bad
   filehandle'.  Occurred most often with Apache::Compress.
   
   Added a couple of tests to properly exercise the send_fd() method.


  ------
  Ken Williams Last Bastion of Euclidity
  [EMAIL PROTECTED]The Math Forum



Re: ANNOUNCE: Apache::Filter 1.017

2001-04-06 Thread JR Mayberry

Is it required to, for instance, if you had a 4 chain handler as follows:

ReadCache-Handler-WriteCache-Apache::Compress

for the WriteCache handler to do:  $r-filter_input() and $r-print() while
$fh  even if it doesnt need to?

If I don't do that I seem to be losing all output, when I get to the
Apache::Compress stage



- Original Message -
From: "Ken Williams" [EMAIL PROTECTED]
To: "modperl" [EMAIL PROTECTED]
Cc: "JR Mayberry" [EMAIL PROTECTED]
Sent: Friday, April 06, 2001 6:02 PM
Subject: ANNOUNCE: Apache::Filter 1.017


 The URL


http://www.mathforum.com/~ken/modules/archive/Apache-Filter-1.017.tar.gz

 has entered CPAN as

   file: $CPAN/authors/id/K/KW/KWILLIAMS/Apache-Filter-1.017.tar.gz
   size: 24147 bytes
md5: 304aabb626ae8694ca75e639b1981e7b


 Changes from 1.016:

Fixed a filehandle bug in which send_fd() would complain about a 'Bad
filehandle'.  Occurred most often with Apache::Compress.

Added a couple of tests to properly exercise the send_fd() method.


   ------
   Ken Williams Last Bastion of Euclidity
   [EMAIL PROTECTED]The Math Forum




RE: HELP: DBI Issues

2001-04-06 Thread Paul Singh


Brendan,

It's scary how closely your situation mirrors what we encountered a few
months back... and i'm afraid I don't have a very positive answer for you.

Though the specific errors you are receiving are slightly different, I have
a feeling it's a similar problem... unfortunately, I can't remember the
exact error messages we were encountering.

Anyway, for us everything worked flawlessly until we did a little (and i
mean LITTLE) stress testing... connections would just start dying... without
being marked as such.  We tried everything... on the phone wih Sybase tech
support for countless hours... they kept insisting that it was a problem
with our OS (linux) TCP/IP layer... lame explanation obviously... we tried a
packet sniffer to see if that would turn up anything... even got in touch
with Tim Bunce and Mike Peppler I believe... anyway, at the last minute, and
I do mean last minute, we ended up switching to mysql... fortunately, this
wasn't too difficult since we'd written a class to abstract away from the
DB... everything has been smooth sailing ever since... and we've saved a ton
in Sybase license fees.

The moral?  I don't know... but just be ready for a battle.

Good luck.

JPS


 -Original Message-
 From: Brendan McAdams [mailto:[EMAIL PROTECTED]]
 Sent: Friday, April 06, 2001 5:22 PM
 To: [EMAIL PROTECTED]
 Subject: HELP: DBI Issues


 Hoping someone can help me; I'm working on rolling out a mod_perl
 rewritten release (to push some major performance increases on our
 application).

 It works *beautifully* - our performance increase is up to 300% over
 traditional CGI.

 Unfortunately one of our sysadmins discovered a problem when he was
 stress testing the system: If he clicks a link to one of the apps
 components several times in succession, sybase's connections start
 dying.

 We have tried this with and without apache::dbi running.

 As far as I can figure, what is happening is that when the client closes
 its end (when it requests the new report, aborting the previous one),
 mod_perl is terminating, but leaving the half processed result set
 hanging in sybase.  Subsequent requests to Sybase start choking,
 although after several minutes (5-10)  we see Sybase and mod_perl
 usually straighten themselves out; this is unfortunately unacceptable.


 I need to figure  out a way to handle the possibility of a client abort,
 and gracefully close the result set (these are fairly large result sets
 being returned from a stored procedure) without choking sybase.  This is
 a critical release and I need to get this resolved as quickly as
 possible.

 An example of sybase errors:
 [Fri Apr  6 17:02:50 2001] null: WARNING: Returning REPORT
 SPECIFICATION.
 [Fri Apr  6 17:02:50 2001] null: no statement executing at
 /usr/local/apache/lib/perl/Apache/MuniCenter/MuniTable.pm line 342.
 [Fri Apr  6 17:02:50 2001] null: DBD::Sybase::st fetchrow failed:
 OpenClient message: LAYER = (4) ORIGIN = (1) SEVERITY = (5) NUMBER =
 (28)
 [Fri Apr  6 17:02:50 2001] null: Message String: ct_fetch(): protocol
 specific layer: external error: There is a tds protocol error. An
 illegal token was received.
 [Fri Apr  6 17:02:51 2001] null: DBD::Sybase::st execute failed:
 OpenClient message: LAYER = (4) ORIGIN = (1) SEVERITY = (5) NUMBER =
 (28)
 [Fri Apr  6 17:02:51 2001] null: Message String: ct_results(): protocol
 specific layer: external error: There is a tds protocol error. An
 illegal token was received.
 [Fri Apr  6 17:02:51 2001] null: WARNING: Returning REPORT DETAILS.
 [Fri Apr  6 17:02:51 2001] null: no statement executing at
 /usr/local/lib/perl5/site_perl/5.005/sun4-solaris/DBI.pm line 1093.
 [Fri Apr  6 17:02:51 2001] null: ct_cmd_alloc failed at
 /usr/local/apache/lib/perl/Apache/MuniCenter/MuniTable.pm line 329.
 [Fri Apr  6 17:02:51 2001] null: DBD::Sybase::st execute failed:
 OpenClient message: LAYER = (1) ORIGIN = (1) SEVERITY = (1) NUMBER =
 (50)
 [Fri Apr  6 17:02:51 2001] null: Message String: ct_cmd_alloc(): user
 api layer: external error: The connection has been marked dead.

 Thanks,

 Brendan

 -
 Brendan W. McAdams   |   [EMAIL PROTECTED]
 Senior Applications Developer | (212) 208-9116
 TheMuniCenter, LLC | www.themunicenter.com

 "Always listen to experts. They'll tell you what can't be done, and why.
 Then do it."
 - Robert A. Heinlein


Shop online without a credit card
http://www.rocketcash.com
RocketCash, a NetZero subsidiary



Re: How to make Apache (use Apache::ASP?) send out thecontent-length of documents generated on the fly

2001-04-06 Thread Joshua Chamas

Ying Li wrote:
 
 Hi,
 
 Is there any way to tell Apache server to send the Content-Length header base on the 
dynamically-generated query result? Any help will be
 appreciated.
 

With Apache::ASP this will happen automatically for you
if you have BufferingOn set, since Apache::ASP knows the 
full length of the document when it flush the headers.

I don't know about other environments.

--Josh
_
Joshua Chamas   Chamas Enterprises Inc.
NodeWorks  free web link monitoring   Huntington Beach, CA  USA 
http://www.nodeworks.com1-714-625-4051



Re: Lustful thought re: Apache 2.0... (was Re: Apache::Compressand Apache::Filter)

2001-04-06 Thread modperl

Hmm, We actually already have most of this implemented. Not persay
outgoing data though bucket brigade style though.

We just have an output module that handles all of this.  Print that object
rather then $r and it works really well.  Its actually more then just
s/before/after/g though,  we have that written as well, but being able to
go through and as the last thing before output is sent to the client
determine that we want a red background rather then white, or that certian
javascript should be put into the onload tag.

Rather fun.  The real idea for it actually came after listening to Ryan's
talk last year at OSS con and deciding we didn't want to wait that long
for it.

Sott

On Fri, 6 Apr 2001, Sean Chittenden wrote:
   PS For those of you who weren't here, the mod_perl
 2.0/Apache/2.0 talks by Doug/Ryan (respectively) were really awesome!!!
 The demo from Doug was pretty damn swift...  imagine being able to do
 s/before/after/g on a piece of outgoing data...  sessions have never
 been more cool/easy.




Passing data to subrequests

2001-04-06 Thread Joachim Zobel


Hi.

I still think about a way to use content negotiated templates. My favourite 
solution is now to make my template filler a content handler for the 
template direktory. The problem is to pass the data the handler should fill in.

How do I pass larger data structures to a subrequest? Is there a way to do 
a POST subrequest? How long can a notes entry be?

Any hints?
Thanx,
Joachim

Is content negotiation somehow uncool? I could not find an 
Apache::Negotiate to interface with mod_negotiate and its remarkably little 
discussed.
--
"... ein Geschlecht erfinderischer Zwerge, die fuer alles gemietet werden
koennen."- Bertolt Brecht - Leben des Galilei