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

Re: FSFS: Plan of attack

From: Josh Pieper <jpieper_at_andrew.cmu.edu>
Date: 2004-04-08 23:12:19 CEST

I've been working on the fs_fs proposal and the svn_fs abstraction
layer a bit, mostly on point 3 in ghudson's Workplan:

> 3. Write FS code to read, but not write, the file format, under the
> assumption that node-revs contain only deltas against the empty
> base. Use the tool from (2) to generate test cases to ensure that
> the code works.

What I've found so far is that while a significant part of the code in
libsvn_fs/ is independent of the access method, there are a lot of
assumptions about BDB interspersed and mixed in with the generic
things.

My plan for trying to sort out which parts are generic and which parts
are access specific, (i.e. the abstraction layer) has been to copy all
the relevant files from libsvn_fs into libsvn_fs_fs, hack out what is
unnecessary, and add all fs_fs specific functions separately. Then
hopefully when it all works, we can use the resulting two
implementations of svn_fs to derive a more permanent abstraction
layer. This would be the top level abstraction, i.e. implementing a
tree structured filesystem on top of the DAG. There would still be a
need for another abstraction for different database backends.

So my proposal is to create a branch, say called
'libsvn_fs_fs_abstraction' where this prototype implementation of
libsvn_fs_fs can live. Once we have it (or during the process of
creating it), we decide on a good abstraction layer, then libsvn_fs_fs
can be re-implemented to meet that abstraction.

Thoughts?

            

-- 
A modem is a baudy house.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Thu Apr 8 23:12:34 2004

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.