RE: SVN Property Value Size Limit
From: Klaus Mueller <k.mueller_at_intershop.de>
Date: Fri, 28 Jun 2013 09:27:40 +0000
Hi,
I prepared a trace of the relevant part.
Compared transfer debug output for an element.
Both version generated with neon-debug-mask=130. Subversion version is "Version 1.6.12" on a Debian 6 system.
1.Checkout of element
This is the version with the problem.
Call: svn co --depth empty https://URL core --username ...
Debug output shortend:
---- [status-line] < HTTP/1.1 200 OK^M [hdr] Date: Fri, 28 Jun 2013 09:00:15 GMT^M Header Name: [date], Value: [Fri, 28 Jun 2013 09:00:15 GMT] [hdr] Server: Apache/2.2.11 (Unix) mod_ssl/2.2.11 OpenSSL/0.9.8k DAV/2 SVN/1.6.9 mod_perl/2.0.4 Perl/v5.10.0^M Header Name: [server], Value: [Apache/2.2.11 (Unix) mod_ssl/2.2.11 OpenSSL/0.9.8k DAV/2 SVN/1.6.9 mod_perl/2.0.4 Perl/v5.10.0] [hdr] Transfer-Encoding: chunked^M Header Name: [transfer-encoding], Value: [chunked] [hdr] Content-Type: text/xml; charset="utf-8"^M Header Name: [content-type], Value: [text/xml; charset="utf-8"] [hdr] ^M End of headers. Running post_headers hooks [chunk] < 21b7^M Got chunk size: 8631 Reading 8192 bytes of response body. Got 727 bytes. Read block (727 bytes): [<?xml version="1.0" encoding="utf-8"?> <S:update-report xmlns:S="svn:" xmlns:V="http://subversion.tigris.org/xmlns/dav/" xmlns:D="DAV:" send-all="true"> <S:target-revision rev="146436"/> <S:open-directory rev="146436"> <D:checked-in><D:href>/svneng/...</D:href></D:checked-in> <S:set-prop name="svn:entry:committed-rev">145369</S:set-prop> <S:set-prop name="svn:entry:committed-date">2013-06-21T09:00:08.455433Z</S:set-prop> <S:set-prop name="svn:entry:last-author">dpal</S:set-prop> <S:set-prop name="svn:entry:uuid">9fc60da8-8e6f-4eb0-9785-188b2ab5bd3a</S:set-prop> <S:set-prop name="svn:ignore">.classpath </S:set-prop> <S:set-prop name="svn:mergeinfo">] Reading 7904 bytes of response body. Got 7904 bytes. Read block (7904 bytes): [/.... ... .../branches/e] [chunk] < 47^M Got chunk size: 71 Reading 71 bytes of response body. Got 71 bytes. Read block (71 bytes): [</S:set-prop> <S:prop></S:prop> </S:open-directory> </S:update-report> ] [chunk] < 0^M Got chunk size: 0 [hdr] ^M End of headers. Running post_send hooks Request ends, status 200 class 2xx, error line: 200 OK Running destroy hooks. Request ends. sess: Destroying session. sess: Destroying session. ---- This is the truncated version of the property. 2. PROPGET svn:mergeinfo ------------------------ This is the working version of the requests. Call: svn propget svn:mergeinfo https://URL --username ... Debug output shortend: ---- ^M Sending request-line and headers: Sending request body: Body block (82 bytes): [<?xml version="1.0" encoding="utf-8"?><propfind xmlns="DAV:"><allprop/></propfind>] Request sent; retry is 1. [status-line] < HTTP/1.1 207 Multi-Status^M [hdr] Date: Fri, 28 Jun 2013 08:59:08 GMT^M Header Name: [date], Value: [Fri, 28 Jun 2013 08:59:08 GMT] [hdr] Server: Apache/2.2.11 (Unix) mod_ssl/2.2.11 OpenSSL/0.9.8k DAV/2 SVN/1.6.9 mod_perl/2.0.4 Perl/v5.10.0^M Header Name: [server], Value: [Apache/2.2.11 (Unix) mod_ssl/2.2.11 OpenSSL/0.9.8k DAV/2 SVN/1.6.9 mod_perl/2.0.4 Perl/v5.10.0] [hdr] Transfer-Encoding: chunked^M Header Name: [transfer-encoding], Value: [chunked] [hdr] Content-Type: text/xml; charset="utf-8"^M Header Name: [content-type], Value: [text/xml; charset="utf-8"] [hdr] ^M End of headers. Running post_headers hooks [chunk] < 2153^M Got chunk size: 8531 Reading 8192 bytes of response body. Got 531 bytes. Read block (531 bytes): [<?xml version="1.0" encoding="utf-8"?> <D:multistatus xmlns:D="DAV:" xmlns:ns0="DAV:"> <D:response xmlns:S="http://subversion.tigris.org/xmlns/svn/" xmlns:C="http://subversion.tigris.org/xmlns/custom/" xmlns:V="http://subversion.tigris.org/xmlns/dav/" xmlns:lp1="DAV:" xmlns:lp3="http://subversion.tigris.org/xmlns/dav/" xmlns:lp2="http://apache.org/dav/props/"> <D:href>/svneng/esuite/!svn/bc/146436/.../</D:href> <D:propstat> <D:prop> <S:ignore>.classpath </S:ignore> <S:mergeinfo>] Reading 8000 bytes of response body. Got 8000 bytes. Read block (8000 bytes): [/... ... ...:71506] [chunk] < 463^M Got chunk size: 1123 Reading 1123 bytes of response body. Got 1123 bytes. Read block (1123 bytes): [</S:mergeinfo> <lp1:resourcetype><D:collection/></lp1:resourcetype> <lp1:getcontenttype>text/html; charset=UTF-8</lp1:getcontenttype> <lp1:getetag>W/"145369//..."</lp1:getetag> <lp1:creationdate>2013-06-21T09:00:08.455433Z</lp1:creationdate> <lp1:getlastmodified>Fri, 21 Jun 2013 09:00:08 GMT</lp1:getlastmodified> <lp1:checked-in><D:href>/svneng/esuite/!svn/ver/145369/...</D:href></lp1:checked-in> <lp1:version-controlled-configuration><D:href>/svneng/esuite/!svn/vcc/default</D:href></lp1:version-controlled-configuration> <lp1:version-name>145369</lp1:version-name> <lp1:creator-displayname>dpal</lp1:creator-displayname> <lp1:auto-version>DAV:checkout-checkin</lp1:auto-version> <lp3:baseline-relative-path>...</lp3:baseline-relative-path> <lp3:repository-uuid>9fc60da8-8e6f-4eb0-9785-188b2ab5bd3a</lp3:repository-uuid> <lp3:deadprop-count>2</lp3:deadprop-count> <D:lockdiscovery/> </D:prop> <D:status>HTTP/1.1 200 OK</D:status> </D:propstat> </D:response> </D:multistatus> ] [chunk] < 0^M Got chunk size: 0 [hdr] ^M End of headers. Running post_send hooks Request ends, status 207 class 2xx, error line: 207 Multi-Status Running destroy hooks. Request ends. sess: Destroying session. sess: Destroying session. ---- It seems the server is truncating the output before send the response from my point of view. Klaus > -----Original Message----- > From: Philip Martin [mailto:philip.martin_at_wandisco.com] > Sent: Friday, June 28, 2013 11:23 AM > To: 'Daniel Shahaf' > Cc: Matthias Legeler; users_at_subversion.apache.org > Subject: Re: SVN Property Value Size Limit > > 'Daniel Shahaf' <danielsh_at_elego.de> writes: > > > Matthias Legeler wrote on Thu, Jun 27, 2013 at 10:30:32 +0000: > >> 'svn propget --strict svn:mergeinfo ./ ' gets the first 7895 > characters > >> 'svn propget --strict svn:mergeinfo URL' gets all 7959 characters > >> > >> yes, 64 characters difference > > The Subversion project has svn:mergeinfo of about that size: 5915 bytes > on trunk, 7892 bytes on 1.8.x, 13838 bytes on 1.7.x. > > > Interesting, thanks. > > > > I guess the next step is to look at the response headers. (You can > use > > neon-debug-mask if you use neon, or wireshark/tcpdump if you don't > use > > SSL.) In particular, whether the response includes the whole > property, > > and whether metadata (eg: Content-Length response header) matches the > > response. > > http://subversion.apache.org/docs/community-guide/debugging.html#net- > trace > > I'd suggest tracing the traffic for an empty checkout: > > svn co --depth empty URL > > That will reduce the traffic but still include the property. The > property value is tranferred as XML in the body of the response for the > final REPORT request. > > -- > Philip Martin | Subversion Committer > WANdisco | Non-Stop Data > www.wandisco.comReceived on 2013-06-28 11:29:21 CEST |
This is an archived mail posted to the Subversion Users mailing list.
This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.