(Illustration by Gaich Muramatsu)
On Thu, Nov 01, 2001 at 03:13:03AM -0600, Ryan M. Lefever wrote: > Then on machine A, this makes /coda/testvol a symbolic link, indicating a > conflict. So, I perform the following: > > >$ repair > >repair > beginrepair /coda/testvol > >No such replica vid=0xffffffff > >Could not allocate replica list > >beginrepair failed. > >repair > quit > > Then, /coda/testvol now exists as a directory, and there is now a > /coda/testvol/global symbolic link and directories named > /coda/testvol/local & /coda/testvol/dir. So, I try repair again: What kernel are you using, /coda/testvol/dir shouldn't exist anymore and is probably the reason the repair is failing. It simply can't figure out which object that is (as it 'temporarily' doesn't exist anymore). In any case, after a repair failure like this, doing 'cfs endrepair /coda/testvol' (or 'cfs er' for short) should collapse the conflict back into a symlink. > venus on machine A and purge coda.testvol. As a side question, why is the > creation of directory dir in 2 different network partitions a conflict > that must be manually repaired? Why isn't it automatically resolved? Because they both have different unique file identifiers. They are as far as the filesystem is concerned two totally different objects that happen to have the same name in /coda/testvol. Just like when you do 'echo onetwothree > /coda/testvol/file' and 'echo fourfivesix > /coda/testvol/file'. We create 2 different objects, X containing 'onetwothree', and Y containing 'fourfivesix'. Then we create a directory entry 'file' in /coda/testvol that points to X on one server and Y on the other server. The objects themselves are 'runt-resolved' i.e. after resolution both servers have both X and Y, but both versions of the /coda/testvol directory cannot be resolved. > Also, where can I find out exactly what kinds of operations result in > automatically resolvable conflicts and which do not? Any discrepancy between the servers is a 'conflict', all replicas are keeping a log of past directory operations we can successfully resolve any conflicts where we can successfully merge these logs into one. JanReceived on 2001-11-01 14:49:17