update_sharing: weaken assumptions about db layout
authorHelmut Grohne <helmut@subdivi.de>
Fri, 21 Feb 2014 20:59:04 +0000 (21:59 +0100)
committerHelmut Grohne <helmut@subdivi.de>
Fri, 21 Feb 2014 20:59:04 +0000 (21:59 +0100)
commit7389e4b00f6add611e8d6b318654056097d6d546
tree60bfd704081c059ea442b27169c1098abab4d0f9
parent332ac9eafb235443f163c606ced95dcbd615815e
update_sharing: weaken assumptions about db layout

Hash functions are partitioned into equivalence classes. We are
generally only interested in sharing among hash functions with the same
equivalence class, but the algorithm would compute any sharing. While
the current layout never produces the same hashes for functions in
difference equivalence classes (for different output length), that may
change in future.

Also allow hash functions, that belong to no equivalence class at all
(eqclass = NULL) as a means to add additional metadata to content
without computing any sharing for it.
update_sharing.py