[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: Release build serf test failures

From: Paul Burba <ptburba_at_gmail.com>
Date: Wed, 4 Nov 2009 22:35:43 -0500

On Tue, Nov 3, 2009 at 4:29 PM, Paul Burba <ptburba_at_gmail.com> wrote:
> On Tue, Nov 3, 2009 at 2:12 PM, Lieven Govaerts <svnlgo_at_mobsol.be> wrote:
>> On Tue, Nov 3, 2009 at 7:00 PM, Paul Burba <ptburba_at_gmail.com> wrote:
>> [..]
>>> I cleared the access and error logs, restarted the server and ran just
>>> merge_tests.py 78.  The test run output and the two logs are attached.
>>
>> It looks like the client is doing a get_location_segments action and
>> the resulting REPORT request returned successfully from the server. At
>> least, I assume this is the last REPORT in the access.log file
>> (revision 7 matches the start_red and end_rev vars in the stacktrace).
>>
>> I can't see what's going wrong.
>>
>> Maybe you can abort the test right before the merge and run it
>> manually, with some additional printf's? My first guess would be to
>> look in util.c:handle_response right before and after the call to
>> ctx->response_handler.
>
> I've done a lot of printf debugging already, the problem occurs before
>
> 1346:      err = ctx->response_handler(request,response,
> ctx->response_baton, pool);
>
> Rather it is back on
>
> 1228:  status = serf_bucket_response_wait_for_headers(response);
>
> Where the problem manifests itself.  The status comes back as 70014
> (APR_EOF) which causes us to hit
>
> 1244:      if (strcmp(ctx->method, "HEAD") != 0 && sl.code != 204 &&
> sl.code != 304)
>
> Which segfaults because ctx isn't valid.  The debug build *never*
> returns APR_EOF on line 1228 so that avoids the segfault.
>
> All the other failing tests besides #78 have a valid ctx so we enter
> the block after line 1244 and see the 'svn: Premature EOF seen from
> server (http status=404)' error.

Finally found the problem. Fixed r40377, the tests pass now on both
release and debug builds.

See log for for explanation. The fix is very simple, though finding
it was not, please let me know if it looks good to you all (the error
handling in serf makes my head spin!).

Thanks,

Paul

------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=462&dsMessageId=2414580
Received on 2009-11-05 04:36:03 CET

This is an archived mail posted to the Subversion Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.