[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
[stellation-res] New workspace code status, with news of a very obscure bug.
|
I just fixed a very obscure bug in the workspace code. The code was
failing several tests in an intermittent fashion. After several hours
of debugging, I learned that the resolution of File.lastModified() is
only one second in Linux, and the new workspace code was so much
faster that some tests were updating files in the same second as the
checkout, so the change was not detected! Adding a 'sleep 1' at end
of Checkout fixed the problem.
I revisited, and largely rewrote, all the code related to signatures
(two versions of an artifact are deemed to be different if and only if
they have different signatures). The signature is now the MD5 checksum
of the artifact content (for text and data), or of the members map
(for compounds) or the link target (for links). I also recently
realized that if we insert MessageDigest filter streams at the
appropriate point in artifact input/output, we can compute these
signatures with minimal overhead, and I will try to do this soon.
I hope to post my latest code later today. Hopefully Mark will be able
to merge it into CVS before our site goes down for the weekend.
dave
--
Dave Shields, IBM Research, shields@xxxxxxxxxxxxxx.