Re: Bug#697682: libapache2-mod-perl2: Intermittent FTBFS: t/apache/read3.t failure

Niko Tyni <[email protected]>
Newsgroups gmane.comp.apache.mod-perl.devel
Message-ID <[email protected]>
Thanks for looking at the patches!

On Wed, Aug 13, 2014 at 09:12:11AM +0100, Steve Hay wrote:

> Thanks for the patch. I haven't seen this failure myself on Windows,
> but the patch certainly doesn't seem to break anything. I'm a little
> uneasy about it, though. It seems odd to structure read3.pm
> differently to read2.pm and read4.pm, which still have a plan emitted
> before the first read().
> 
> Why does read3.pm deadlock but read2.pm and read4.pm don't? If it's
> just luck then perhaps read2.pm and read4.pm should be changed
> similarly?

It only happens with read3 because the POSTed string in that test is
very much larger than the other ones. LWP::Protocol::http sends the
whole POST request in one write() unless it's over eight kilobytes long
(see lib/LWP/Protocol/http.pm in libwww-perl_6.08 line 276.)

From a correctness POV, I suppose the others should indeed do the same
in the (IMO unlikely) case LWP::Protocol::http ever changes to do two
writes even for such short requests.

> Maybe a comment in the code would be good too, since the structure of
> most test files is to get the plan out early. Otherwise there is scope
> for re-introducing the bug in the future since it isn't obvious that
> the placement of the plan is important.

Yeah, I agree that would be good. 

I can send a revised patch later later.
-- 
Niko Tyni   [email protected]
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.