hi derek, sorry for the late reply...
On 6/9/07, Derek Jean-Baptiste <[EMAIL PROTECTED]> wrote:
Hello and please pardon me if this is already in an FAQ somewhere (I have looked but did not find anything that really answers this). What is the role of the FileSystem in the Repository, Version and Workspace?
FileSystem is a an abstraction (i.e. a virtual filesystem) that can be used by the different components (Repository, Versioning & Workspace) for persisting their state. some historical background information: in early days there were only filesystem based persistence managers (XMLPersistenceManager & ObjectPersistenceManager). since those create many small files we soon ran into limitations of the underlying native file system (mainly windows:( in order to avoid those issues we introduced the FileSystem abstraction which enabled us to experiment with different implementations (e.g. a unix-style java filesystem-in-a-single-file or a db-based filesystem). we then used the FileSystem abstraction in all components that used to access the native filesystem (i.e. java.io.File).
Is any information permanently stored there?
that depends on the component. global repository state (namespace mappings, custom node types, etc) is persisted in the virtual FileSystem. on a workspace level it depends on the PersistenceManager implementation. while XMLPersistenceManager & ObjectPersistenceManager do use the FileSystem, SimpleDbPersistenceManager for example doesn't.
If you use SimpleDBPersistenceManager and a LocalFileSystem and lose the LocalFileSystem, can you recover from that loss?
yes, assuming you can restore the workspace.xml (which is located in the LocalFileSystem) and you store blobs in the database (externalBLOBs=false). cheers stefan
Thanks Derek
