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

Re: How to differentiate the PROPFIND /svn/repo/!svn/vcc/default for commit Vs some read operation

From: Justin Erenkrantz <justin_at_erenkrantz.com>
Date: Tue, 22 Dec 2009 08:53:47 -0800

On Tue, Dec 22, 2009 at 7:14 AM, Kamesh Jayachandran <kamesh_at_collab.net> wrote:
> Hi All,
>
> Of late we have observed errors like the following when committing via the
> european mirror.
>
> <snip>
>
> "The specified baseline is not the latest baseline, so it may not be checked
> out."
> </snip>
>
> This error happens as the following request part of the commit operation is
> *served by mirror*.
> PROPFIND /svn/repo/!svn/vcc/default HTTP/1.1
>
> We can proxy this request to the Master but we *should not* do that if it is
> for read operation.
>
> Unfortunately I could *not* identify the above PROPFIND is for read ops or
> write ops.
>
> Request body for this request remains same between the read and write
> operation as follows
>
> <snip>
> <?xml version="1.0" encoding="utf-8"?><propfind
> xmlns="DAV:"><prop><checked-in xmlns="DAV:"/></prop></propfind>
> </snip>
>
> May be I can set some persistent data structure at the connection scope
> remembering the invocation of prior 'MKACTIVITY' and
> decide whether it is PROPFIND for commit or 'some read ops'.
>
> Any thoughts!

Perhaps have the client set a header or do something different in this
case? But, doing connection-scope variable is a very very bad bad bad
bad idea. You can not assume that the connection is persistent. --
justin
Received on 2009-12-22 18:16:26 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.