memcached_generate_hash - Generating hash values directly
Contents
Description
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 structure and produces the hash value that would have been
generated based on the defaults of memcached_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.
Name
memcached_generate_hash - Generating hash values directly
Hash a key value
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.
See Also
memcached(1)libmemcached(3)memcached_strerror(3)
1.1 Mar 31, 2024 MEMCACHED_GENERATE_HASH(3)
Synopsis
#include<libmemcached/memcached.h>
Compile and link with -lmemcachedutil -lmemcached
uint32_tmemcached_generate_hash_value(constchar*key,size_tkey_length,memcached_hash_thash_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_tmemcached_generate_hash(memcached_st*ptr,constchar*key,size_tkey_length)Parameters
• ptr -- pointer to an initialized memcached_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
typedefenummemcached_hash_tmemcached_hash_tenummemcached_hash_tenumeratorMEMCACHED_HASH_DEFAULTenumeratorMEMCACHED_HASH_MD5enumeratorMEMCACHED_HASH_CRCenumeratorMEMCACHED_HASH_FNV1_64enumeratorMEMCACHED_HASH_FNV1A_64enumeratorMEMCACHED_HASH_FNV1_32enumeratorMEMCACHED_HASH_FNV1A_32enumeratorMEMCACHED_HASH_HSIEHenumeratorMEMCACHED_HASH_MURMURenumeratorMEMCACHED_HASH_JENKINSenumeratorMEMCACHED_HASH_MURMUR3enumeratorMEMCACHED_HASH_CUSTOM
