Re: libefs
- From: David Orme <david coconut-palm-software com>
- To: Dietmar Maurer <dm vlsivie tuwien ac at>, gnome-components-list gnome org
- Subject: Re: libefs
- Date: Tue, 29 Jun 1999 12:23:50 -0400
Dietmar Maurer wrote:
> David Orme wrote:
> > Since we're reimplementing this, we have the opportunity to fix this
> > oversight by providing a separate process that manages reading/writing open
> > files on behalf of the client applications. If a client application crashes
> > in the middle of a save, the transaction is rolled back and the user loses
> > just the work from the current session, not the entire file.
>
> You can never get an inconsistent database with the current
> implementation of libefs (due to client crashes), because I don't
> overwrite the last version. Keeping the last version is the only way to
> implement this behaviour. This also mean that it is very difficult to
> "compact" the filesystem - because if I overwrite data I can't do a
> rollback. The easiest way to "compact" the filesystem is to copy the
> whole thing to a new location and then make a (atomic) rename.
Good so far. Are transactions maintained for an entire save session (including
embedded applications saving their data) or just on a per-application basis?
It's important that the save operation be atomic for the main application and
across all embedded objects. But it sounds like you've probably already thought
of this?
> > While I'm on the topic of file systems within a file, we also need the
> > ability to mount external directories within our "file system within a
> > file". Another MS Access problem is that it is hard to share an application
> > without sharing all of your data as well since the forms used to implement
> > the application are stored in the same file as the data.
>
> Please can you explain that more detailed.
Actually there are two cases: Where you want to mount a directory (or maybe just
regular files) in your regular file system inside your filesystem-in-file. For
example, MS Access works with Paradox and dBase files by "mounting" them inside a
native Access database file. You also have the case where you might like to
treat two filesystem-in-a-file's as one by mounting one inside another. If
Access allowed this it would possible to store your application code in one
filesystem-in-a-file and have it mount another filesystem-in-a-file containing
the database files.
I hope this helps...
Regards,
Dave
--
David Orme LINUX...
david@coconut-palm-software.com ...it already goes there
http://www.coconut-palm-software.com :-)
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]