X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=docs%2Fmemcached_set.pod;h=6e962d382ea6522037fb6cc20d67139e96d5e8ff;hb=a4822a8fac8aa8fe0206a4f5ea64778ef1a09755;hp=39dd86d2bd6e21c0d3c0dece90aefaa4d2e1e0bc;hpb=93cab40b9112f97376381038e83240a7b28c24ea;p=m6w6%2Flibmemcached diff --git a/docs/memcached_set.pod b/docs/memcached_set.pod index 39dd86d2..6e962d38 100755 --- a/docs/memcached_set.pod +++ b/docs/memcached_set.pod @@ -15,35 +15,91 @@ C Client Library for memcached (libmemcached, -lmemcached) char *key, size_t key_length, char *value, size_t value_length, time_t expiration, - uint16_t flags); + uint32_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); + uint32_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); + uint32_t flags); memcached_return memcached_prepend(memcached_st *ptr, char *key, size_t key_length, char *value, size_t value_length, time_t expiration, - uint16_t flags) + uint32_t flags) memcached_return memcached_append(memcached_st *ptr, char *key, size_t key_length, char *value, size_t value_length, time_t expiration, - uint16_t flags) + uint32_t flags) + memcached_return + memcached_cas(memcached_st *ptr, + char *key, size_t key_length, + char *value, size_t value_length, + time_t expiration, + uint32_t flags, + uint64_t cas); + + memcached_return + memcached_set_by_key(memcached_st *ptr, + char *master_key, size_t master_key_length, + char *key, size_t key_length, + char *value, size_t value_length, + time_t expiration, + uint32_t flags); + + memcached_return + memcached_add_by_key(memcached_st *ptr, + char *master_key, size_t master_key_length, + char *key, size_t key_length, + char *value, size_t value_length, + time_t expiration, + uint32_t flags); + + memcached_return + memcached_replace_by_key(memcached_st *ptr, + char *master_key, size_t master_key_length, + char *key, size_t key_length, + char *value, size_t value_length, + time_t expiration, + uint32_t flags); + + memcached_return + memcached_prepend_by_key(memcached_st *ptr, + char *master_key, size_t master_key_length, + char *key, size_t key_length, + char *value, size_t value_length, + time_t expiration, + uint32_t flags); + + memcached_return + memcached_append_by_key(memcached_st *ptr, + char *master_key, size_t master_key_length, + char *key, size_t key_length, + char *value, size_t value_length, + time_t expiration, + uint32_t flags); + + memcached_return + memcached_cas_by_key(memcached_st *ptr, + char *master_key, size_t master_key_length, + char *key, size_t key_length, + char *value, size_t value_length, + time_t expiration, + uint32_t flags, + uint64_t cas); =head1 DESCRIPTION @@ -71,8 +127,21 @@ 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_set() with non-blocking IO is the fastest way to store data on 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