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

Re: The Four Elements of Righteousness

From: Karl Fogel <kfogel_at_newton.ch.collab.net>
Date: 2002-07-18 07:43:17 CEST

You know...

I just realized we don't need to revamp the whole log system at all.
I think there's an easier way to do this.

Currently, libsvn_wc provides an anonymous function F to
libsvn_ra_dav. F is responsible for writing out the wcprops. (I know
F is wrapped by libsvn_client, but the core function is ultimately
supplied by libsvn_wc).

The problem right now is that F just writes out the props right away.
So we're searching for a way to make sure they get written out as part
of the same transacted group with certain other things (namely, the
file's regular props, its text, and its entry info).

Well, if we want to do that, we should just have F write out the
wcprop changes to a tmp area, the same as is done with text-base.

Then svn_wc_process_committed writes a special log item to the log, as
part of the appropriate transacted group of log appends. This log
item says to go look in the tmp place for any wcprop changes, and
process them. When the log is run, the wcprop changes will be picked
up *as part of the correct group*.

The important thing is, those wcprop changes can be sitting there in
the tmp area and mean absolutely *nothing* until that log item is
written. They are in no danger of taking effect until there's
something in the log that says to use them. And libsvn_wc will only
tack on that log item when it knows it is safe to do so.

Am I missing anything, or is this a really small change?

-Karl, happy to revert 2555 and 2562 if we have a better solution
       before Alpha...

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Thu Jul 18 07:55:36 2002

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.