But you're right in your subsequent message that we're probably
writing out the file contents twice to the logfile and once to
the db, which is pretty wasteful in disk bandwidth and
short-term space use.
Yup. That's the big thing and thanks for the sanity check -- as I
say, sorry I'm scrambling to catch up on implementation details here.
It's maybe worth repeating that for maximally robust operation,
"short-term" here means "between backups" and yadda yadda.
I'm really torn between two paths to fixing that, if one were inclined
to do so:
On the one hand, app-level journaling has all the aforementioned
benefits and is probably desirable anyway for diagnostic purposes.
On the other hand, the deeper, harder to swallow solution of changing
the data model a bit seems like the clear long-term winner to me.
To expand on that:
You use "cheap tree cloning" to do branching and tagging. I think it
has a third use: revisioning. There's no need at all to version the
entire fs -- just clone the archived sub-tree you're committing to
create a new revision and encode the new revision's name in the fs
namespace. Of course, that means introducing an explicit notion of
"project" to the abstraction, whereas currently "project" is entirely
a user policy notion carved out of the fs namespace. Looking beyond
the BDB implementation, this approach can really cut down on i/o
bandwidth and space use, not to mention improving the overall rev ctl
model. (But, yeah, the big problem with any such suggestion is the
pressure to get 1.0 out.)
So, out in "if wishes and buts were candy and nuts"-land, I guess the
Right Thing would be to take the fork in the road: add app-level
journaling AND look for an affordable way to hide (in the UI) the
revid and impose a little more structure on the fs early -- then look
into fancier BDB alternatives later.
-t
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Sun Apr 6 01:21:42 2003