Matt Sergeant wrote:
On 22 Jan 2004, at 10:02, Ask Solem Hoel wrote:

When I access /perl-status/ on this server i get a 500 Internal Server Error,
and not much information in the error log but "Undefined subroutine &Apache::Status::handler called". If I remove the PerlModule B::TerseSize line from the apacheconfig, /apache-status/ works fine (unless the parts that uses B::TerseSize ofcourse).


B::TerseSize doesn't work on perl 5.8+

I couldn't figure out how to make it work and eventually gave up.

I didn't delve into it, but it seems to somewhat work for me with 5.8.3. I haven't tested earlier ones. e.g. this
http://localhost:8002/status/perl/APR::Date?noh_b_package_size
gives:


Memory Usage for package APR::Date

Totals: 1013 bytes | 3 OPs

parse_http       254 bytes | 1 OPs
parse_rfc        253 bytes | 1 OPs
bootstrap        253 bytes | 1 OPs
*VERSION{SCALAR}  29 bytes

Though if I try to click to get the parsed tree of the XS, it goes wrong. I think some parts of the B:: API may have changed. e.g. it seems the B::Terse::compile returns some code that B:: no longer has, you can dump it with B::Deparse:

sub noh_b_terse {
    my $r = shift;
    require B::Deparse;
    $r->content_type("text/plain");
    return unless has($r, "terse");
    my $deparse = B::Deparse->new("-p", "-sC");
    no strict 'refs';
    my($arg, $name) = (split "/", $r->uri)[-2,-1];
    $r->print("Syntax Tree Dump ($b_terse_exp{$arg}) for $name\n\n");

    # XXX: blead perl dumps things to STDERR, though the same version
    # works fine with 1.27
    $r->print($deparse->coderef2text(B::Terse::compile()));
}

Hopefully someone will want to look at what has changed in the B:: API in the recent perls and make the necessary adjustments.

__________________________________________________________________
Stas Bekman            JAm_pH ------> Just Another mod_perl Hacker
http://stason.org/     mod_perl Guide ---> http://perl.apache.org
mailto:[EMAIL PROTECTED] http://use.perl.org http://apacheweek.com
http://modperlbook.org http://apache.org   http://ticketmaster.com


-- Reporting bugs: http://perl.apache.org/bugs/ Mail list info: http://perl.apache.org/maillist/modperl.html List etiquette: http://perl.apache.org/maillist/email-etiquette.html



Reply via email to