Coda File System

Re: one thought about backup volumes

From: Jan Harkes <jaharkes_at_cs.cmu.edu>
Date: Sat, 3 May 2003 12:43:27 -0400
Oops, forgot to cc: codalist, resending it now.

On Fri, May 02, 2003 at 11:37:53PM +0200, Ivan Popov wrote:
> I see that I can work around this limitation via "volutil clone"
> but iirc then I have to explicitely delete the ro clone each time.

Although they are mostly identical, there is one distinct difference
between backup and clone volumes. Backup volumes have a stronger linkage
to the parent which makes incremental backups more efficient. This is
reflected in a comment in the source.

/* General Plan:
 * Cloning a volume takes lots of effort -- tons of transactions,
 * spooling gobs of data to the log, and mucho time. It also doesn't
 * haven't to be done every time, because most of the structure of a
 * volume doesn't change. So if a backup clone exists (and was
 * successfully dumped), we can simply modify the volume to reflect any
 * possible changes to the volume.

However there is no real reason why the backup volume has the hardcoded
extension '.backup', except for simplicity. The server always uses the
backup volume id to find the existing backup volume.

btw. it looks like the clone operation always appends '.readonly'. I'm
not sure why, readonly state is defined by a flag, not naming.

> main ones. (Presumably they are there now? Or are regular volume names
> ending in .backup forbidden?)

No regular volume names could end in .backup, which will not screw up
the backup process, but will cause problems during volume lookup.

> My guess is that all that is needed is a minor change in volutil?
> An optional option could take care of naming.

Probably, it will have to test for conflicting names, and if there is a
conflict if that volume happens to be the previously cloned backup
volume. Hmm, perhaps this could somehow unify backup and clone a bit
more. i.e. make clone more efficient by using the incremental backup
stuff when the existing name corresponds to a clone we made off of the
same readwrite replica.

Jan
Received on 2003-05-03 12:44:57