DragonFly kernel List (threaded) for 2004-12
[
Date Prev][
Date Next]
[
Thread Prev][
Thread Next]
[
Date Index][
Thread Index]
Re: Description of the Journaling topology
:This is potentially dangerous. In general, I think you want the
:journalling to occur as close to the storage as possible -- i.e., on the
:*target* machine, not the originating machine.
:
:The scenario I'm thinking of -- one not too uncommon when running
:unwieldy makefiles -- is as follows: (A and B are NFS clients, T is the
:NFS server):
:
:A: rmdir() called
:A: rmdir() journalled
:A: rmdir() sent to server
:T: directory is removed
:A: crashes
:B: mkdir() called on same directory
:B: mkdir() journalled
:B: mkdir() sent to server
:B: mkdir() journal marked as complete.
:T: directory is created
:[a day later...]
:A: reboots, starts replaying journal
:A: rmdir() sent to server
:A: rmdir() journal marked as complete.
:T: directory is removed
:
:Thus, one rmdir() call ends up being called twice. Or am I missing
:something?
Well, in this scenario A and B would not be doing the journaling, the NFS
server would be doing the journaling. The act of journaling is not
something you run independantly on N machines all sharing the same
NFS based filesystem. That would never work.
-Matt
Matthew Dillon
<dillon@xxxxxxxxxxxxx>
[
Date Prev][
Date Next]
[
Thread Prev][
Thread Next]
[
Date Index][
Thread Index]