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 :-}
_______________________________________________
Monotone-devel mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/monotone-devel