Details

    • Type: Improvement Improvement
    • Status: Resolved
    • Priority: Trivial Trivial
    • Resolution: Fixed
    • Fix Version/s: 1.2.0 beta 1
    • Component/s: Core
    • Labels:

      Description

      MurmurHash version 3 was finalized on June 3. It provides an enormous speedup and increased robustness over version 2, which is implemented in Cassandra. Information here:

      http://code.google.com/p/smhasher/

      The reference implementation is here:
      http://code.google.com/p/smhasher/source/browse/trunk/MurmurHash3.cpp?spec=svn136&r=136

      I have already done the work to port the (public domain) reference implementation to Java in the MurmurHash class and updated the BloomFilter class to use the new implementation:

      https://github.com/lindauer/cassandra/commit/cea6068a4a3e5d7d9509335394f9ef3350d37e93

      Apart from the faster hash time, the new version only requires one call to hash() rather than 2, since it returns 128 bits of hash instead of 64.

      1. CASSANDRA-2975-v2-additions.patch
        1 kB
        Pavel Yaskevich
      2. 0001-CASSANDRA-2975-v2.patch
        51 kB
        Vijay
      3. 0001-CASSANDRA-2975.patch
        48 kB
        Vijay
      4. Murmur3Benchmark.java
        8 kB
        David Allsopp
      5. 0002-Backwards-compatibility-with-files-using-Murmur2-blo.patch
        28 kB
        Brian Lindauer
      6. 0001-Convert-BloomFilter-to-use-MurmurHash-v3-instead-of-.patch
        5 kB
        Brian Lindauer

        Issue Links

          Activity

            People

            • Assignee:
              Vijay
              Reporter:
              Brian Lindauer
              Reviewer:
              Pavel Yaskevich
            • Votes:
              2 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development