Question about journaling
Matthew Dillon
dillon at apollo.backplane.com
Fri Aug 18 09:11:34 PDT 2006
:Hi,
:
:I've read the mountctl(8) and jscan(8) manpages, but
:there's one thing which I'm still not 100% certain.
:
:Does the journaling work on file level or on block
:level? Specifically: When I use jscan to mirror a
:file system on a remote machine, will the files have
:identical inode numbers?
:
:That's important for setting up a fail-over NFS cluster
:(with the master being read+write, and the slave being
:read-only, replicated with jscan). If the inode numbers
:are different, a transparent fail-over would not be
:possible ... In that case, is there are different
:solution with DragonFly BSD?
:
:Best regards
: Oliver
:
:--
:Oliver Fromme, secnetix GmbH & Co. KG, Marktplatz 29, 85567 Grafing
:Dienstleistungen mit Schwerpunkt FreeBSD: http://www.secnetix.de/bsd
The code runs at the file level. The inode number is recorded
in the stream but the mirroring code has no ability to specify
the inode when creating new nodes on the target so the inode
number is not replicated.
Apart from that, there are still issues with any disruption that
might occur to the journaling stream. For example, if a connection
between two machines is lost. I think the restart code should work,
but it isn't as robust as I would like because the source filesystem
could end up blocking indefinitely if the journaling stream cannot be
reestablished.
I consider the journaling code to still be quite experimental. It is
more a placemark on how we might have to encode data updates in a
clustered system then it is an actual journaling system.
-Matt
More information about the Users
mailing list