Philip Martin <philip.mar...@wandisco.com> writes:

> Philip Martin <philip.mar...@wandisco.com> writes:
>
>> Philip Martin <philip.mar...@wandisco.com> writes:
>>
>>> update_tests.py 60 attempts to update to HEAD+1 and expects it to fail.
>>> This tests is failing over ra_serf, the update hangs in some way.  This
>>> started with r1412651, which is just a wc change.
>
>>> #6  0x00007f6a51728f19 in svn_ra_get_inherited_props
>>>     (session=0x7f6a5208b0f0, 
>>>     iprops=0x7fff0eb5b988, path=0x7f6a51c76d65 "", revision=2, 
>>>     result_pool=0x7f6a52060028, scratch_pool=0x7f6a52060028)
>>>     at ../src/subversion/libsvn_ra/ra_loader.c:1315
>>> #7  0x00007f6a51c3dfcf in svn_client__get_inheritable_props (
>>
>> The r1412650 client doesn't set needs_cached_iprops in
>> svn_client__get_inheritable_props and so doesn't call
>> svn_ra_get_inherited_props.
>>
>> The r1412651 client sets needs_cached_iprops, makes the call, and hangs.
>
> So this is a deliberate change:
>
> * subversion/libsvn_client/iprops.c
>   (need_to_cache_iprops): Use svn_wc_check_root() to work properly on files
>     and just return TRUE for the repository root as fetching from the wc is
>     just as expensive as testing for the wcroot.
>
> I don't understand the iprops code yet.  This change is causing an extra
> RA call to occur and I don't know whether this extra call is required
> for correct behaviour and so ommitting it is a bug, or whether omitting
> it is merely an optimisation.

The RA call is receiving a 500 response:

  HTTP/1.1 500 Internal Server Error

  Date: Mon, 26 Nov 2012 12:26:50 GMT

  Server: Apache/2.2.22 (Ubuntu) mod_ssl/2.2.22 OpenSSL/1.0.1 DAV/2
  SVN/1.8.0-dev

  Content-Length: 214

  Connection: close

  Content-Type: text/xml; charset="utf-8"



  <?xml version="1.0" encoding="utf-8"?>
  <D:error xmlns:D="DAV:" xmlns:m="http://apache.org/dav/xmlns";
  xmlns:C="svn:">
  <C:error/>
  <m:human-readable errcode="160006">
  No such revision 2
  </m:human-readable>
  </D:error>

The ra_serf library is reading this and then getting APR_EOF.  For some
reason the ra_serf parsing code then loops forever expecting more data.

-- 
Certified & Supported Apache Subversion Downloads:
http://www.wandisco.com/subversion/download

Reply via email to