monotone-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Monotone-devel] cvssync freeze


From: William Uther
Subject: Re: [Monotone-devel] cvssync freeze
Date: Fri, 23 Mar 2007 08:16:26 +1100


On 20/03/2007, at 1:20 PM, Christof Petig wrote:

i) Either mtn_automate::get_sync_info() should be falling back to file
attributes when the cert doesn't contain the info it needs, or
Whatever writes the sync info into the cert needs to add sync info
for all files in the revision.  (I suspect the first option here is
better - it is backwards compatible with people who have already hit
this problem, and it is more space efficient.)

I did not hit this problem, yet. Of course I prefer translucent or delta
changes.

Yeah - but attrs are deta. It's just using mtn's internal structure to get that delta rather than rolling another mechanism.

and,

  ii) Failing an invariant should cause a clean windup, not a freeze
where the child and parent process are each waiting on the other.

Of course. I just did not get around to investigate why invariance
failure is not handled correctly. The error is most likely in
mtn_automate.cc (client failure) or mtn_cvs.cc (program failure).

In the .attrs branch I have cleaned up some of the exception handling. I removed a bunch of try..catch blocks that stopped things that should have failed from failing. I also added some code to delete the repository object when it goes out of scope. I'm hoping that will cause it to clean things up, but I haven't had an invariant failure recently. I should force one that I know used to freeze to test it.

Be well,

Will          :-}





reply via email to

[Prev in Thread] Current Thread [Next in Thread]