FAQ

You can't test mod_perl modules from the command line, Scott. Only
running under a mod_perl interpreter.
Dooh. I didn't know that. Mine have always worked - I guess I just
have not come across the thing that does not work :-) Until now.
Right, that worked in mod_perl - still seg faults, so here is the
code (short as possible now to still cause the problem) and the
backtrace.

OK Here are the new results...

Some more information:

* perl Makefile.PL MP_DEBUG=1; make && make test - worked with 3 errors
(Note however, that you must manually set environment variable PATH
or Taint check fails)
1&2: t/api/status
3: t/apache/content_length_header.t

* Stack Backtrace

(gdb) bt
#0 0xb7bef73d in modperl_wbucket_flush (wb=0x0, add_flush_bucket=0)
at modperl_filter.c:236
#1 0xb7a7efaf in mpxs_ap_run_sub_req (r=0x84e1708) at
Apache2__SubRequest.h:25
#2 0xb7a7f55b in XS_Apache2__SubRequest_run (cv=0x8351e78) at
SubRequest.xs:83
#3 0xb7b30c68 in Perl_pp_entersub () from /usr/lib/libperl.so.1


* Full version of code that causes the problem (including configuration)

package Zaltana::ExpandTest;
use Apache2::SubRequest ();
use Apache2::Const -compile => qw(OK DECLINED);
use base qw/Apache2::Filter/;

# Usage
# Alias /zx /var/www
# PerlModule Zaltana::ExpandTest
# <Location /zx>
# PerlOutputFilterHandler Zaltana::ExpandTest
# </Location>

sub handler : FilterRequestHandler {
my $f = shift;
unless ($f->ctx) {
$f->r->headers_out->unset('Content-Length');
$f->ctx(1);
}

# Read in all the data the XSL parser requires
while ($f->read(my $buffer, BUFF_LEN)) {
# usually do something with data...
}

if ($f->seen_eos) {
# TEST - Just run the sub request, ignore content
my $subr = $f->r->lookup_uri('/sub.html');
$subr->run();
}

return Apache2::Const::OK;
}

1;

Test Environments:

1. Gentoo running Apache 2.2, mod_perl 2.0.2, Perl 5.8.6
2. Debian Linux running Apache 2.0, mod_perl 2.0.2, Perl 5.8.8

By using both environments above, with different compiles (the Debian
ones are packages, the Gentoo mod_perl and Apache are my own
compiles) it shows me that it is not likely the compile that is the
problem, but the code itself (either mine or mod_perl or apache).

Scott

Search Discussions

Discussion Posts

Previous

Follow ups

Related Discussions

Discussion Navigation
viewthread | post
posts ‹ prev | 10 of 16 | next ›
Discussion Overview
groupmodperl @
categoriesmodperl, perl
postedJun 19, '06 at 1:34a
activeAug 8, '06 at 4:12a
posts16
users3
websiteperl.apache.org

People

Translate

site design / logo © 2018 Grokbase