Coda File System

Re: Creating a replicated volume

From: Ivan Popov <pin_at_medic.chalmers.se>
Date: Mon, 12 Sep 2005 11:06:53 +0200
Hi Jeremy,

On Mon, Sep 12, 2005 at 12:33:11PM +1200, Jeremy Bowen wrote:
> Now when I want to create an additional volume I have a problem with the 
> terminology and additional volumes. Specifically, what do I call them? How do 

Volumes are connected into the file name space by so called "mount point"
objects. You create a mount point by

 cfs mkm /coda/realm/path

which connect a volume named "/path" (if such one exists) at /coda/realm/path

> I access them? What is the relationship between the volume name, coda 
> mountpoint and ID# ?

To keep the things simple you should synchronize
volume names and the corresponding mount point path names.
Fortunately, it is the default for "cfs mkm".

Well, nothing prevents you from deliberately connect an arbitrary volume to
an arbitrary place in the file tree by doing

 cfs mkm /coda/realm/path anyvolumename

but I would strongly advice you against that - this possibility is useful
only in rare cases for troubleshooting or alike, or when you paths become
too long (volume names are currently limited to 32 chars).

A volume named "/test" becomes visible as soon as you
create the corresponding mountpoint with

 cfs mkm /coda/mrblue.localdomain/test

and becomes invisible if you happen to remove the mount point:

 cfs rmm /coda/mrblue.localdomain/test

> I'm getting horribly confused here. What does the <volname> argument to 
> createvol_rep relate to ? How do I specify this volume on the client system ?

In the underlying implementation - due to AFS tradition,
the volume names and file names namespaces are totally unrelated,
so a server needs a hint when it should do a lookup for a certain volume.

We can not yet break that tradition and make the one-to-one mapping implicit -
as there are some cases where we still have to connect volumes arbitrarily.
Possibly we could avoid those corner cases later by careful (re)design,
but it would need some extra effort.

At the very least we would have to implement arbitrary length volume names
and make a decision about where and how backup volumes shall appear
in the file name space.
Volume management would have to be done differently, and done
from clients, not from servers as it is now.

Otherwise I feel that your expectation (a volume being visible
as soon as it is created) is a very reasonable one - though incompatible
with the existing implementation.

Compared to AFS we have made a step in the right direction by the implicit
volume naming in "cfs mkm", may be some day we can go further.

Best regards,
--
Ivan
Received on 2005-09-12 05:10:39