memcached_generate_hash(3)

memcached_generate_hash3

Generating hash values directly hash a key value

Usage

#include <libmemcached/memcached.h>

Compile and link with -lmemcachedutil -lmemcached

uint32_t memcached_generate_hash_value(const char *key, size_t key_length, memcached_hash_t hash_algorithm)
Parameters
•

key -- the key to generate a hash of

•

key_length -- the length of the key without any terminating zero

•

hash_algorithm -- memcached_hash_t, the algorithm to use

Returns

a 32 bit hash value

uint32_t memcached_generate_hash(memcached_st <#_CPPv412memcached_st> *ptr, const char *key, size_t key_length)
Parameters
•

ptr -- pointer to an initialized memcached_st <#_CPPv412memcached_st> struct

•

key -- the key to generate a hash of

•

key_length -- the length of the key without any terminating zero

Returns

a 32 bit hash value

typedef enum memcached_hash_t memcached_hash_t
enum memcached_hash_t
enumerator MEMCACHED_HASH_DEFAULT
enumerator MEMCACHED_HASH_MD5
enumerator MEMCACHED_HASH_CRC
enumerator MEMCACHED_HASH_FNV1_64
enumerator MEMCACHED_HASH_FNV1A_64
enumerator MEMCACHED_HASH_FNV1_32
enumerator MEMCACHED_HASH_FNV1A_32
enumerator MEMCACHED_HASH_HSIEH
enumerator MEMCACHED_HASH_MURMUR
enumerator MEMCACHED_HASH_JENKINS
enumerator MEMCACHED_HASH_MURMUR3
enumerator MEMCACHED_HASH_CUSTOM

Overview

memcached_generate_hash_value() allows you to hash a key using one of the hash functions defined in the library. This method is provided for the convenience of higher-level language bindings and is not necessary for normal memcache operations.

Support for MEMCACHED_HASH_HSIEH is a compile time option that is disabled by default. To enable tests for this hashing algorithm, configure and build libmemcached with the Hsieh hash enabled.

memcached_generate_hash() takes a memcached_st <#_CPPv412memcached_st> structure and produces the hash value that would have been generated based on the defaults of memcached_st <#_CPPv412memcached_st>.

As of version 0.36 all hash methods have been placed into the library libhashkit(3) which is linked with libmemcached(3). For more information please see its documentation.

Return value

A 32-bit integer which is the result of hashing the given key. For 64-bit hash algorithms, only the least-significant 32 bits are returned.

Releases

8 releases since Debian 7 (Wheezy); the text changed 4 times.

  1. 7
  2. 8–11
  3. 12
  4. 13
  5. Arch

From libmemcached-awesome 1.1.4-4 in Arch Linux 2026-11-01. Parsed by carta from the page's man source.