X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=docs%2Fmemcached_set.pod;h=5e7ac18626e2ef8bccc660c86b2a5182bc8cdc2e;hb=b369db6ab57bc940618281a2be848542a406bb7c;hp=77d5c140861f48bc93402e81cf0c1d5c6b81a132;hpb=a11143256264a00e7437fa23ec8ff5196c5a5c0b;p=m6w6%2Flibmemcached diff --git a/docs/memcached_set.pod b/docs/memcached_set.pod index 77d5c140..5e7ac186 100755 --- a/docs/memcached_set.pod +++ b/docs/memcached_set.pod @@ -8,26 +8,105 @@ C Client Library for memcached (libmemcached, -lmemcached) =head1 SYNOPSIS -#include -memcached_return memcached_set(memcached_st *ptr, char *key, size_t key_length, - char *value, size_t value_length, - time_t expiration, - uint16_t flags); -memcached_return memcached_add(memcached_st *ptr, char *key, size_t key_length, - char *value, size_t value_length, - time_t expiration, - uint16_t flags); -memcached_return memcached_replace(memcached_st *ptr, char *key, size_t key_length, - char *value, size_t value_length, - time_t expiration, - uint16_t flags); + #include + + memcached_return + memcached_set (memcached_st *ptr, + const char *key, size_t key_length, + const char *value, size_t value_length, + time_t expiration, + uint32_t flags); + + memcached_return + memcached_add (memcached_st *ptr, + const char *key, size_t key_length, + const char *value, size_t value_length, + time_t expiration, + uint32_t flags); + + memcached_return + memcached_replace (memcached_st *ptr, + const char *key, size_t key_length, + const char *value, size_t value_length, + time_t expiration, + uint32_t flags); + + memcached_return + memcached_prepend(memcached_st *ptr, + const char *key, size_t key_length, + const char *value, size_t value_length, + time_t expiration, + uint32_t flags) + + memcached_return + memcached_append(memcached_st *ptr, + const char *key, size_t key_length, + const char *value, size_t value_length, + time_t expiration, + uint32_t flags) + memcached_return + memcached_cas(memcached_st *ptr, + const char *key, size_t key_length, + const char *value, size_t value_length, + time_t expiration, + uint32_t flags, + uint64_t cas); + + memcached_return + memcached_set_by_key(memcached_st *ptr, + const char *master_key, size_t master_key_length, + const char *key, size_t key_length, + const char *value, size_t value_length, + time_t expiration, + uint32_t flags); + + memcached_return + memcached_add_by_key(memcached_st *ptr, + const char *master_key, size_t master_key_length, + const char *key, size_t key_length, + const char *value, size_t value_length, + time_t expiration, + uint32_t flags); + + memcached_return + memcached_replace_by_key(memcached_st *ptr, + const char *master_key, size_t master_key_length, + const char *key, size_t key_length, + const char *value, size_t value_length, + time_t expiration, + uint32_t flags); + + memcached_return + memcached_prepend_by_key(memcached_st *ptr, + const char *master_key, size_t master_key_length, + const char *key, size_t key_length, + const char *value, size_t value_length, + time_t expiration, + uint32_t flags); + + memcached_return + memcached_append_by_key(memcached_st *ptr, + const char *master_key, size_t master_key_length, + const char *key, size_t key_length, + const char *value, size_t value_length, + time_t expiration, + uint32_t flags); + + memcached_return + memcached_cas_by_key(memcached_st *ptr, + const char *master_key, size_t master_key_length, + const char *key, size_t key_length, + const char *value, size_t value_length, + time_t expiration, + uint32_t flags, + uint64_t cas); =head1 DESCRIPTION -memcached_set() , memcached_add(), and memcached_replace() are all used to +memcached_set(), memcached_add(), and memcached_replace() are all used to store information on the server. All methods take a key, and its length to -store the object. Keys are currently limited to 250 charcterss by the -memcached server. You must also supply a value and a length. Optionally you +store the object. Keys are currently limited to 250 characters by the +memcached(1) server. You must also supply a value and a length. Optionally you may support an expiration time for the object and a 16 byte value (it is meant to be used as a bitmap). @@ -42,23 +121,45 @@ found on the server an error occurs. memcached_add() adds an object to the server. If the object is found on the server an error occurs, otherwise the value is stored. -memcached_set() with non-blocking IO is the fastest way to store data on the -server. +memcached_prepend() places a segment of data before the last piece of data +stored. Currently expiration and key are not used in the server. + +memcached_append() places a segment of data at the end of the last piece of +data stored. Currently expiration and key are not used in the server. + +memcached_cas() overwrites data in the server as long as the "cas" value is +still the same in the server. You can get the cas value of a result by +calling memcached_result_cas() on a memcached_result_st(3) structure. At the point +that this note was written cas is still buggy in memached. Turning on support +for it in libmemcached(3) is optional. Please see memcached_set() for +information on how to do this. + +memcached_set_by_key(), memcached_add_by_key(), memcached_replace_by_key(), +memcached_prepend_by_key(), memcached_append_by_key_by_key(), +memcached_cas_by_key() methods all behave in a similar method as the non key +methods. The difference is that they use their master_key parameter to map +objects to particular servers. + +If you are looking for performance, memcached_set() with non-blocking IO is +the fastest way to store data on the server. =head1 RETURN -All methods return a memcached_return value. On success the value will be -MEMCACHED_SUCCESS (see memcached_strerror() for more information on this). -For memcached_replace() and memcached_add() MEMCACHED_NOTSTORED is a +All methods return a value of type C. +On success the value will be C. +Use memcached_strerror() to translate this value to a printable string. + +For memcached_replace() and memcached_add(), C is a legitmate error in the case of a collision. =head1 HOME -To find out more information please check: http://tangent.org/552/libmemcached.html +To find out more information please check: +L =head1 AUTHOR -Brian Aker, brian@tangent.org +Brian Aker, Ebrian@tangent.orgE =head1 SEE ALSO