Bug#919778: Bug#918566: Lost of code copies of MurmurHash3 (Was: Bug#918566: mash FTBFS on big endian: test failures)
On Fri, Feb 08, 2019 at 04:54:28PM +0100, Fabian Klötzl wrote: > > > > [2] https://buildd.debian.org/status/package.php?p=libmurmurhash=sid > > > I hope to have fixed the build issues upstream. Have pushed a new—and > hopefully working—version to salsa. Could you sponsor another upload? I will > take a further look at the package next week. Thanks for your work on this - just uploaded. > Have a nice weekend Same to you Andreas. -- http://fam-tille.de
Bug#919778: Bug#918566: Lost of code copies of MurmurHash3 (Was: Bug#918566: mash FTBFS on big endian: test failures)
Hi Andreas, On 07.02.19 14:58, Andreas Tille wrote: There are also build issues of libmurmurhash on some architectures[2] Any idea what to do next? [2] https://buildd.debian.org/status/package.php?p=libmurmurhash=sid I hope to have fixed the build issues upstream. Have pushed a new—and hopefully working—version to salsa. Could you sponsor another upload? I will take a further look at the package next week. Have a nice weekend Fabian
Bug#919778: Bug#918566: Lost of code copies of MurmurHash3 (Was: Bug#918566: mash FTBFS on big endian: test failures)
Hi, On 07.02.19 16:00, Andreas Tille wrote: > I've obviously missed that part of your mail. It is fixed now and I'll > re-upload. No worries. The alternative would have been to create a separate set of unit tests for the 32bit architectures. > > Meanwhile I've fixed the symbols file in Git. Please git pull. > While your at it, could you also push the tags? Thanks in advance Fabian
Bug#919778: Bug#918566: Lost of code copies of MurmurHash3 (Was: Bug#918566: mash FTBFS on big endian: test failures)
Hi Fabian, On Thu, Feb 07, 2019 at 03:11:49PM +0100, Fabian Klötzl wrote: > > > ./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. I've obviously missed that part of your mail. It is fixed now and I'll re-upload. > > 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. Meanwhile I've fixed the symbols file in Git. Please git pull. Kind regards Andreas. -- http://fam-tille.de
Bug#919778: Bug#918566: Lost of code copies of MurmurHash3 (Was: Bug#918566: mash FTBFS on big endian: test failures)
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
Bug#919778: Bug#918566: Lost of code copies of MurmurHash3 (Was: Bug#918566: mash FTBFS on big endian: test failures)
On Thu, Feb 07, 2019 at 01:41:54PM +0100, Andreas Tille wrote: > On Thu, Feb 07, 2019 at 12:03:46PM +0100, Fabian Klötzl wrote: > > I had a look and could trace the failure to two issues. 1) The test should > > run sequentially; can be fixed via a simple override. 2) The previous commit > > (ARCH32) doesn't work as expected [1]. Building on AMD64 will still have the > > -DARCH32 flags. This then leads to a different hash function being used and > > the tests failing. I tried to fix the conditional in the makefile but cannot > > figure out what is wrong with it in the first place. Also it should > > deactivate unit tests on 32bit while at it. Could you take another look at > > the conditional? > > Works. Just uploaded. Thanks a lot for your contribution, Andreas. 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", There are also build issues of libmurmurhash on some architectures[2] Any idea what to do next? Kind regards Andreas. [1] https://buildd.debian.org/status/fetch.php?pkg=mash=i386=2.1%2Bdfsg-1=1549547123=0 [2] https://buildd.debian.org/status/package.php?p=libmurmurhash=sid -- http://fam-tille.de