You are viewing a plain text version of this content. The canonical link for it is here.
Posted to modperl-cvs@perl.apache.org by st...@apache.org on 2003/03/03 04:36:17 UTC
cvs commit: modperl-2.0 STATUS
stas 2003/03/02 19:36:17
Modified: . STATUS
Log:
log the issue with 'SetHandler modperl' not resetting $| => performance
hit
Revision Changes Path
1.36 +12 -1 modperl-2.0/STATUS
Index: STATUS
===================================================================
RCS file: /home/cvs/modperl-2.0/STATUS,v
retrieving revision 1.35
retrieving revision 1.36
diff -u -r1.35 -r1.36
--- STATUS 26 Feb 2003 09:32:53 -0000 1.35
+++ STATUS 3 Mar 2003 03:36:17 -0000 1.36
@@ -50,6 +50,17 @@
Needs Patch or Further Investigation:
-------------------------------------
+* 'SetHandler modperl' doesn't reset $|, so if anything turns it on
+ anywhere, it's going to stay that way. Meaning excessive flushing
+ probably causing a performance hit. I've tried to add the code to
+ reset it, but this requires getting a perl interpreter at the early
+ stage and it breaks several filter tests, which has relied before on
+ the coincidence that both the response handler and the filter were
+ run by the same interpreter (in particular this breaks the code
+ where push_handlers() uses a string as a handler, rather a CODE
+ reference, see t/filter/TestFilter/both_str_rec_add.pm, to
+ reproduce the problem, simply s/modperl/perl-script/)
+
* child processes never run END blocks. a good example is
Apache::TestUtil, which doesn't cleanup files and dirs it has
created, because the END block is not run.