merge
[m6w6/libmemcached] / docs / memcached_get.pod
index 458a55a9571479a6ea58bfe382ad9d27e4bd011e..f2f2033c33f0e9018af348c89c49d07ea08c6611 100755 (executable)
@@ -22,15 +22,34 @@ C Client Library for memcached (libmemcached, -lmemcached)
                        memcached_return *error);
 
   memcached_return
-    memcached_mget (memcached_st *ptr, 
-                    char **keys, size_t *key_length, 
-                    unsigned int number_of_keys);
+  memcached_mget (memcached_st *ptr, 
+                  char **keys, size_t *key_length, 
+                  unsigned int number_of_keys);
+  char *
+  memcached_get_by_key(memcached_st *ptr, 
+                       char *master_key, size_t master_key_length, 
+                       char *key, size_t key_length, 
+                       size_t *value_length, 
+                       uint16_t *flags,
+                       memcached_return *error);
+
+  memcached_return 
+  memcached_mget_by_key(memcached_st *ptr, 
+                        char *master_key, size_t master_key_length,
+                        char **keys, size_t *key_length, 
+                        unsigned int number_of_keys);
 
   char *memcached_fetch (memcached_st *ptr,
                          char *key, size_t *key_length, 
                          size_t *value_length,
                          uint16_t *flags, 
                          memcached_return *error);
+  memcached_return 
+  memcached_fetch_execute(memcached_st *ptr, 
+                          unsigned int (*callback[])(memcached_st *ptr, memcached_result_st *result, void *context),
+                          void *context,
+                          unsigned int number_of_callbacks
+                         )
 
 =head1 DESCRIPTION
 
@@ -45,7 +64,12 @@ upon success and NULL will be returned on failure.
 memcached_mget() is used to select multiple keys at once. For multiple key
 operations it is always faster to use this function. This function always
 works asynchronously. memcached_fetch() is then used to retrieve any keys
-found. No error is given on keys that are not found.
+found. No error is given on keys that are not found. You must call either
+memcached_fetch() or memcached_fetch_result() after a successful call to
+memcached_mget(). You should continue to call these functions until they
+return NULL (aka no more values). If you need to quit in the middle of a
+memcached_get() call, execute a memcached_quit(). After you do this, you can
+issue new queries against the server.
 
 memcached_fetch() is used to fetch an individual value from the server. 
 memcached_mget() must always be called before using this method.  You
@@ -62,6 +86,19 @@ to the server. For more information please refer to the memcached_result_st(3)
 help. This function will dynamically allocate a result structure for you
 if you do not pass one to the function.
 
+memcached_fetch_execute() is a callback function for result sets. Instead
+of returning the results to you for processing, it passes each of the
+result sets to the list of functions you provide. It passes to the function
+a memcached_st that can be cloned for use in called the cluster (it can not 
+be used directly). It also passed a result set which does not need to be freed.
+Finally it passes a "context". This is just a pointer to a memory reference
+you supply the calling function. 
+
+memcached_get_by_key() and memcached_mget_by_key() behave in a similar nature
+as memcached_get() and memcached_mget(). The difference is that they take
+a master key that is used for determining which server an object was stored
+if key partitioning was used for storage.
+
 =head1 RETURN
 
 All objects returned must be freed by the calling application.