logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

memcached_increment - Incrementing and Decrementing Values

Description

memcached(1) servers have the ability to increment and decrement keys (overflow and underflow are not detected). This gives you the ability to use memcached to generate shared sequences of values. memcached_increment() takes a key and key_length and increments the value by the offset passed to it. The value is then returned via the uint32_t value pointer you pass to it. memcached_decrement() takes a key and key_length and decrements the value by the offset passed to it. The value is then returned via the uint32_t value pointer you pass to it. memcached_increment_with_initial() takes a key and key_length and increments the value by the offset passed to it. If the object specified by key does not exist, one of two things may happen: If the expiration value is MEMCACHED_EXPIRATION_NOT_ADD, the operation will fail. For all other expiration values, the operation will succeed by seeding the value for that key with a initial value to expire with the provided expiration time. The flags will be set to zero. The value is then returned via the uint32_t value pointer you pass to it. memcached_increment_with_initial is only available when using the binary protocol. memcached_decrement_with_initial() takes a key and key_length and decrements the value by the offset passed to it. If the object specified by key does not exist, one of two things may happen: If the expiration value is MEMCACHED_EXPIRATION_NOT_ADD, the operation will fail. For all other expiration values, the operation will succeed by seeding the value for that key with a initial value to expire with the provided expiration time. The flags will be set to zero. The value is then returned via the uint32_t value pointer you pass to it. memcached_decrement_with_initial() is only available when using the binary protocol. memcached_increment_by_key(), memcached_decrement_by_key(), memcached_increment_with_initial_by_key(), and memcached_decrement_with_initial_by_key() are master key equivalents of the above.

Name

memcached_increment - Incrementing and Decrementing Values

Return Value

A value of type memcached_return_t is returned. On success that value will be MEMCACHED_SUCCESS. Use memcached_strerror() to translate this value to a printable string.

See Also

memcached(1)libmemcached(3)memcached_strerror(3) 1.1 Mar 31, 2024 MEMCACHED_INCREMENT(3)

Synopsis

#include<libmemcached/memcached.h> Compile and link with -lmemcached memcached_return_tmemcached_increment(memcached_st*ptr,constchar*key,size_tkey_length,uint32_toffset,uint64_t*value)memcached_return_tmemcached_decrement(memcached_st*ptr,constchar*key,size_tkey_length,uint32_toffset,uint64_t*value)memcached_return_tmemcached_increment_with_initial(memcached_st*ptr,constchar*key,size_tkey_length,uint64_toffset,uint64_tinitial,time_texpiration,uint64_t*value)memcached_return_tmemcached_decrement_with_initial(memcached_st*ptr,constchar*key,size_tkey_length,uint64_toffset,uint64_tinitial,time_texpiration,uint64_t*value)memcached_return_tmemcached_increment_by_key(memcached_st*ptr,constchar*group_key,size_tgroup_key_length,constchar*key,size_tkey_length,uint32_toffset,uint64_t*value)memcached_return_tmemcached_decrement_by_key(memcached_st*ptr,constchar*group_key,size_tgroup_key_length,constchar*key,size_tkey_length,uint32_toffset,uint64_t*value)memcached_return_tmemcached_increment_with_initial_by_key(memcached_st*ptr,constchar*group_key,size_tgroup_key_length,constchar*key,size_tkey_length,uint64_toffset,uint64_tinitial,time_texpiration,uint64_t*value)memcached_return_tmemcached_decrement_with_initial_by_key(memcached_st*ptr,constchar*group_key,size_tgroup_key_length,constchar*key,size_tkey_length,uint64_toffset,uint64_tinitial,time_texpiration,uint64_t*value)Parametersptr -- pointer to an initialized memcached_st struct • group_key -- key namespace • group_key_length -- length of the key namespace without any terminating zero • key -- the key • key_length -- length of the key without any terminating zero • offset -- offset to increment/decrement • initial -- initial value if key does not exist and expiration is not MEMCACHED_EXPIRATION_NOT_ADDexpiration -- expiration as a unix timestamp or as relative expiration time in seconds • value -- the resulting value after initialization/increment/decrement Returnsmemcached_return_t indicating success

See Also