Coda File System

Re: Object in conflict

From: Jan Harkes <jaharkes_at_cs.cmu.edu>
Date: Tue, 22 Jan 2002 23:43:54 -0500
On Tue, Jan 22, 2002 at 10:35:08PM -0500, Tom Carroll wrote:
> On Tue, Jan 22, 2002 at 08:01:49PM -0500, Jan Harkes wrote:
> > So you obviously have a server-server conflict on the global object
> > which needs to be repaired from _another_ client.
> 
> The conflict occurred during an initial data load.  The
> object is visible only on the client that performed the transfer; the
> object does not exist on any other client.

It would still be possible to get a server-server conflict in such a
situation. A client might do a weak-reintegration, which involves
reintegrating with one of the replicas and then triggering resoltion,
but lose it's connection to the replica during the reintegration phase.
The server commits the reintegration log, but the client retries the
reintegration with the remaining replicas before noticing that the
original server is 'back'. This results in a server-server conflict even
with a single client.

Normally this wouldn't be a problem because objects with the same
store-id are considered equal, however every reintegration uses a
different storeid to avoid problems when the number of entries in the
reintegration log changes between attempts because of bandwidth
estimation changes.

But if other clients don't see the same object in the server tree, I
have no clue how this client can see a server-server conflict on that
file. The only solution I can see would be to purge the pending
modifications (cfs purgeml) which gets rid of the local part of the
conflict. Remove the partial tree on the servers, and retry the data
load from scratch, but do 'cfs strong ; cfs cs' before unpacking the
archive to try to keep the client fully connected during the operation.
It is slower, but much more reliable.

> I apologize for my ineptness, but I did understand the aforementioned
> instructions.  In hastiness, I did not present my position clearly.

My fault, I was a bit jumpy because of the many bounces I was receiving
in my inbox. One person decided to report that spam incident exactly 3
times so that our mailserver would go over the threshold that gets it
blacklisted for a week although the spam didn't even originate here and
I've got all the headers needed to block the actual spammer.

Contacting me would have been so much simpler, more effective and reduce
the part of my workload that prevents me from doing more useful stuff
like responding to emails, finding Coda bugs, and developing new code.
Just received more bounces in one day than spam in a whole month, grrr.

Jan
Received on 2002-01-22 23:43:26