perl-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Tom Schindl <tom.schi...@bestsolution.at>
Subject Re: $|, flushing, etc... [was Next Release]
Date Tue, 04 Oct 2005 15:05:36 GMT
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Stas Bekman wrote:
> Stas Bekman wrote:
> 
>> Philip M. Gollucci wrote:
>> [...]
>>
>>> 6.  Okay so from the 4 above attached files in #5 it looks like
>>> PerlIOApache_flush() is being called, but not working.
>>>     [I'll list this function at the end of the e-mail.]
>>>     Basically, I think there is a SNAFU here
>>>
>>> MP_RUN_CROAK(modperl_wbucket_flush(rcfg->wbucket, FALSE), ":Apache2
>>> IO flush");
>>>
>>> That FALSE ends up being add_flush_bucket so even though we call
>>> flush we never get a flush bucket!!!!!!
>>
>>
>>
>> I think your observation and the fix are correct Philip. But before we
>> commit any fix we need to have a test that breaks and the fix fixes it.
> 
> 
> As I think more about it, there was a reason for this FALSE setting. As
> you know Apache will send headers as soon as it gets some data out and a
> flush bucket is by Apache-talk is data. So what was happening is that
> when users were doing something in their code that was causing perl to
> flush STDOUT behind the scenes (like a filehandle dup), Apache will go
> and generate the headers even if the user haven't had a chance to set
> those. That's why it was written in such a way: i.e. add a flush bucket
> only if there is some data to flush, otherwise you need to call
> $r->flush if you want the flush to be sent anyway.
> 

Stas if I get you right you say that the actual behaviour of "undef $|"
is desired and not a failure (I can somehow remember now the discussion)

I didn't get an answer when I asked if $r->flush does what the user
wanted too. Maybe I should ask again I've been only guessing.

We should at least document the behaviour? I'd generate a fix for the
docs if my assumption is correct.


> I think we may even have a test for that case (grep for $| I guess)
> 


- --
B e s t S o l u t i o n . a t                        EDV Systemhaus GmbH
- ------------------------------------------------------------------------
tom schindl    leiter softwareentwicklung/CSE   mobile  ++43 676 3232147
- ------------------------------------------------------------------------
eduard-bodem-gasse 8/3    A-6020 innsbruck      fax      ++43 512 935833
http://www.bestsolution.at                      phone    ++43 512 935834
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)
Comment: Using GnuPG with Mandriva - http://enigmail.mozdev.org

iD8DBQFDQppA4E2ESUTeSPQRAtBMAJ93rve1at71VwmQHbPcu5Yk1WVMkQCeNDzQ
C3ufx1N4URZjehCpcgWg2AI=
=JwLV
-----END PGP SIGNATURE-----

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@perl.apache.org
For additional commands, e-mail: dev-help@perl.apache.org


Mime
View raw message