From mboxrd@z Thu Jan 1 00:00:00 1970 Date: Tue, 21 Apr 2015 18:30:50 +0000 From: hruodr@gmail.com To: 9fans@9fans.net Message-ID: <5536975a.l8Wm63exg0ejuKfK%hruodr@gmail.com> User-Agent: Heirloom mailx 12.4 7/29/08 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Subject: Re: [9fans] thoughs about venti+fossil Topicbox-Message-UUID: 4e20b158-ead9-11e9-9d60-3106f5b1d025 Dear Sirs! I have a question about this old discussion: http://www.mail-archive.com/9fans@cse.psu.edu/msg17960.html And about the following answer: > if you change lump.c to say > > int verifywrites = 1; > > then venti will check every block as it is written to make > sure there is no hash collision. this is not the default (anymore). Does this mean, that Plan9 by default supposes that A=B if hash(A)=hash(B)? That this was not the default before, but it is now? That I still have the possibility of a "full check" of A=B (and not supposing it after checking hash(A)=hash(B)) by changing "int verifywrites = 1;" in "lump.c"? I do not want to revive the discussion, because I have the feeling that the discussion about the thema easily becomes very ideological. I had it just some time ago, here my last word: http://thread.gmane.org/gmane.os.openbsd.misc/206951/focus=207340 In fact I feel bad declaring A=B when hash(A)=hash(B), but I know that the probability of an error, at least by experience, is very small, negligible (although I have scruples saying it). Just a bad feeling, perhaps more against this kind of "probabilistic programming" than against the probability of error (that I do not exactly know). My question is hence not about the theory behind, not about a justification of the test with hash functions. I just want to know why the default was changed, why originaly A=B was checked even if one was sure that the probability of error by only checking hash(A)=hash(B) is negligible, why the possibility of changing this default exists. Rodrigo.