On 07.02.19 14:58, Andreas Tille wrote:

Unfortunately the -DARCH32 flag (which is set according to the build log[1]) 
does
not help on i386 architecture:


./mash info -d test/reads.msh > test/reads.json
diff test/genomes.json test/ref/genomes.json
7c7
<  "hashType" : "MurmurHash3_x86_32",
---
  "hashType" : "MurmurHash3_x64_128",

mash uses two different hash functions depending on the architecture: MurmurHash3_x86_32 for 32 bit and MurmurHash3_x64_128 for 64 bit architectures; These produce different hash values. The tests compare the results of one run with a precomputed result. However, the tests check against the 64bit reference. Thus they are bound to fail on 32bit. Hence my suggestion to turn the tests off for 32bit.


There are also build issues of libmurmurhash on some architectures[2]

This is curious. One of the three hash functions is wrong, but at least consistently wrong. I'll look into that.

Fabian

Reply via email to