org.apache.cassandra.utils

## Class MurmurHash

- java.lang.Object
- - org.apache.cassandra.utils.MurmurHash

    public class MurmurHash
    extends java.lang.Object

This is a very fast, non-cryptographic hash suitable for general hash-based lookup. See http://murmurhash.googlepages.com/ for more details. hash32() and hash64() are MurmurHash 2.0. hash3_x64_128() is *almost* MurmurHash 3.0. It was supposed to match, but we didn't catch a sign bug with the result that it doesn't. Unfortunately, we can't change it now without breaking Murmur3Partitioner. *

The C version of MurmurHash 2.0 found at that site was ported to Java by Andrzej Bialecki (ab at getopt org).

### Constructor Summary

Constructors
Constructor and Description
`MurmurHash()`

### Method Summary

All Methods Static Methods Concrete Methods
`protected static long` `fmix(long k)`
`protected static long` `getblock(java.nio.ByteBuffer key, int offset, int index)`
`static long` `hash2_64(java.nio.ByteBuffer key, int offset, int length, long seed)`
`static void` `hash3_x64_128(java.nio.ByteBuffer key, int offset, int length, long seed, long[] result)`
`static int` `hash32(java.nio.ByteBuffer data, int offset, int length, int seed)`
`protected static long` `rotl64(long v, int n)`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### MurmurHash

    public MurmurHash()

### Method Detail

#### hash32

    public static int hash32(java.nio.ByteBuffer data,
                             int offset,
                             int length,
                             int seed)

#### hash2_64

    public static long hash2_64(java.nio.ByteBuffer key,
                                int offset,
                                int length,
                                long seed)

#### getblock

    protected static long getblock(java.nio.ByteBuffer key,
                                   int offset,
                                   int index)

#### rotl64

    protected static long rotl64(long v,
                                 int n)

#### fmix

    protected static long fmix(long k)

#### hash3_x64_128

    public static void hash3_x64_128(java.nio.ByteBuffer key,
                                     int offset,
                                     int length,
                                     long seed,
                                     long[] result)