commons-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Claude Warren (Jira)" <j...@apache.org>
Subject [jira] [Created] (CODEC-264) murmur3.hash64() does not account for unsigned in arguments
Date Sat, 02 Nov 2019 08:50:00 GMT
Claude Warren created CODEC-264:
-----------------------------------

             Summary: murmur3.hash64() does not account for unsigned in arguments
                 Key: CODEC-264
                 URL: https://issues.apache.org/jira/browse/CODEC-264
             Project: Commons Codec
          Issue Type: Bug
    Affects Versions: 1.13
            Reporter: Claude Warren
         Attachments: YonikMurmur3Tests.java

The original murmur3_x64_128 code used unsigned int for seed arguments.  Using the equivalent
bit patterns in the commons codec version does not yield the same results.

I believe this is because the commons version does not account for sign extension etc.

Yonic Seeley [~yonik] has explains the issue in his implementation https://github.com/yonik/java_util/blob/master/src/util/hash/MurmurHash3.java

He provides a test case to show that his code returns the same answers as the original C/C++
code.  I modified that test to call the codec version to show the error.

I have attached that test case.

Given that the original code is in the wild I am uncertain how to fix this issue.




--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Mime
View raw message