A friend of mine and I have now spent many hours scattered through the
past few weeks playing with coda, first 4.6.6, then 5.0.0, so
hopefully I can contribute a bit from the viewpoint of an outsider to
the project. First off, I have to say that I am quite impressed.
While coda has plenty of rough spots, it has an amazing amount of
functionality. The free software community has needed a real
alternative to NFS for a long time, and THIS IS IT! I really want to
get my research group using coda, and I believe it is almost ready for
that. So, I'm happy to be one of the guinea pigs. :-)
Now to more concrete concerns. First, to point out where I'm coming
from, here's what we've been playing with. I've been building coda
from scratch on Debian 2.0/2.1 systems, and I've installed coda on a
FreeBSD 2.2.6 box using the precompiled binaries. (I've heard about
Debian packages, but I haven't found them - of course, I haven't
looked that hard. Are they around?)
So, here are some issues I've had:
* The source distribution has hardly any documentation! There is no
generic readme file, and there are no copies of the
INSTALL.<platform> files (which have been very helpful to me, thank
you!). I've downloaded the separate docs package, and that has
caused me a great amount of grief, even after patching the
sgml-tools source (I only had 1.0.9 around, not 1.0.7, and even
though the patch applied cleanly, the html build process was still
somewhat broken.) It would be wonderful if there was a precompiled
docs bundle - sometimes it isn't convenient to continuously browse
the web from home, especially when someone else needs the
phone. :-)
* I don't quite grok replicated servers, especially the parts having
to do with the root volume. From the howto, here is what is says
to do after setting up a non-SCM server:
1. Your server needs a server number, to be added to the
/vice/db/servers file ON THE SCM.
2. Make two new entries in the /vice/db/VSGDB file. One for your
new server by itself, one of the form: E0000104 scm-server
second-server.
3. Start updatesrv and updateclnt on the second server.
4. Start codasrv on the second server
5. Make a new volume from the SCM using createvol_rep giving the
address of the volume as E0000104.
6. Mount the volume as above.
#2 is not very clear to me - what should the line for the new
server look like? Maybe an example would help. Should my VSGDB
look like:
E0000100 scm-server
E0000100 second-server
E0000104 scm-server second-server
or
E0000100 scm-server
E0000101 second-server
E0000104 scm-server second-server
or
E0000100 scm-server
second-server
E0000104 scm-server second-server
? What I really want to do is have a read-write replicated root.
Is this currently impossible? Or does it happen automatically?
Even though I've played with this a bit, I'm not sure. I can
create and use a separate replicated volume (by using the second of
the above alternatives), but a) the replication is quite fragile,
and b) the root does not appear replicated (which is what I
expected). Do I have to create a read-only replicant of my root
partition, and install that on the replicated servers?
I think I'm missing some basic concepts here.
* Can you start venus without it referring to all replicated servers
of a given volume? Originally, I had a client that was only
talking to the SCM. Then, I added a second server, and created a
replicated volume. I could mount and unmount this volume on the
SCM client, but I couldn't access it! When I reinstalled the
client using both the scm-server and second-server, then I could
mount and access the replicated volume. The behavior was flaky
(after overflowing the local cache, we had to do some reboots, and
still things were weird), but it basically worked. So - does venus
need to know about ALL servers in the cell when it starts up?
* Does a client's cache have to be big enough to hold any single
file? Or does it have to be big enough to hold a whole directory?
We definitely had problems when we tried copying a 23M file into
coda when the client only was set up with a 20M cache.
I think that's it for now. I don't know if I'll be able to contribute
code patches for a while, but I'm pretty sure I can do bug reports
once I'm up and running.
Thanks!
--Anil
--
Anil Somayaji ([EMAIL PROTECTED])
http://www.cs.unm.edu/~soma
+1 505 872 3150
PGP signature