ae5677778dec6b5818fd77c860de743a92caeb74
[awesomized/libmemcached] / docs / source / libmemcached / memcached_fetch.rst
1 memcached_fetch
2 =================
3
4 .. index:: object: memcached_st
5
6 SYNOPSIS
7 --------
8
9 #include <libmemcached/memcached.h>
10
11 .. function:: char *memcached_fetch(memcached_st *ptr, char *key, size_t *key_length, size_t *value_length, uint32_t *flags, memcached_return_t *error)
12
13 .. deprecated:: 0.50
14 Use :func:`memcached_fetch_result` instead.
15
16 Compile and link with -lmemcached
17
18 DESCRIPTION
19 -----------
20
21 :func:`memcached_fetch` is used to fetch an individual value from the server. :func:`memcached_mget` must always be called before using this method.
22 You must pass in a key and its length to fetch the object. You must supply
23 three pointer variables which will give you the state of the returned
24 object. A :type:`uint32_t` pointer to contain whatever flags you stored with the value, a :type:`size_t` pointer which will be filled with size of of the
25 object, and a :type:`memcached_return_t` pointer to hold any error. The
26 object will be returned upon success and NULL will be returned on failure. `MEMCACHED_END` is returned by the \*error value when all objects that have been found are returned. The final value upon `MEMCACHED_END` is null.
27
28 Values returned by :func:`memcached_fetch` must be freed by the caller.
29
30 All of the above functions are not tested when the
31 `MEMCACHED_BEHAVIOR_USE_UDP` has been set. Executing any of these
32 functions with this behavior on will result in `MEMCACHED_NOT_SUPPORTED` being returned, or for those functions which do not return a :type:`memcached_return_t`, the error function parameter will be set to `MEMCACHED_NOT_SUPPORTED`.
33
34 RETURN VALUE
35 ------------
36
37 :func:`memcached_fetch` sets error to
38 to `MEMCACHED_END` upon successful conclusion.
39 `MEMCACHED_NOTFOUND` will be return if no keys at all were found.
40
41 `MEMCACHED_KEY_TOO_BIG` is set to error whenever :func:`memcached_fetch` was used
42 and the key was set larger then `MEMCACHED_MAX_KEY`, which was the largest
43 key allowed for the original memcached ascii server.
44
45 SEE ALSO
46 --------
47
48 .. only:: man
49
50 :manpage:`memcached(1)` :manpage:`libmemcached(3)` :manpage:`memcached_strerror(3)` :manpage:`memcached_fetch_result(3)`
51