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

UI concerns for FS abstraction

From: Greg Hudson <ghudson_at_MIT.EDU>
Date: 2004-04-27 22:12:16 CEST

So, per gat's document, we have this two-layered FS abstraction
design: at the "filesystem abstract provider" (FSAP) level, we have
"base" vs. "fsfs", and possibly others in the future (though none
planned). Within the base FSAP, we have the bdb implementation, and
probably others in the future, although those others could migrate to
full-fledged FSAPs. I have implemented the FSAP abstraction, but the
base implementation still just pretends that the world is all about
Berkeley DB.

We have no business concerning the user with our implementation
issues, so we need a translation layer mapping filesystem types to
FSAP names and, in the future, to FSP names for the base FSAP. The
initial FS types should be "bdb" (which translates to an FSAP name of
"base", and in the future also translates to an FSP name of "bdb") and
"fsfs" (which translates to an FSAP name of "base").

I'd like people's opinions on how to implement this translation layer:

  * Put all the smarts into svnadmin.

  * Put all the smarts into svnadmin, with #defines in svn_fs.h to
    help out. (What should these defines look like?)

  * Introduce an svn_fs API (implemented in the loader library) to do
    the translation. I'm a little reluctant to do so at this time
    because it would require building in a little more of the
    FSP-abstraction infrastructure, and as Garrett has pointed out, it
    sucks to have infrastructure with nothing built behind it.

I'll implement the first option for now since it's easy, but it should
be easy to change before the fs-abstraction branch is merged into the
trunk.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Tue Apr 27 22:12:41 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.