Date: Tue, 12 Oct 2010 16:46:11 -0700 From: "Eugene M. Kim" <20080111.freebsd.org@ab.ote.we.lv> To: svn-src-all@freebsd.org Cc: Hans Petter Selasky <hselasky@freebsd.org> Subject: svnsync broken, workaround available (was Re: svn commit: r213379 - head/sys/dev/usb/controller) Message-ID: <4CB4F343.2000705@ab.ote.we.lv> In-Reply-To: <201010030812.o938CH8S068342@svn.freebsd.org> References: <201010030812.o938CH8S068342@svn.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
This commit (r213379) has a couple of stray/toxic directory properties, with an equal sign ("=") in their name, e.g. "svn:keywords=FreeBSD=%H" whose value is "xhci.c" :-p. Running svnsync to mirror this revision to a remote repository over DAV (http: or https:) will result in "400 Bad Request". Unaffected are non-DAV schemes, e.g. svn:, svn+ssh:. Symptom: svnsync fails with the following error message: "svnsync: Server sent unexpected return value (400 Bad Request) in response to PROPPATCH request" Cause (for the curious): svnsync tries to copy the toxic properties by creating a PROPPATCH request with ill-formed XML elements, e.g. "<S:keywords=FreeBSD=%H>xhci.c</S:keywords=FreeBSD=%H>". Apache mod_dav catches this and rejects the request. Workaround: Remove svn:sync-currently-copying revprop at revision 0 in the destination (mirror) repository, then run "svnsync sync" manually once, accessing the destination repository via svnserve (svn: or svn+ssh:) instead of the usual DAV scheme. Once svnsync successfully replicates the problematic revision, the DAV scheme can be used again. As for how those names have passed the first line of check (in libsvn_client), I have no idea... I wonder, however, if it is possible to perform a repo surgery to remove these properties. Regards, Eugene
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4CB4F343.2000705>