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

Re: [PATCH] Don't close_edit in svn_ra_replay

From: Garrett Rooney <rooneg_at_electricjellyfish.net>
Date: 2006-08-15 18:33:19 CEST

On 8/14/06, David Glasser <glasser@mit.edu> wrote:
> svn_ra_replay and svn_repos_replay2 do essentially the same thing at
> different layers... except that svn_ra_replay calls close_edit on its
> editor after the replay is done, and svn_repos_replay2 doesn't. At
> the very least, this inconsistency should be documented in 1.4.
>
> I'd prefer, though, that ra_replay just shouldn't call close_edit at
> all. Not only is this more consistent, but it also is more flexible;
> for example, in the theoretical future where we can set revprops
> atomically over RA, we might want to slip set-revprop calls in between
> ra_replay and close_edit.
>
> The following patch implements this. It is mostly a matter of removing
> close_edit calls, and adding a close_edit to svnsync (the only client
> of svn_ra_replay). This means that you can test this patch by running
> the svnsync command-line tests; I've done this for ra_local, ra_svn,
> and ra_dav, but not for ra_serf, because I don't have serf installed
> on this machine yet.
>
> The one tricky bit is that in order for svnserve to tell the client
> that the replay is done without asking it to close (or abort) the
> edit, I've added a "finish-replay" command which just switches from
> the current editor session back to whichever command set was running
> before it; this required upgrading an svn_ra_svn.h API to allow
> specifying whether or not a given editor session is a replay session,
> so that finish-replay can be an error outside of replay.

This seems good to me. I've committed it to trunk (with a few minor
tweaks, mostly breaking overly long lines) and proposed it for
backport to 1.4.x.

It's going to need a backport branch for us to vote on it, since the
diff doesn't apply to the version of mod_dav_svn in 1.4.x (maxb's
refactoring in trunk moved the location of the code for the replay
report, among other things). I may not get around to that in the next
few hours, as I need to head to the airport fairly soon, but if it
hasn't been taken care of by the time I get to a network connection on
the other end of the trip I'll handle it.

-garrett

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Tue Aug 15 18:35:09 2006

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.