[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: page finishes loading _after_ PerlCleanupHandler



> Hi, while testing the PerlCleanupHandler in HTML::Mason:
> 
> <%init>
> $r->push_handlers(PerlCleanupHandler => \&sleeptest);
> 
> sub sleeptest {
>     my $r = shift;
>     $r->warn("BEFORE SLEEP");
>     sleep(10);
>     $r->warn("AFTER SLEEP");
>     };
> </%init>
> 
> I've noticed that the page only finishes loading after the 
> PerlCleanupHandler has completely executed. A per the 
> documentation the cleanup is code is supposed to happen after 
> the client is gone, not while he's waiting.

I became curious and tested this by registering a PerlCleanupHandler
directly in apache. Documentation is correct - content was served before the
cleanup handler.

I know Mason quite well but I can't find any explanation for what you are
seeing... I know they try to delay sending content until the last possible
moment to ensure that any and all headers make it in. But I don't see how
they'd make it past the content phase.  Mason has an excellent mailing list,
btw - somewhere on masonhq.com. May be somebody can make sense of it there!
Good luck.


Mail converted by mhonarc 2.6.15
This archive provided courtesy of JSW4.NET, Internet Hosting Services for Small Business.