update docs
[m6w6/libmemcached] / memcached_behavior.html
1
2
3 <!DOCTYPE html>
4 <!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
5 <!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
6 <head>
7 <meta charset="utf-8">
8
9 <meta name="viewport" content="width=device-width, initial-scale=1.0">
10
11 <title>Modifying how the driver behaves &mdash; libmemcached 1.0.99 documentation</title>
12
13
14
15
16
17
18
19
20 <script type="text/javascript" src="_static/js/modernizr.min.js"></script>
21
22
23 <script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
24 <script src="_static/jquery.js"></script>
25 <script src="_static/underscore.js"></script>
26 <script src="_static/doctools.js"></script>
27 <script src="_static/language_data.js"></script>
28
29 <script type="text/javascript" src="_static/js/theme.js"></script>
30
31
32
33
34 <link rel="stylesheet" href="_static/css/theme.css" type="text/css" />
35 <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
36 <link rel="index" title="Index" href="genindex.html" />
37 <link rel="search" title="Search" href="search.html" />
38 <link rel="copyright" title="Copyright" href="copyright.html" />
39 <link rel="next" title="Setting callbacks" href="memcached_callback.html" />
40 <link rel="prev" title="Set encryption key" href="libmemcached-1.0/memcached_set_encoding_key.html" />
41 </head>
42
43 <body class="wy-body-for-nav">
44
45
46 <div class="wy-grid-for-nav">
47
48 <nav data-toggle="wy-nav-shift" class="wy-nav-side">
49 <div class="wy-side-scroll">
50 <div class="wy-side-nav-search" >
51
52
53
54 <a href="index.html" class="icon icon-home"> libmemcached
55
56
57
58 </a>
59
60
61
62
63 <div class="version">
64 1.0
65 </div>
66
67
68
69
70 <div role="search">
71 <form id="rtd-search-form" class="wy-form" action="search.html" method="get">
72 <input type="text" name="q" placeholder="Search docs" />
73 <input type="hidden" name="check_keywords" value="yes" />
74 <input type="hidden" name="area" value="default" />
75 </form>
76 </div>
77
78
79 </div>
80
81 <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
82
83
84
85
86
87
88 <p class="caption"><span class="caption-text">Basics</span></p>
89 <ul>
90 <li class="toctree-l1"><a class="reference internal" href="libmemcached.html">Introducing the C Client Library for memcached</a><ul>
91 <li class="toctree-l2"><a class="reference internal" href="libmemcached.html#synopsis">SYNOPSIS</a></li>
92 <li class="toctree-l2"><a class="reference internal" href="libmemcached.html#description">DESCRIPTION</a></li>
93 <li class="toctree-l2"><a class="reference internal" href="libmemcached.html#constants">CONSTANTS</a></li>
94 <li class="toctree-l2"><a class="reference internal" href="libmemcached.html#threads-and-processes">THREADS AND PROCESSES</a></li>
95 <li class="toctree-l2"><a class="reference internal" href="libmemcached.html#see-also">SEE ALSO</a></li>
96 </ul>
97 </li>
98 <li class="toctree-l1"><a class="reference internal" href="versioning.html">Versioning</a></li>
99 <li class="toctree-l1"><a class="reference internal" href="memcached_create.html">Creating and destroying a memcached_st</a><ul>
100 <li class="toctree-l2"><a class="reference internal" href="memcached_create.html#synopsis">SYNOPSIS</a></li>
101 <li class="toctree-l2"><a class="reference internal" href="memcached_create.html#description">DESCRIPTION</a></li>
102 <li class="toctree-l2"><a class="reference internal" href="memcached_create.html#return">RETURN</a></li>
103 <li class="toctree-l2"><a class="reference internal" href="memcached_create.html#see-also">SEE ALSO</a></li>
104 </ul>
105 </li>
106 <li class="toctree-l1"><a class="reference internal" href="libmemcached_examples.html">Examples</a><ul>
107 <li class="toctree-l2"><a class="reference internal" href="libmemcached_examples.html#description">DESCRIPTION</a></li>
108 <li class="toctree-l2"><a class="reference internal" href="libmemcached_examples.html#connecting-to-servers">Connecting to servers</a></li>
109 <li class="toctree-l2"><a class="reference internal" href="libmemcached_examples.html#creating-a-pool-of-servers">Creating a pool of servers</a></li>
110 <li class="toctree-l2"><a class="reference internal" href="libmemcached_examples.html#adding-a-value-to-the-server">Adding a value to the server</a></li>
111 <li class="toctree-l2"><a class="reference internal" href="libmemcached_examples.html#fetching-multiple-values">Fetching multiple values</a></li>
112 <li class="toctree-l2"><a class="reference internal" href="libmemcached_examples.html#see-also">SEE ALSO</a></li>
113 </ul>
114 </li>
115 <li class="toctree-l1"><a class="reference internal" href="libmemcached_configuration.html">Configuring Libmemcached</a><ul>
116 <li class="toctree-l2"><a class="reference internal" href="libmemcached_configuration.html#synopsis">SYNOPSIS</a></li>
117 <li class="toctree-l2"><a class="reference internal" href="libmemcached_configuration.html#description">DESCRIPTION</a></li>
118 <li class="toctree-l2"><a class="reference internal" href="libmemcached_configuration.html#environment">ENVIRONMENT</a></li>
119 <li class="toctree-l2"><a class="reference internal" href="libmemcached_configuration.html#return">RETURN</a></li>
120 <li class="toctree-l2"><a class="reference internal" href="libmemcached_configuration.html#example">EXAMPLE</a></li>
121 <li class="toctree-l2"><a class="reference internal" href="libmemcached_configuration.html#see-also">SEE ALSO</a></li>
122 </ul>
123 </li>
124 <li class="toctree-l1"><a class="reference internal" href="libmemcached/memcached_last_error_message.html">Retrieving errors</a><ul>
125 <li class="toctree-l2"><a class="reference internal" href="libmemcached/memcached_last_error_message.html#synopsis">SYNOPSIS</a></li>
126 <li class="toctree-l2"><a class="reference internal" href="libmemcached/memcached_last_error_message.html#description">DESCRIPTION</a></li>
127 <li class="toctree-l2"><a class="reference internal" href="libmemcached/memcached_last_error_message.html#return">RETURN</a></li>
128 <li class="toctree-l2"><a class="reference internal" href="libmemcached/memcached_last_error_message.html#see-also">SEE ALSO</a></li>
129 </ul>
130 </li>
131 </ul>
132 <p class="caption"><span class="caption-text">Working with Data</span></p>
133 <ul>
134 <li class="toctree-l1"><a class="reference internal" href="memcached_auto.html">Incrementing and Decrementing Values</a><ul>
135 <li class="toctree-l2"><a class="reference internal" href="memcached_auto.html#synopsis">SYNOPSIS</a></li>
136 <li class="toctree-l2"><a class="reference internal" href="memcached_auto.html#description">DESCRIPTION</a></li>
137 <li class="toctree-l2"><a class="reference internal" href="memcached_auto.html#return">RETURN</a></li>
138 <li class="toctree-l2"><a class="reference internal" href="memcached_auto.html#see-also">SEE ALSO</a></li>
139 </ul>
140 </li>
141 <li class="toctree-l1"><a class="reference internal" href="memcached_delete.html">Deleting data from a server</a><ul>
142 <li class="toctree-l2"><a class="reference internal" href="memcached_delete.html#synopsis">SYNOPSIS</a></li>
143 <li class="toctree-l2"><a class="reference internal" href="memcached_delete.html#description">DESCRIPTION</a></li>
144 <li class="toctree-l2"><a class="reference internal" href="memcached_delete.html#return">RETURN</a></li>
145 <li class="toctree-l2"><a class="reference internal" href="memcached_delete.html#see-also">SEE ALSO</a></li>
146 </ul>
147 </li>
148 <li class="toctree-l1"><a class="reference internal" href="libmemcached/memcached_exist.html">Determine if a keys exists.</a><ul>
149 <li class="toctree-l2"><a class="reference internal" href="libmemcached/memcached_exist.html#synopsis">SYNOPSIS</a></li>
150 <li class="toctree-l2"><a class="reference internal" href="libmemcached/memcached_exist.html#description">DESCRIPTION</a></li>
151 <li class="toctree-l2"><a class="reference internal" href="libmemcached/memcached_exist.html#return">RETURN</a></li>
152 <li class="toctree-l2"><a class="reference internal" href="libmemcached/memcached_exist.html#see-also">SEE ALSO</a></li>
153 </ul>
154 </li>
155 <li class="toctree-l1"><a class="reference internal" href="memcached_flush_buffers.html">Flushing client buffers</a><ul>
156 <li class="toctree-l2"><a class="reference internal" href="memcached_flush_buffers.html#synopsis">SYNOPSIS</a></li>
157 <li class="toctree-l2"><a class="reference internal" href="memcached_flush_buffers.html#description">DESCRIPTION</a></li>
158 <li class="toctree-l2"><a class="reference internal" href="memcached_flush_buffers.html#return">RETURN</a></li>
159 <li class="toctree-l2"><a class="reference internal" href="memcached_flush_buffers.html#see-also">SEE ALSO</a></li>
160 </ul>
161 </li>
162 <li class="toctree-l1"><a class="reference internal" href="memcached_flush.html">Wiping clean the contents of a server</a><ul>
163 <li class="toctree-l2"><a class="reference internal" href="memcached_flush.html#synopsis">SYNOPSIS</a></li>
164 <li class="toctree-l2"><a class="reference internal" href="memcached_flush.html#description">DESCRIPTION</a></li>
165 <li class="toctree-l2"><a class="reference internal" href="memcached_flush.html#return">RETURN</a></li>
166 <li class="toctree-l2"><a class="reference internal" href="memcached_flush.html#see-also">SEE ALSO</a></li>
167 </ul>
168 </li>
169 <li class="toctree-l1"><a class="reference internal" href="memcached_get.html">Retrieving data from the server</a><ul>
170 <li class="toctree-l2"><a class="reference internal" href="memcached_get.html#synopsis">SYNOPSIS</a></li>
171 <li class="toctree-l2"><a class="reference internal" href="memcached_get.html#description">DESCRIPTION</a></li>
172 <li class="toctree-l2"><a class="reference internal" href="memcached_get.html#return">RETURN</a></li>
173 <li class="toctree-l2"><a class="reference internal" href="memcached_get.html#see-also">SEE ALSO</a></li>
174 </ul>
175 </li>
176 <li class="toctree-l1"><a class="reference internal" href="memcached_result_st.html">Working with result sets</a><ul>
177 <li class="toctree-l2"><a class="reference internal" href="memcached_result_st.html#synopsis">SYNOPSIS</a></li>
178 <li class="toctree-l2"><a class="reference internal" href="memcached_result_st.html#description">DESCRIPTION</a></li>
179 <li class="toctree-l2"><a class="reference internal" href="memcached_result_st.html#return">RETURN</a></li>
180 <li class="toctree-l2"><a class="reference internal" href="memcached_result_st.html#see-also">SEE ALSO</a></li>
181 </ul>
182 </li>
183 <li class="toctree-l1"><a class="reference internal" href="memcached_set.html">Store, replace, add, or atomically add data to the server</a><ul>
184 <li class="toctree-l2"><a class="reference internal" href="memcached_set.html#synopsis">SYNOPSIS</a></li>
185 <li class="toctree-l2"><a class="reference internal" href="memcached_set.html#description">DESCRIPTION</a></li>
186 <li class="toctree-l2"><a class="reference internal" href="memcached_set.html#return">RETURN</a></li>
187 <li class="toctree-l2"><a class="reference internal" href="memcached_set.html#see-also">SEE ALSO</a></li>
188 </ul>
189 </li>
190 <li class="toctree-l1"><a class="reference internal" href="memcached_append.html">Appending or Prepending to data on the server</a><ul>
191 <li class="toctree-l2"><a class="reference internal" href="memcached_append.html#synopsis">SYNOPSIS</a></li>
192 <li class="toctree-l2"><a class="reference internal" href="memcached_append.html#description">DESCRIPTION</a></li>
193 <li class="toctree-l2"><a class="reference internal" href="memcached_append.html#return">RETURN</a></li>
194 <li class="toctree-l2"><a class="reference internal" href="memcached_append.html#see-also">SEE ALSO</a></li>
195 </ul>
196 </li>
197 <li class="toctree-l1"><a class="reference internal" href="memcached_cas.html">Working with data on the server in an atomic fashion</a><ul>
198 <li class="toctree-l2"><a class="reference internal" href="memcached_cas.html#synopsis">SYNOPSIS</a></li>
199 <li class="toctree-l2"><a class="reference internal" href="memcached_cas.html#description">DESCRIPTION</a></li>
200 <li class="toctree-l2"><a class="reference internal" href="memcached_cas.html#return">RETURN</a></li>
201 <li class="toctree-l2"><a class="reference internal" href="memcached_cas.html#see-also">SEE ALSO</a></li>
202 </ul>
203 </li>
204 </ul>
205 <p class="caption"><span class="caption-text">Advanced Topics</span></p>
206 <ul class="current">
207 <li class="toctree-l1"><a class="reference internal" href="libmemcached-1.0/memcached_set_encoding_key.html">Set encryption key</a><ul>
208 <li class="toctree-l2"><a class="reference internal" href="libmemcached-1.0/memcached_set_encoding_key.html#synopsis">SYNOPSIS</a></li>
209 <li class="toctree-l2"><a class="reference internal" href="libmemcached-1.0/memcached_set_encoding_key.html#description">DESCRIPTION</a></li>
210 <li class="toctree-l2"><a class="reference internal" href="libmemcached-1.0/memcached_set_encoding_key.html#return">RETURN</a></li>
211 <li class="toctree-l2"><a class="reference internal" href="libmemcached-1.0/memcached_set_encoding_key.html#see-also">SEE ALSO</a></li>
212 </ul>
213 </li>
214 <li class="toctree-l1 current"><a class="current reference internal" href="#">Modifying how the driver behaves</a><ul>
215 <li class="toctree-l2"><a class="reference internal" href="#synopsis">SYNOPSIS</a></li>
216 <li class="toctree-l2"><a class="reference internal" href="#description">DESCRIPTION</a></li>
217 <li class="toctree-l2"><a class="reference internal" href="#return">RETURN</a></li>
218 <li class="toctree-l2"><a class="reference internal" href="#notes">NOTES</a></li>
219 <li class="toctree-l2"><a class="reference internal" href="#see-also">SEE ALSO</a></li>
220 </ul>
221 </li>
222 <li class="toctree-l1"><a class="reference internal" href="memcached_callback.html">Setting callbacks</a><ul>
223 <li class="toctree-l2"><a class="reference internal" href="memcached_callback.html#synopsis">SYNOPSIS</a></li>
224 <li class="toctree-l2"><a class="reference internal" href="memcached_callback.html#description">DESCRIPTION</a></li>
225 <li class="toctree-l2"><a class="reference internal" href="memcached_callback.html#return">RETURN</a></li>
226 <li class="toctree-l2"><a class="reference internal" href="memcached_callback.html#see-also">SEE ALSO</a></li>
227 </ul>
228 </li>
229 <li class="toctree-l1"><a class="reference internal" href="memcached_dump.html">Dumping data from a server</a><ul>
230 <li class="toctree-l2"><a class="reference internal" href="memcached_dump.html#synopsis">SYNOPSIS</a></li>
231 <li class="toctree-l2"><a class="reference internal" href="memcached_dump.html#description">DESCRIPTION</a></li>
232 <li class="toctree-l2"><a class="reference internal" href="memcached_dump.html#return">RETURN</a></li>
233 <li class="toctree-l2"><a class="reference internal" href="memcached_dump.html#see-also">SEE ALSO</a></li>
234 </ul>
235 </li>
236 <li class="toctree-l1"><a class="reference internal" href="memcached_generate_hash_value.html">Generating hash values directly</a><ul>
237 <li class="toctree-l2"><a class="reference internal" href="memcached_generate_hash_value.html#synopsis">SYNOPSIS</a></li>
238 <li class="toctree-l2"><a class="reference internal" href="memcached_generate_hash_value.html#description">DESCRIPTION</a></li>
239 <li class="toctree-l2"><a class="reference internal" href="memcached_generate_hash_value.html#return">RETURN</a></li>
240 <li class="toctree-l2"><a class="reference internal" href="memcached_generate_hash_value.html#see-also">SEE ALSO</a></li>
241 </ul>
242 </li>
243 <li class="toctree-l1"><a class="reference internal" href="memcached_memory_allocators.html">Use custom allocators for embedded usage</a><ul>
244 <li class="toctree-l2"><a class="reference internal" href="memcached_memory_allocators.html#synopsis">SYNOPSIS</a></li>
245 <li class="toctree-l2"><a class="reference internal" href="memcached_memory_allocators.html#description">DESCRIPTION</a></li>
246 <li class="toctree-l2"><a class="reference internal" href="memcached_memory_allocators.html#notes">NOTES</a></li>
247 <li class="toctree-l2"><a class="reference internal" href="memcached_memory_allocators.html#return">RETURN</a></li>
248 <li class="toctree-l2"><a class="reference internal" href="memcached_memory_allocators.html#see-also">SEE ALSO</a></li>
249 </ul>
250 </li>
251 <li class="toctree-l1"><a class="reference internal" href="memcached_quit.html">Disconnecting a client from a server</a><ul>
252 <li class="toctree-l2"><a class="reference internal" href="memcached_quit.html#synopsis">SYNOPSIS</a></li>
253 <li class="toctree-l2"><a class="reference internal" href="memcached_quit.html#description">DESCRIPTION</a></li>
254 <li class="toctree-l2"><a class="reference internal" href="memcached_quit.html#return">RETURN</a></li>
255 <li class="toctree-l2"><a class="reference internal" href="memcached_quit.html#see-also">SEE ALSO</a></li>
256 </ul>
257 </li>
258 <li class="toctree-l1"><a class="reference internal" href="libmemcached/memcached_return_t.html">Error Codes (memcached_return_t)</a><ul>
259 <li class="toctree-l2"><a class="reference internal" href="libmemcached/memcached_return_t.html#synopsis">SYNOPSIS</a></li>
260 <li class="toctree-l2"><a class="reference internal" href="libmemcached/memcached_return_t.html#see-also">SEE ALSO</a></li>
261 </ul>
262 </li>
263 <li class="toctree-l1"><a class="reference internal" href="memcached_sasl.html">SASL support</a><ul>
264 <li class="toctree-l2"><a class="reference internal" href="memcached_sasl.html#synopsis">SYNOPSIS</a></li>
265 <li class="toctree-l2"><a class="reference internal" href="memcached_sasl.html#description">DESCRIPTION</a></li>
266 <li class="toctree-l2"><a class="reference internal" href="memcached_sasl.html#return">RETURN</a></li>
267 <li class="toctree-l2"><a class="reference internal" href="memcached_sasl.html#see-also">SEE ALSO</a></li>
268 </ul>
269 </li>
270 <li class="toctree-l1"><a class="reference internal" href="memcached_server_st.html">Managing lists of servers</a><ul>
271 <li class="toctree-l2"><a class="reference internal" href="memcached_server_st.html#synopsis">SYNOPSIS</a></li>
272 <li class="toctree-l2"><a class="reference internal" href="memcached_server_st.html#description">DESCRIPTION</a></li>
273 <li class="toctree-l2"><a class="reference internal" href="memcached_server_st.html#return">RETURN</a></li>
274 <li class="toctree-l2"><a class="reference internal" href="memcached_server_st.html#see-also">SEE ALSO</a></li>
275 </ul>
276 </li>
277 <li class="toctree-l1"><a class="reference internal" href="memcached_servers.html">Manipulate the server information stored in memcached_st</a><ul>
278 <li class="toctree-l2"><a class="reference internal" href="memcached_servers.html#synopsis">SYNOPSIS</a></li>
279 <li class="toctree-l2"><a class="reference internal" href="memcached_servers.html#description">DESCRIPTION</a></li>
280 <li class="toctree-l2"><a class="reference internal" href="memcached_servers.html#return">RETURN</a></li>
281 <li class="toctree-l2"><a class="reference internal" href="memcached_servers.html#see-also">SEE ALSO</a></li>
282 </ul>
283 </li>
284 <li class="toctree-l1"><a class="reference internal" href="memcached_strerror.html">Converting Errors, memcached_return_t, to strings</a><ul>
285 <li class="toctree-l2"><a class="reference internal" href="memcached_strerror.html#synopsis">SYNOPSIS</a></li>
286 <li class="toctree-l2"><a class="reference internal" href="memcached_strerror.html#description">DESCRIPTION</a></li>
287 <li class="toctree-l2"><a class="reference internal" href="memcached_strerror.html#return">RETURN</a></li>
288 <li class="toctree-l2"><a class="reference internal" href="memcached_strerror.html#see-also">SEE ALSO</a></li>
289 </ul>
290 </li>
291 <li class="toctree-l1"><a class="reference internal" href="error_messages.html">Client Error messages</a><ul>
292 <li class="toctree-l2"><a class="reference internal" href="client_errors/MEMCACHED_AUTH_CONTINUE.html">MEMCACHED_AUTH_CONTINUE</a></li>
293 <li class="toctree-l2"><a class="reference internal" href="client_errors/MEMCACHED_AUTH_FAILURE.html">MEMCACHED_AUTH_FAILURE</a></li>
294 <li class="toctree-l2"><a class="reference internal" href="client_errors/MEMCACHED_AUTH_PROBLEM.html">MEMCACHED_AUTH_PROBLEM</a></li>
295 <li class="toctree-l2"><a class="reference internal" href="client_errors/MEMCACHED_BAD_KEY_PROVIDED.html">MEMCACHED_BAD_KEY_PROVIDED</a></li>
296 <li class="toctree-l2"><a class="reference internal" href="client_errors/MEMCACHED_BUFFERED.html">MEMCACHED_BUFFERED</a></li>
297 <li class="toctree-l2"><a class="reference internal" href="client_errors/MEMCACHED_CLIENT_ERROR.html">MEMCACHED_CLIENT_ERROR</a></li>
298 <li class="toctree-l2"><a class="reference internal" href="client_errors/MEMCACHED_CONNECTION_BIND_FAILURE.html">MEMCACHED_CONNECTION_BIND_FAILURE</a></li>
299 <li class="toctree-l2"><a class="reference internal" href="client_errors/MEMCACHED_CONNECTION_FAILURE.html">MEMCACHED_CONNECTION_FAILURE</a></li>
300 <li class="toctree-l2"><a class="reference internal" href="client_errors/MEMCACHED_CONNECTION_SOCKET_CREATE_FAILURE.html">MEMCACHED_CONNECTION_SOCKET_CREATE_FAILURE</a></li>
301 <li class="toctree-l2"><a class="reference internal" href="client_errors/MEMCACHED_DATA_DOES_NOT_EXIST.html">MEMCACHED_DATA_DOES_NOT_EXIST</a></li>
302 <li class="toctree-l2"><a class="reference internal" href="client_errors/MEMCACHED_DATA_EXISTS.html">MEMCACHED_DATA_EXISTS</a></li>
303 <li class="toctree-l2"><a class="reference internal" href="client_errors/MEMCACHED_DELETED.html">MEMCACHED_DELETED</a></li>
304 <li class="toctree-l2"><a class="reference internal" href="client_errors/MEMCACHED_DEPRECATED.html">MEMCACHED_DEPRECATED</a></li>
305 <li class="toctree-l2"><a class="reference internal" href="client_errors/MEMCACHED_E2BIG.html">MEMCACHED_E2BIG</a></li>
306 <li class="toctree-l2"><a class="reference internal" href="client_errors/MEMCACHED_END.html">MEMCACHED_END</a></li>
307 <li class="toctree-l2"><a class="reference internal" href="client_errors/MEMCACHED_ERRNO.html">MEMCACHED_ERRNO</a></li>
308 <li class="toctree-l2"><a class="reference internal" href="client_errors/MEMCACHED_FAILURE.html">MEMCACHED_FAILURE</a></li>
309 <li class="toctree-l2"><a class="reference internal" href="client_errors/MEMCACHED_FAIL_UNIX_SOCKET.html">MEMCACHED_FAIL_UNIX_SOCKET</a></li>
310 <li class="toctree-l2"><a class="reference internal" href="client_errors/MEMCACHED_FETCH_NOTFINISHED.html">MEMCACHED_FETCH_NOTFINISHED</a></li>
311 <li class="toctree-l2"><a class="reference internal" href="client_errors/MEMCACHED_HOST_LOOKUP_FAILURE.html">MEMCACHED_HOST_LOOKUP_FAILURE</a></li>
312 <li class="toctree-l2"><a class="reference internal" href="client_errors/MEMCACHED_INVALID_ARGUMENTS.html">MEMCACHED_INVALID_ARGUMENTS</a></li>
313 <li class="toctree-l2"><a class="reference internal" href="client_errors/MEMCACHED_INVALID_HOST_PROTOCOL.html">MEMCACHED_INVALID_HOST_PROTOCOL</a></li>
314 <li class="toctree-l2"><a class="reference internal" href="client_errors/MEMCACHED_ITEM.html">MEMCACHED_ITEM</a></li>
315 <li class="toctree-l2"><a class="reference internal" href="client_errors/MEMCACHED_KEY_TOO_BIG.html">MEMCACHED_KEY_TOO_BIG</a></li>
316 <li class="toctree-l2"><a class="reference internal" href="client_errors/MEMCACHED_MAXIMUM_RETURN.html">MEMCACHED_MAXIMUM_RETURN</a></li>
317 <li class="toctree-l2"><a class="reference internal" href="client_errors/MEMCACHED_MEMORY_ALLOCATION_FAILURE.html">MEMCACHED_MEMORY_ALLOCATION_FAILURE</a></li>
318 <li class="toctree-l2"><a class="reference internal" href="client_errors/MEMCACHED_NOTFOUND.html">MEMCACHED_NOTFOUND</a></li>
319 <li class="toctree-l2"><a class="reference internal" href="client_errors/MEMCACHED_NOTSTORED.html">MEMCACHED_NOTSTORED</a></li>
320 <li class="toctree-l2"><a class="reference internal" href="client_errors/MEMCACHED_NOT_SUPPORTED.html">MEMCACHED_NOT_SUPPORTED</a></li>
321 <li class="toctree-l2"><a class="reference internal" href="client_errors/MEMCACHED_NO_KEY_PROVIDED.html">MEMCACHED_NO_KEY_PROVIDED</a></li>
322 <li class="toctree-l2"><a class="reference internal" href="client_errors/MEMCACHED_NO_SERVERS.html">MEMCACHED_NO_SERVERS</a></li>
323 <li class="toctree-l2"><a class="reference internal" href="client_errors/MEMCACHED_PARSE_ERROR.html">MEMCACHED_PARSE_ERROR</a></li>
324 <li class="toctree-l2"><a class="reference internal" href="client_errors/MEMCACHED_PARSE_USER_ERROR.html">MEMCACHED_PARSE_USER_ERROR</a></li>
325 <li class="toctree-l2"><a class="reference internal" href="client_errors/MEMCACHED_PARTIAL_READ.html">MEMCACHED_PARTIAL_READ</a></li>
326 <li class="toctree-l2"><a class="reference internal" href="client_errors/MEMCACHED_PROTOCOL_ERROR.html">MEMCACHED_PROTOCOL_ERROR</a></li>
327 <li class="toctree-l2"><a class="reference internal" href="client_errors/MEMCACHED_READ_FAILURE.html">MEMCACHED_READ_FAILURE</a></li>
328 <li class="toctree-l2"><a class="reference internal" href="client_errors/MEMCACHED_SERVER_ERROR.html">MEMCACHED_SERVER_ERROR</a></li>
329 <li class="toctree-l2"><a class="reference internal" href="client_errors/MEMCACHED_SERVER_MARKED_DEAD.html">MEMCACHED_SERVER_MARKED_DEAD</a></li>
330 <li class="toctree-l2"><a class="reference internal" href="client_errors/MEMCACHED_SOME_ERRORS.html">MEMCACHED_SOME_ERRORS</a></li>
331 <li class="toctree-l2"><a class="reference internal" href="client_errors/MEMCACHED_STAT.html">MEMCACHED_STAT</a></li>
332 <li class="toctree-l2"><a class="reference internal" href="client_errors/MEMCACHED_STORED.html">MEMCACHED_STORED</a></li>
333 <li class="toctree-l2"><a class="reference internal" href="client_errors/MEMCACHED_SUCCESS.html">MEMCACHED_SUCCESS</a></li>
334 <li class="toctree-l2"><a class="reference internal" href="client_errors/MEMCACHED_TIMEOUT.html">MEMCACHED_TIMEOUT</a></li>
335 <li class="toctree-l2"><a class="reference internal" href="client_errors/MEMCACHED_UNKNOWN_READ_FAILURE.html">MEMCACHED_UNKNOWN_READ_FAILURE</a></li>
336 <li class="toctree-l2"><a class="reference internal" href="client_errors/MEMCACHED_UNKNOWN_STAT_KEY.html">MEMCACHED_UNKNOWN_STAT_KEY</a></li>
337 <li class="toctree-l2"><a class="reference internal" href="client_errors/MEMCACHED_VALUE.html">MEMCACHED_VALUE</a></li>
338 <li class="toctree-l2"><a class="reference internal" href="client_errors/MEMCACHED_WRITE_FAILURE.html">MEMCACHED_WRITE_FAILURE</a></li>
339 </ul>
340 </li>
341 <li class="toctree-l1"><a class="reference internal" href="memcached_user_data.html">Storing custom user information in the client.</a><ul>
342 <li class="toctree-l2"><a class="reference internal" href="memcached_user_data.html#library">LIBRARY</a></li>
343 <li class="toctree-l2"><a class="reference internal" href="memcached_user_data.html#synopsis">SYNOPSIS</a></li>
344 <li class="toctree-l2"><a class="reference internal" href="memcached_user_data.html#description">DESCRIPTION</a></li>
345 <li class="toctree-l2"><a class="reference internal" href="memcached_user_data.html#return">RETURN</a></li>
346 <li class="toctree-l2"><a class="reference internal" href="memcached_user_data.html#see-also">SEE ALSO</a></li>
347 </ul>
348 </li>
349 <li class="toctree-l1"><a class="reference internal" href="memcached_verbosity.html">Setting the verbosity of a server</a><ul>
350 <li class="toctree-l2"><a class="reference internal" href="memcached_verbosity.html#synopsis">SYNOPSIS</a></li>
351 <li class="toctree-l2"><a class="reference internal" href="memcached_verbosity.html#description">DESCRIPTION</a></li>
352 <li class="toctree-l2"><a class="reference internal" href="memcached_verbosity.html#return">RETURN</a></li>
353 <li class="toctree-l2"><a class="reference internal" href="memcached_verbosity.html#see-also">SEE ALSO</a></li>
354 </ul>
355 </li>
356 <li class="toctree-l1"><a class="reference internal" href="memcached_version.html">Getting version information about the client and server</a><ul>
357 <li class="toctree-l2"><a class="reference internal" href="memcached_version.html#synopsis">SYNOPSIS</a></li>
358 <li class="toctree-l2"><a class="reference internal" href="memcached_version.html#description">DESCRIPTION</a></li>
359 <li class="toctree-l2"><a class="reference internal" href="memcached_version.html#return">RETURN</a></li>
360 <li class="toctree-l2"><a class="reference internal" href="memcached_version.html#see-also">SEE ALSO</a></li>
361 </ul>
362 </li>
363 <li class="toctree-l1"><a class="reference internal" href="libmemcached/defaults.html">DEFAULTS</a></li>
364 </ul>
365 <p class="caption"><span class="caption-text">Interface Versions</span></p>
366 <ul>
367 <li class="toctree-l1"><a class="reference internal" href="libmemcached-1.0/index.html">libmemcached 1.0 API</a><ul>
368 <li class="toctree-l2"><a class="reference internal" href="libmemcached-1.0/memcached_touch.html">memcached_touch, memcached_touch_by_key</a></li>
369 </ul>
370 </li>
371 <li class="toctree-l1"><a class="reference internal" href="libmemcached-1.1/index.html">libmemcached 1.1 API</a></li>
372 </ul>
373 <p class="caption"><span class="caption-text">Deprecated Functions</span></p>
374 <ul>
375 <li class="toctree-l1"><a class="reference internal" href="libmemcached/memcached_fetch.html">memcached_fetch</a></li>
376 </ul>
377 <p class="caption"><span class="caption-text">Platform Specifics</span></p>
378 <ul>
379 <li class="toctree-l1"><a class="reference internal" href="tap.html">Systemtap support</a></li>
380 <li class="toctree-l1"><a class="reference internal" href="types.html">Required C types</a><ul>
381 <li class="toctree-l2"><a class="reference internal" href="types.html#types">Types</a></li>
382 <li class="toctree-l2"><a class="reference internal" href="types.html#c-types-used">C Types Used</a></li>
383 </ul>
384 </li>
385 </ul>
386 <p class="caption"><span class="caption-text">Deriving Statistics from a Server</span></p>
387 <ul>
388 <li class="toctree-l1"><a class="reference internal" href="memcached_analyze.html">Analyzing servers</a><ul>
389 <li class="toctree-l2"><a class="reference internal" href="memcached_analyze.html#synopsis">SYNOPSIS</a></li>
390 <li class="toctree-l2"><a class="reference internal" href="memcached_analyze.html#description">DESCRIPTION</a></li>
391 <li class="toctree-l2"><a class="reference internal" href="memcached_analyze.html#return">RETURN</a></li>
392 <li class="toctree-l2"><a class="reference internal" href="memcached_analyze.html#see-also">SEE ALSO</a></li>
393 </ul>
394 </li>
395 <li class="toctree-l1"><a class="reference internal" href="memcached_stats.html">Working with statistical information from a server</a><ul>
396 <li class="toctree-l2"><a class="reference internal" href="memcached_stats.html#synopsis">SYNOPSIS</a></li>
397 <li class="toctree-l2"><a class="reference internal" href="memcached_stats.html#description">DESCRIPTION</a></li>
398 <li class="toctree-l2"><a class="reference internal" href="memcached_stats.html#return">RETURN</a></li>
399 <li class="toctree-l2"><a class="reference internal" href="memcached_stats.html#see-also">SEE ALSO</a></li>
400 </ul>
401 </li>
402 </ul>
403 <p class="caption"><span class="caption-text">Libmemcachedutil</span></p>
404 <ul>
405 <li class="toctree-l1"><a class="reference internal" href="libmemcachedutil.html">Introducing libmemcachedutil</a><ul>
406 <li class="toctree-l2"><a class="reference internal" href="libmemcachedutil.html#synopsis">SYNOPSIS</a></li>
407 <li class="toctree-l2"><a class="reference internal" href="libmemcachedutil.html#description">DESCRIPTION</a></li>
408 <li class="toctree-l2"><a class="reference internal" href="libmemcachedutil.html#threads">THREADS</a></li>
409 <li class="toctree-l2"><a class="reference internal" href="libmemcachedutil.html#see-also">SEE ALSO</a></li>
410 </ul>
411 </li>
412 <li class="toctree-l1"><a class="reference internal" href="memcached_pool.html">Working with memcached pools</a><ul>
413 <li class="toctree-l2"><a class="reference internal" href="memcached_pool.html#synopsis">SYNOPSIS</a></li>
414 <li class="toctree-l2"><a class="reference internal" href="memcached_pool.html#description">DESCRIPTION</a></li>
415 <li class="toctree-l2"><a class="reference internal" href="memcached_pool.html#return">RETURN</a></li>
416 <li class="toctree-l2"><a class="reference internal" href="memcached_pool.html#see-also">SEE ALSO</a></li>
417 </ul>
418 </li>
419 </ul>
420 <p class="caption"><span class="caption-text">Client Applications</span></p>
421 <ul>
422 <li class="toctree-l1"><a class="reference internal" href="bin/memcapable.html">memcapable - Checking a Memcached server capabilities and compatibility</a><ul>
423 <li class="toctree-l2"><a class="reference internal" href="bin/memcapable.html#synopsis">SYNOPSIS</a></li>
424 <li class="toctree-l2"><a class="reference internal" href="bin/memcapable.html#description">DESCRIPTION</a></li>
425 <li class="toctree-l2"><a class="reference internal" href="bin/memcapable.html#limitations">LIMITATIONS</a></li>
426 <li class="toctree-l2"><a class="reference internal" href="bin/memcapable.html#options">OPTIONS</a></li>
427 <li class="toctree-l2"><a class="reference internal" href="bin/memcapable.html#see-also">SEE ALSO</a></li>
428 </ul>
429 </li>
430 <li class="toctree-l1"><a class="reference internal" href="bin/memcat.html">memcat - “cat” data from a server</a><ul>
431 <li class="toctree-l2"><a class="reference internal" href="bin/memcat.html#synopsis">SYNOPSIS</a></li>
432 <li class="toctree-l2"><a class="reference internal" href="bin/memcat.html#description">DESCRIPTION</a></li>
433 <li class="toctree-l2"><a class="reference internal" href="bin/memcat.html#options">OPTIONS</a></li>
434 <li class="toctree-l2"><a class="reference internal" href="bin/memcat.html#see-also">SEE ALSO</a></li>
435 </ul>
436 </li>
437 <li class="toctree-l1"><a class="reference internal" href="bin/memcp.html">memcp - Copy data to a server</a><ul>
438 <li class="toctree-l2"><a class="reference internal" href="bin/memcp.html#synopsis">SYNOPSIS</a></li>
439 <li class="toctree-l2"><a class="reference internal" href="bin/memcp.html#description">DESCRIPTION</a></li>
440 <li class="toctree-l2"><a class="reference internal" href="bin/memcp.html#options">OPTIONS</a></li>
441 <li class="toctree-l2"><a class="reference internal" href="bin/memcp.html#see-also">SEE ALSO</a></li>
442 </ul>
443 </li>
444 <li class="toctree-l1"><a class="reference internal" href="bin/memdump.html">memdump - Dumping your server</a><ul>
445 <li class="toctree-l2"><a class="reference internal" href="bin/memdump.html#synopsis">SYNOPSIS</a></li>
446 <li class="toctree-l2"><a class="reference internal" href="bin/memdump.html#description">DESCRIPTION</a></li>
447 <li class="toctree-l2"><a class="reference internal" href="bin/memdump.html#options">OPTIONS</a></li>
448 <li class="toctree-l2"><a class="reference internal" href="bin/memdump.html#see-also">SEE ALSO</a></li>
449 </ul>
450 </li>
451 <li class="toctree-l1"><a class="reference internal" href="bin/memerror.html">memerror - translate an error code to a string</a><ul>
452 <li class="toctree-l2"><a class="reference internal" href="bin/memerror.html#synopsis">SYNOPSIS</a></li>
453 <li class="toctree-l2"><a class="reference internal" href="bin/memerror.html#description">DESCRIPTION</a></li>
454 <li class="toctree-l2"><a class="reference internal" href="bin/memerror.html#options">OPTIONS</a></li>
455 <li class="toctree-l2"><a class="reference internal" href="bin/memerror.html#see-also">SEE ALSO</a></li>
456 </ul>
457 </li>
458 <li class="toctree-l1"><a class="reference internal" href="bin/memflush.html">memflush - flush all data from a server</a><ul>
459 <li class="toctree-l2"><a class="reference internal" href="bin/memflush.html#synopsis">SYNOPSIS</a></li>
460 <li class="toctree-l2"><a class="reference internal" href="bin/memflush.html#description">DESCRIPTION</a></li>
461 <li class="toctree-l2"><a class="reference internal" href="bin/memflush.html#options">OPTIONS</a></li>
462 <li class="toctree-l2"><a class="reference internal" href="bin/memflush.html#see-also">SEE ALSO</a></li>
463 </ul>
464 </li>
465 <li class="toctree-l1"><a class="reference internal" href="bin/memrm.html">memrm - Remove data from a server</a><ul>
466 <li class="toctree-l2"><a class="reference internal" href="bin/memrm.html#synopsis">SYNOPSIS</a></li>
467 <li class="toctree-l2"><a class="reference internal" href="bin/memrm.html#description">DESCRIPTION</a></li>
468 <li class="toctree-l2"><a class="reference internal" href="bin/memrm.html#options">OPTIONS</a></li>
469 <li class="toctree-l2"><a class="reference internal" href="bin/memrm.html#see-also">SEE ALSO</a></li>
470 </ul>
471 </li>
472 <li class="toctree-l1"><a class="reference internal" href="bin/memslap.html">memslap - Load testing and benchmarking a server</a><ul>
473 <li class="toctree-l2"><a class="reference internal" href="bin/memslap.html#synopsis">SYNOPSIS</a></li>
474 <li class="toctree-l2"><a class="reference internal" href="bin/memslap.html#description">DESCRIPTION</a></li>
475 <li class="toctree-l2"><a class="reference internal" href="bin/memslap.html#options">OPTIONS</a></li>
476 <li class="toctree-l2"><a class="reference internal" href="bin/memslap.html#see-also">SEE ALSO</a></li>
477 </ul>
478 </li>
479 <li class="toctree-l1"><a class="reference internal" href="bin/memaslap.html">memaslap - Load testing and benchmarking a server</a><ul>
480 <li class="toctree-l2"><a class="reference internal" href="bin/memaslap.html#synopsis">SYNOPSIS</a></li>
481 <li class="toctree-l2"><a class="reference internal" href="bin/memaslap.html#description">DESCRIPTION</a></li>
482 <li class="toctree-l2"><a class="reference internal" href="bin/memaslap.html#features">FEATURES</a></li>
483 <li class="toctree-l2"><a class="reference internal" href="bin/memaslap.html#details">DETAILS</a></li>
484 <li class="toctree-l2"><a class="reference internal" href="bin/memaslap.html#usage">USAGE</a></li>
485 <li class="toctree-l2"><a class="reference internal" href="bin/memaslap.html#configuration-file">Configuration file</a></li>
486 <li class="toctree-l2"><a class="reference internal" href="bin/memaslap.html#format-of-output">Format of output</a></li>
487 <li class="toctree-l2"><a class="reference internal" href="bin/memaslap.html#options">OPTIONS</a></li>
488 <li class="toctree-l2"><a class="reference internal" href="bin/memaslap.html#examples">EXAMPLES</a></li>
489 <li class="toctree-l2"><a class="reference internal" href="bin/memaslap.html#see-also">SEE ALSO</a></li>
490 </ul>
491 </li>
492 <li class="toctree-l1"><a class="reference internal" href="bin/memstat.html">memstat - Gather statistics from a server</a><ul>
493 <li class="toctree-l2"><a class="reference internal" href="bin/memstat.html#synopsis">SYNOPSIS</a></li>
494 <li class="toctree-l2"><a class="reference internal" href="bin/memstat.html#description">DESCRIPTION</a></li>
495 <li class="toctree-l2"><a class="reference internal" href="bin/memstat.html#options">OPTIONS</a></li>
496 <li class="toctree-l2"><a class="reference internal" href="bin/memstat.html#see-also">SEE ALSO</a></li>
497 </ul>
498 </li>
499 <li class="toctree-l1"><a class="reference internal" href="bin/memexist.html">memexist - Check for the existence of a key</a><ul>
500 <li class="toctree-l2"><a class="reference internal" href="bin/memexist.html#synopsis">SYNOPSIS</a></li>
501 <li class="toctree-l2"><a class="reference internal" href="bin/memexist.html#description">DESCRIPTION</a></li>
502 <li class="toctree-l2"><a class="reference internal" href="bin/memexist.html#options">OPTIONS</a></li>
503 <li class="toctree-l2"><a class="reference internal" href="bin/memexist.html#see-also">SEE ALSO</a></li>
504 </ul>
505 </li>
506 <li class="toctree-l1"><a class="reference internal" href="bin/memparse.html">memparse - Parse an option string</a><ul>
507 <li class="toctree-l2"><a class="reference internal" href="bin/memparse.html#synopsis">SYNOPSIS</a></li>
508 <li class="toctree-l2"><a class="reference internal" href="bin/memparse.html#description">DESCRIPTION</a></li>
509 <li class="toctree-l2"><a class="reference internal" href="bin/memparse.html#options">OPTIONS</a></li>
510 <li class="toctree-l2"><a class="reference internal" href="bin/memparse.html#see-also">SEE ALSO</a></li>
511 </ul>
512 </li>
513 <li class="toctree-l1"><a class="reference internal" href="bin/memping.html">memping - Test to see if a server is available.</a><ul>
514 <li class="toctree-l2"><a class="reference internal" href="bin/memping.html#synopsis">SYNOPSIS</a></li>
515 <li class="toctree-l2"><a class="reference internal" href="bin/memping.html#description">DESCRIPTION</a></li>
516 <li class="toctree-l2"><a class="reference internal" href="bin/memping.html#options">OPTIONS</a></li>
517 <li class="toctree-l2"><a class="reference internal" href="bin/memping.html#see-also">SEE ALSO</a></li>
518 </ul>
519 </li>
520 <li class="toctree-l1"><a class="reference internal" href="bin/memtouch.html">memtouch - Touches a key.</a><ul>
521 <li class="toctree-l2"><a class="reference internal" href="bin/memtouch.html#synopsis">SYNOPSIS</a></li>
522 <li class="toctree-l2"><a class="reference internal" href="bin/memtouch.html#description">DESCRIPTION</a></li>
523 <li class="toctree-l2"><a class="reference internal" href="bin/memtouch.html#options">OPTIONS</a></li>
524 <li class="toctree-l2"><a class="reference internal" href="bin/memtouch.html#see-also">SEE ALSO</a></li>
525 </ul>
526 </li>
527 </ul>
528 <p class="caption"><span class="caption-text">Libhashkit</span></p>
529 <ul>
530 <li class="toctree-l1"><a class="reference internal" href="libhashkit.html">Introducing libhashkit</a><ul>
531 <li class="toctree-l2"><a class="reference internal" href="libhashkit.html#description">DESCRIPTION</a></li>
532 <li class="toctree-l2"><a class="reference internal" href="libhashkit.html#see-also">SEE ALSO</a></li>
533 </ul>
534 </li>
535 <li class="toctree-l1"><a class="reference internal" href="hashkit_create.html">Creating a hashkit structure</a><ul>
536 <li class="toctree-l2"><a class="reference internal" href="hashkit_create.html#synopsis">SYNOPSIS</a></li>
537 <li class="toctree-l2"><a class="reference internal" href="hashkit_create.html#description">DESCRIPTION</a></li>
538 <li class="toctree-l2"><a class="reference internal" href="hashkit_create.html#return-value">RETURN VALUE</a></li>
539 <li class="toctree-l2"><a class="reference internal" href="hashkit_create.html#see-also">SEE ALSO</a></li>
540 </ul>
541 </li>
542 <li class="toctree-l1"><a class="reference internal" href="hashkit_functions.html">Available Hashes</a><ul>
543 <li class="toctree-l2"><a class="reference internal" href="hashkit_functions.html#synopsis">SYNOPSIS</a></li>
544 <li class="toctree-l2"><a class="reference internal" href="hashkit_functions.html#description">DESCRIPTION</a></li>
545 <li class="toctree-l2"><a class="reference internal" href="hashkit_functions.html#return-value">RETURN VALUE</a></li>
546 <li class="toctree-l2"><a class="reference internal" href="hashkit_functions.html#see-also">SEE ALSO</a></li>
547 </ul>
548 </li>
549 <li class="toctree-l1"><a class="reference internal" href="hashkit_value.html">hashkit_value</a><ul>
550 <li class="toctree-l2"><a class="reference internal" href="hashkit_value.html#synopsis">SYNOPSIS</a></li>
551 <li class="toctree-l2"><a class="reference internal" href="hashkit_value.html#description">DESCRIPTION</a></li>
552 <li class="toctree-l2"><a class="reference internal" href="hashkit_value.html#return-value">RETURN VALUE</a></li>
553 <li class="toctree-l2"><a class="reference internal" href="hashkit_value.html#see-also">SEE ALSO</a></li>
554 </ul>
555 </li>
556 </ul>
557
558
559
560 </div>
561 </div>
562 </nav>
563
564 <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
565
566
567 <nav class="wy-nav-top" aria-label="top navigation">
568
569 <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
570 <a href="index.html">libmemcached</a>
571
572 </nav>
573
574
575 <div class="wy-nav-content">
576
577 <div class="rst-content">
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595 <div role="navigation" aria-label="breadcrumbs navigation">
596
597 <ul class="wy-breadcrumbs">
598
599 <li><a href="index.html">Docs</a> &raquo;</li>
600
601 <li>Modifying how the driver behaves</li>
602
603
604 <li class="wy-breadcrumbs-aside">
605
606
607
608 </li>
609
610 </ul>
611
612
613 <hr/>
614 </div>
615 <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
616 <div itemprop="articleBody">
617
618 <div class="section" id="modifying-how-the-driver-behaves">
619 <h1>Modifying how the driver behaves<a class="headerlink" href="#modifying-how-the-driver-behaves" title="Permalink to this headline"></a></h1>
620 <p>Manipulate the behavior of a memcached_st structure.</p>
621 <div class="section" id="synopsis">
622 <span id="index-0"></span><h2>SYNOPSIS<a class="headerlink" href="#synopsis" title="Permalink to this headline"></a></h2>
623 <p>#include &lt;libmemcached/memcached.h&gt;</p>
624 <dl class="type">
625 <dt id="c.memcached_behavior_t">
626 <code class="sig-name descname">memcached_behavior_t</code><a class="headerlink" href="#c.memcached_behavior_t" title="Permalink to this definition"></a></dt>
627 <dd></dd></dl>
628
629 <dl class="function">
630 <dt id="c.memcached_behavior_get">
631 <a class="reference internal" href="types.html#c.uint64_t" title="uint64_t">uint64_t</a> <code class="sig-name descname">memcached_behavior_get</code><span class="sig-paren">(</span><a class="reference internal" href="memcached_create.html#c.memcached_st" title="memcached_st">memcached_st</a><em> *ptr</em>, <a class="reference internal" href="#c.memcached_behavior_t" title="memcached_behavior_t">memcached_behavior_t</a><em> flag</em><span class="sig-paren">)</span><a class="headerlink" href="#c.memcached_behavior_get" title="Permalink to this definition"></a></dt>
632 <dd></dd></dl>
633
634 <dl class="function">
635 <dt id="c.memcached_behavior_set">
636 <a class="reference internal" href="libmemcached/memcached_return_t.html#c.memcached_return_t" title="memcached_return_t">memcached_return_t</a> <code class="sig-name descname">memcached_behavior_set</code><span class="sig-paren">(</span><a class="reference internal" href="memcached_create.html#c.memcached_st" title="memcached_st">memcached_st</a><em> *ptr</em>, <a class="reference internal" href="#c.memcached_behavior_t" title="memcached_behavior_t">memcached_behavior_t</a><em> flag</em>, <a class="reference internal" href="types.html#c.uint64_t" title="uint64_t">uint64_t</a><em> data</em><span class="sig-paren">)</span><a class="headerlink" href="#c.memcached_behavior_set" title="Permalink to this definition"></a></dt>
637 <dd></dd></dl>
638
639 <p>Compile and link with -lmemcached</p>
640 </div>
641 <div class="section" id="description">
642 <h2>DESCRIPTION<a class="headerlink" href="#description" title="Permalink to this headline"></a></h2>
643 <p><em class="manpage">libmemcached(3)</em> behavior can be modified by using
644 <a class="reference internal" href="#c.memcached_behavior_set" title="memcached_behavior_set"><code class="xref c c-func docutils literal notranslate"><span class="pre">memcached_behavior_set()</span></code></a>. Default behavior is the library strives to be quick and
645 accurate. Some behavior, while being faster, can also result in not entirely
646 accurate behavior (for instance, <a class="reference internal" href="memcached_set.html#c.memcached_set" title="memcached_set"><code class="xref c c-func docutils literal notranslate"><span class="pre">memcached_set()</span></code></a> will always respond
647 with <a class="reference internal" href="client_errors/MEMCACHED_SUCCESS.html#c.MEMCACHED_SUCCESS" title="MEMCACHED_SUCCESS"><code class="xref c c-type docutils literal notranslate"><span class="pre">MEMCACHED_SUCCESS</span></code></a>).</p>
648 <p><a class="reference internal" href="#c.memcached_behavior_get" title="memcached_behavior_get"><code class="xref c c-func docutils literal notranslate"><span class="pre">memcached_behavior_get()</span></code></a> takes a behavior flag and returns whether or not that behavior is currently enabled in the client.</p>
649 <p><a class="reference internal" href="#c.memcached_behavior_set" title="memcached_behavior_set"><code class="xref c c-func docutils literal notranslate"><span class="pre">memcached_behavior_set()</span></code></a> changes the value of a particular option
650 of the client. It takes both a flag (listed below) and a value. For simple
651 on or off options you just need to pass in a value of 1. Calls to
652 <a class="reference internal" href="#c.memcached_behavior_set" title="memcached_behavior_set"><code class="xref c c-func docutils literal notranslate"><span class="pre">memcached_behavior_set()</span></code></a> will flush and reset all connections.</p>
653 <dl class="type">
654 <dt id="c.MEMCACHED_BEHAVIOR_USE_UDP">
655 <code class="sig-name descname">MEMCACHED_BEHAVIOR_USE_UDP</code><a class="headerlink" href="#c.MEMCACHED_BEHAVIOR_USE_UDP" title="Permalink to this definition"></a></dt>
656 <dd></dd></dl>
657
658 <p>Causes <em class="manpage">libmemcached(3)</em> to use the UDP transport when communicating
659 with a memcached server. Not all I/O operations are tested
660 when this behavior is enabled.</p>
661 <p>The following operations will return
662 <a class="reference internal" href="client_errors/MEMCACHED_NOT_SUPPORTED.html#c.MEMCACHED_NOT_SUPPORTED" title="MEMCACHED_NOT_SUPPORTED"><code class="xref c c-type docutils literal notranslate"><span class="pre">MEMCACHED_NOT_SUPPORTED</span></code></a> when executed with the
663 <a class="reference internal" href="#c.MEMCACHED_BEHAVIOR_USE_UDP" title="MEMCACHED_BEHAVIOR_USE_UDP"><code class="xref c c-type docutils literal notranslate"><span class="pre">MEMCACHED_BEHAVIOR_USE_UDP</span></code></a> enabled:</p>
664 <blockquote>
665 <div><ul class="simple">
666 <li><p><a class="reference internal" href="memcached_version.html#c.memcached_version" title="memcached_version"><code class="xref c c-func docutils literal notranslate"><span class="pre">memcached_version()</span></code></a>,</p></li>
667 <li><p><a class="reference internal" href="memcached_stats.html#c.memcached_stat" title="memcached_stat"><code class="xref c c-func docutils literal notranslate"><span class="pre">memcached_stat()</span></code></a>,</p></li>
668 <li><p><a class="reference internal" href="memcached_get.html#c.memcached_get" title="memcached_get"><code class="xref c c-func docutils literal notranslate"><span class="pre">memcached_get()</span></code></a>,</p></li>
669 <li><p><a class="reference internal" href="memcached_get.html#c.memcached_get_by_key" title="memcached_get_by_key"><code class="xref c c-func docutils literal notranslate"><span class="pre">memcached_get_by_key()</span></code></a>,</p></li>
670 <li><p><a class="reference internal" href="memcached_get.html#c.memcached_mget" title="memcached_mget"><code class="xref c c-func docutils literal notranslate"><span class="pre">memcached_mget()</span></code></a>,</p></li>
671 <li><p><a class="reference internal" href="memcached_get.html#c.memcached_mget_by_key" title="memcached_mget_by_key"><code class="xref c c-func docutils literal notranslate"><span class="pre">memcached_mget_by_key()</span></code></a>,</p></li>
672 <li><p><a class="reference internal" href="libmemcached/memcached_fetch.html#c.memcached_fetch" title="memcached_fetch"><code class="xref c c-func docutils literal notranslate"><span class="pre">memcached_fetch()</span></code></a>,</p></li>
673 <li><p><a class="reference internal" href="memcached_get.html#c.memcached_fetch_result" title="memcached_fetch_result"><code class="xref c c-func docutils literal notranslate"><span class="pre">memcached_fetch_result()</span></code></a>,</p></li>
674 <li><p><a class="reference internal" href="memcached_get.html#c.memcached_fetch_execute" title="memcached_fetch_execute"><code class="xref c c-func docutils literal notranslate"><span class="pre">memcached_fetch_execute()</span></code></a>.</p></li>
675 </ul>
676 </div></blockquote>
677 <p>All other operations are tested but are executed in a ‘fire-and-forget’
678 mode, in which once the client has executed the operation, no attempt
679 will be made to ensure the operation has been received and acted on by the
680 server.</p>
681 <p><em class="manpage">libmemcached(3)</em> does not allow TCP and UDP servers to be shared
682 within the same libmemcached(3) client ‘instance’. An attempt to add a TCP
683 server when this behavior is enabled will result in a
684 <a class="reference internal" href="client_errors/MEMCACHED_INVALID_HOST_PROTOCOL.html#c.MEMCACHED_INVALID_HOST_PROTOCOL" title="MEMCACHED_INVALID_HOST_PROTOCOL"><code class="xref c c-type docutils literal notranslate"><span class="pre">MEMCACHED_INVALID_HOST_PROTOCOL</span></code></a>, as will attempting to add a UDP
685 server when this behavior has not been enabled.</p>
686 <dl class="type">
687 <dt id="c.MEMCACHED_BEHAVIOR_NO_BLOCK">
688 <code class="sig-name descname">MEMCACHED_BEHAVIOR_NO_BLOCK</code><a class="headerlink" href="#c.MEMCACHED_BEHAVIOR_NO_BLOCK" title="Permalink to this definition"></a></dt>
689 <dd></dd></dl>
690
691 <p>Causes <em class="manpage">libmemcached(3)</em> to use asynchronous IO. This is the fastest
692 transport available for storage functions.</p>
693 <dl class="type">
694 <dt id="c.MEMCACHED_BEHAVIOR_SND_TIMEOUT">
695 <code class="sig-name descname">MEMCACHED_BEHAVIOR_SND_TIMEOUT</code><a class="headerlink" href="#c.MEMCACHED_BEHAVIOR_SND_TIMEOUT" title="Permalink to this definition"></a></dt>
696 <dd></dd></dl>
697
698 <p>This sets the microsecond behavior of the socket against the SO_SNDTIMEO flag.</p>
699 <p>In cases where you cannot use non-blocking IO this will allow you to still have timeouts on the sending of data.</p>
700 <dl class="type">
701 <dt id="c.MEMCACHED_BEHAVIOR_RCV_TIMEOUT">
702 <code class="sig-name descname">MEMCACHED_BEHAVIOR_RCV_TIMEOUT</code><a class="headerlink" href="#c.MEMCACHED_BEHAVIOR_RCV_TIMEOUT" title="Permalink to this definition"></a></dt>
703 <dd></dd></dl>
704
705 <p>This sets the microsecond behavior of the socket against the SO_RCVTIMEO flag.</p>
706 <p>In cases where you cannot use non-blocking IO this will allow you to still have timeouts on the reading of data.</p>
707 <dl class="type">
708 <dt id="c.MEMCACHED_BEHAVIOR_TCP_NODELAY">
709 <code class="sig-name descname">MEMCACHED_BEHAVIOR_TCP_NODELAY</code><a class="headerlink" href="#c.MEMCACHED_BEHAVIOR_TCP_NODELAY" title="Permalink to this definition"></a></dt>
710 <dd></dd></dl>
711
712 <p>Turns on the no-delay feature for connecting sockets (may be faster in some
713 environments).</p>
714 <dl class="type">
715 <dt id="c.MEMCACHED_BEHAVIOR_HASH">
716 <code class="sig-name descname">MEMCACHED_BEHAVIOR_HASH</code><a class="headerlink" href="#c.MEMCACHED_BEHAVIOR_HASH" title="Permalink to this definition"></a></dt>
717 <dd></dd></dl>
718
719 <p>Makes the default hashing algorithm for keys use MD5.
720 The value can be set to either:</p>
721 <blockquote>
722 <div><ul class="simple">
723 <li><p><a class="reference internal" href="memcached_generate_hash_value.html#c.MEMCACHED_HASH_DEFAULT" title="MEMCACHED_HASH_DEFAULT"><code class="xref c c-type docutils literal notranslate"><span class="pre">MEMCACHED_HASH_DEFAULT</span></code></a>,</p></li>
724 <li><p><a class="reference internal" href="memcached_generate_hash_value.html#c.MEMCACHED_HASH_MD5" title="MEMCACHED_HASH_MD5"><code class="xref c c-type docutils literal notranslate"><span class="pre">MEMCACHED_HASH_MD5</span></code></a>,</p></li>
725 <li><p><a class="reference internal" href="memcached_generate_hash_value.html#c.MEMCACHED_HASH_CRC" title="MEMCACHED_HASH_CRC"><code class="xref c c-type docutils literal notranslate"><span class="pre">MEMCACHED_HASH_CRC</span></code></a>,</p></li>
726 <li><p><a class="reference internal" href="memcached_generate_hash_value.html#c.MEMCACHED_HASH_FNV1_64" title="MEMCACHED_HASH_FNV1_64"><code class="xref c c-type docutils literal notranslate"><span class="pre">MEMCACHED_HASH_FNV1_64</span></code></a>,</p></li>
727 <li><p><a class="reference internal" href="memcached_generate_hash_value.html#c.MEMCACHED_HASH_FNV1A_64" title="MEMCACHED_HASH_FNV1A_64"><code class="xref c c-type docutils literal notranslate"><span class="pre">MEMCACHED_HASH_FNV1A_64</span></code></a>,</p></li>
728 <li><p><a class="reference internal" href="memcached_generate_hash_value.html#c.MEMCACHED_HASH_FNV1_32" title="MEMCACHED_HASH_FNV1_32"><code class="xref c c-type docutils literal notranslate"><span class="pre">MEMCACHED_HASH_FNV1_32</span></code></a>,</p></li>
729 <li><p><a class="reference internal" href="memcached_generate_hash_value.html#c.MEMCACHED_HASH_FNV1A_32" title="MEMCACHED_HASH_FNV1A_32"><code class="xref c c-type docutils literal notranslate"><span class="pre">MEMCACHED_HASH_FNV1A_32</span></code></a>,</p></li>
730 <li><p><a class="reference internal" href="memcached_generate_hash_value.html#c.MEMCACHED_HASH_JENKINS" title="MEMCACHED_HASH_JENKINS"><code class="xref c c-type docutils literal notranslate"><span class="pre">MEMCACHED_HASH_JENKINS</span></code></a>,</p></li>
731 <li><p><a class="reference internal" href="memcached_generate_hash_value.html#c.MEMCACHED_HASH_HSIEH" title="MEMCACHED_HASH_HSIEH"><code class="xref c c-type docutils literal notranslate"><span class="pre">MEMCACHED_HASH_HSIEH</span></code></a>, and</p></li>
732 <li><p><a class="reference internal" href="memcached_generate_hash_value.html#c.MEMCACHED_HASH_MURMUR" title="MEMCACHED_HASH_MURMUR"><code class="xref c c-type docutils literal notranslate"><span class="pre">MEMCACHED_HASH_MURMUR</span></code></a>.</p></li>
733 </ul>
734 </div></blockquote>
735 <p>Each hash has its advantages and its weaknesses. If you don’t know or don’t
736 care, just go with the default.</p>
737 <p>Support for <a class="reference internal" href="memcached_generate_hash_value.html#c.MEMCACHED_HASH_HSIEH" title="MEMCACHED_HASH_HSIEH"><code class="xref c c-type docutils literal notranslate"><span class="pre">MEMCACHED_HASH_HSIEH</span></code></a> is a compile time option that is
738 disabled by default. To enable tests for this hashing algorithm, configure and
739 build libmemcached with the Hsieh hash enabled.</p>
740 <dl class="type">
741 <dt id="c.MEMCACHED_BEHAVIOR_DISTRIBUTION">
742 <code class="sig-name descname">MEMCACHED_BEHAVIOR_DISTRIBUTION</code><a class="headerlink" href="#c.MEMCACHED_BEHAVIOR_DISTRIBUTION" title="Permalink to this definition"></a></dt>
743 <dd></dd></dl>
744
745 <p>Using this you can enable different means of distributing values to servers.</p>
746 <p>The default method is <code class="xref c c-type docutils literal notranslate"><span class="pre">MEMCACHED_DISTRIBUTION_MODULA</span></code>.</p>
747 <p>You can enable consistent hashing by setting <code class="xref c c-type docutils literal notranslate"><span class="pre">MEMCACHED_DISTRIBUTION_CONSISTENT</span></code>.
748 Consistent hashing delivers better distribution and allows servers to be added
749 to the cluster with minimal cache losses.</p>
750 <p>Currently <code class="xref c c-type docutils literal notranslate"><span class="pre">MEMCACHED_DISTRIBUTION_CONSISTENT</span></code> is an alias for the value
751 c:type:<cite>MEMCACHED_DISTRIBUTION_CONSISTENT_KETAMA</cite>.</p>
752 <dl class="type">
753 <dt id="c.MEMCACHED_BEHAVIOR_CACHE_LOOKUPS">
754 <code class="sig-name descname">MEMCACHED_BEHAVIOR_CACHE_LOOKUPS</code><a class="headerlink" href="#c.MEMCACHED_BEHAVIOR_CACHE_LOOKUPS" title="Permalink to this definition"></a></dt>
755 <dd></dd></dl>
756
757 <div class="deprecated">
758 <p><span class="versionmodified deprecated">Deprecated since version 0.46(?): </span>DNS lookups are now always cached until an error occurs with the server.</p>
759 <p>Memcached can cache named lookups so that DNS lookups are made only once.</p>
760 </div>
761 <dl class="type">
762 <dt id="c.MEMCACHED_BEHAVIOR_SUPPORT_CAS">
763 <code class="sig-name descname">MEMCACHED_BEHAVIOR_SUPPORT_CAS</code><a class="headerlink" href="#c.MEMCACHED_BEHAVIOR_SUPPORT_CAS" title="Permalink to this definition"></a></dt>
764 <dd></dd></dl>
765
766 <p>Support CAS operations (this is not enabled by default at this point in the server since it imposes a slight performance penalty).</p>
767 <dl class="type">
768 <dt id="c.MEMCACHED_BEHAVIOR_KETAMA">
769 <code class="sig-name descname">MEMCACHED_BEHAVIOR_KETAMA</code><a class="headerlink" href="#c.MEMCACHED_BEHAVIOR_KETAMA" title="Permalink to this definition"></a></dt>
770 <dd></dd></dl>
771
772 <p>Sets the default distribution to MEMCACHED_DISTRIBUTION_CONSISTENT_KETAMA and
773 the hash to <a class="reference internal" href="memcached_generate_hash_value.html#c.MEMCACHED_HASH_MD5" title="MEMCACHED_HASH_MD5"><code class="xref c c-type docutils literal notranslate"><span class="pre">MEMCACHED_HASH_MD5</span></code></a>.</p>
774 <dl class="type">
775 <dt id="c.MEMCACHED_BEHAVIOR_KETAMA_WEIGHTED">
776 <code class="sig-name descname">MEMCACHED_BEHAVIOR_KETAMA_WEIGHTED</code><a class="headerlink" href="#c.MEMCACHED_BEHAVIOR_KETAMA_WEIGHTED" title="Permalink to this definition"></a></dt>
777 <dd><p>Sets the default distribution to MEMCACHED_DISTRIBUTION_CONSISTENT_KETAMA with the weighted tests. and the hash to MEMCACHED_HASH_MD5.</p>
778 </dd></dl>
779
780 <dl class="type">
781 <dt id="c.MEMCACHED_BEHAVIOR_KETAMA_HASH">
782 <code class="sig-name descname">MEMCACHED_BEHAVIOR_KETAMA_HASH</code><a class="headerlink" href="#c.MEMCACHED_BEHAVIOR_KETAMA_HASH" title="Permalink to this definition"></a></dt>
783 <dd></dd></dl>
784
785 <p>Sets the hashing algorithm for host mapping on continuum. The value can be set
786 to either <a class="reference internal" href="memcached_generate_hash_value.html#c.MEMCACHED_HASH_DEFAULT" title="MEMCACHED_HASH_DEFAULT"><code class="xref c c-type docutils literal notranslate"><span class="pre">MEMCACHED_HASH_DEFAULT</span></code></a>, <a class="reference internal" href="memcached_generate_hash_value.html#c.MEMCACHED_HASH_MD5" title="MEMCACHED_HASH_MD5"><code class="xref c c-type docutils literal notranslate"><span class="pre">MEMCACHED_HASH_MD5</span></code></a>,
787 <a class="reference internal" href="memcached_generate_hash_value.html#c.MEMCACHED_HASH_CRC" title="MEMCACHED_HASH_CRC"><code class="xref c c-type docutils literal notranslate"><span class="pre">MEMCACHED_HASH_CRC</span></code></a>, <a class="reference internal" href="memcached_generate_hash_value.html#c.MEMCACHED_HASH_FNV1_64" title="MEMCACHED_HASH_FNV1_64"><code class="xref c c-type docutils literal notranslate"><span class="pre">MEMCACHED_HASH_FNV1_64</span></code></a>,
788 <a class="reference internal" href="memcached_generate_hash_value.html#c.MEMCACHED_HASH_FNV1A_64" title="MEMCACHED_HASH_FNV1A_64"><code class="xref c c-type docutils literal notranslate"><span class="pre">MEMCACHED_HASH_FNV1A_64</span></code></a>, <a class="reference internal" href="memcached_generate_hash_value.html#c.MEMCACHED_HASH_FNV1_32" title="MEMCACHED_HASH_FNV1_32"><code class="xref c c-type docutils literal notranslate"><span class="pre">MEMCACHED_HASH_FNV1_32</span></code></a>, and
789 <a class="reference internal" href="memcached_generate_hash_value.html#c.MEMCACHED_HASH_FNV1A_32" title="MEMCACHED_HASH_FNV1A_32"><code class="xref c c-type docutils literal notranslate"><span class="pre">MEMCACHED_HASH_FNV1A_32</span></code></a>.</p>
790 <dl class="type">
791 <dt id="c.MEMCACHED_BEHAVIOR_KETAMA_COMPAT">
792 <code class="sig-name descname">MEMCACHED_BEHAVIOR_KETAMA_COMPAT</code><a class="headerlink" href="#c.MEMCACHED_BEHAVIOR_KETAMA_COMPAT" title="Permalink to this definition"></a></dt>
793 <dd></dd></dl>
794
795 <p>Sets the compatibility mode. The value can be set to either MEMCACHED_KETAMA_COMPAT_LIBMEMCACHED (this is the default) or MEMCACHED_KETAMA_COMPAT_SPY to be compatible with the SPY Memcached client for Java.</p>
796 <dl class="type">
797 <dt id="c.MEMCACHED_BEHAVIOR_POLL_TIMEOUT">
798 <code class="sig-name descname">MEMCACHED_BEHAVIOR_POLL_TIMEOUT</code><a class="headerlink" href="#c.MEMCACHED_BEHAVIOR_POLL_TIMEOUT" title="Permalink to this definition"></a></dt>
799 <dd></dd></dl>
800
801 <p>Modify the timeout in milliseconds value that is used by poll. The default value is -1. An signed int must be passed to memcached_behavior_set to change this value (this requires casting). For memcached_behavior_get a signed int value will be cast and returned as the unsigned long long.</p>
802 <dl class="type">
803 <dt id="c.MEMCACHED_BEHAVIOR_USER_DATA">
804 <code class="sig-name descname">MEMCACHED_BEHAVIOR_USER_DATA</code><a class="headerlink" href="#c.MEMCACHED_BEHAVIOR_USER_DATA" title="Permalink to this definition"></a></dt>
805 <dd></dd></dl>
806
807 <div class="deprecated">
808 <p><span class="versionmodified deprecated">Deprecated since version &lt;: </span>0.30</p>
809 </div>
810 <dl class="type">
811 <dt id="c.MEMCACHED_BEHAVIOR_BUFFER_REQUESTS">
812 <code class="sig-name descname">MEMCACHED_BEHAVIOR_BUFFER_REQUESTS</code><a class="headerlink" href="#c.MEMCACHED_BEHAVIOR_BUFFER_REQUESTS" title="Permalink to this definition"></a></dt>
813 <dd></dd></dl>
814
815 <p>Enabling buffered IO causes commands to “buffer” instead of being sent. Any action that gets data causes this buffer to be be sent to the remote connection. Quiting the connection or closing down the connection will also cause the buffered data to be pushed to the remote connection.</p>
816 <dl class="type">
817 <dt id="c.MEMCACHED_BEHAVIOR_VERIFY_KEY">
818 <code class="sig-name descname">MEMCACHED_BEHAVIOR_VERIFY_KEY</code><a class="headerlink" href="#c.MEMCACHED_BEHAVIOR_VERIFY_KEY" title="Permalink to this definition"></a></dt>
819 <dd></dd></dl>
820
821 <p>Enabling this will cause <em class="manpage">libmemcached(3)</em> to test all keys to verify that they are valid keys.</p>
822 <dl class="type">
823 <dt id="c.MEMCACHED_BEHAVIOR_SORT_HOSTS">
824 <code class="sig-name descname">MEMCACHED_BEHAVIOR_SORT_HOSTS</code><a class="headerlink" href="#c.MEMCACHED_BEHAVIOR_SORT_HOSTS" title="Permalink to this definition"></a></dt>
825 <dd></dd></dl>
826
827 <p>Enabling this will cause hosts that are added to be placed in the host list in sorted order. This will defeat consistent hashing.</p>
828 <dl class="type">
829 <dt id="c.MEMCACHED_BEHAVIOR_CONNECT_TIMEOUT">
830 <code class="sig-name descname">MEMCACHED_BEHAVIOR_CONNECT_TIMEOUT</code><a class="headerlink" href="#c.MEMCACHED_BEHAVIOR_CONNECT_TIMEOUT" title="Permalink to this definition"></a></dt>
831 <dd></dd></dl>
832
833 <p>In non-blocking mode this changes the value of the timeout during socket connection in milliseconds. Specifying -1 means an infinite time‐out.</p>
834 <dl class="type">
835 <dt id="c.MEMCACHED_BEHAVIOR_BINARY_PROTOCOL">
836 <code class="sig-name descname">MEMCACHED_BEHAVIOR_BINARY_PROTOCOL</code><a class="headerlink" href="#c.MEMCACHED_BEHAVIOR_BINARY_PROTOCOL" title="Permalink to this definition"></a></dt>
837 <dd></dd></dl>
838
839 <p>Enable the use of the binary protocol. Please note that you cannot toggle this flag on an open connection.</p>
840 <dl class="type">
841 <dt id="c.MEMCACHED_BEHAVIOR_SERVER_FAILURE_LIMIT">
842 <code class="sig-name descname">MEMCACHED_BEHAVIOR_SERVER_FAILURE_LIMIT</code><a class="headerlink" href="#c.MEMCACHED_BEHAVIOR_SERVER_FAILURE_LIMIT" title="Permalink to this definition"></a></dt>
843 <dd></dd></dl>
844
845 <p>Set this value to enable the server be removed after continuous MEMCACHED_BEHAVIOR_SERVER_FAILURE_LIMIT times connection failure.</p>
846 <dl class="type">
847 <dt id="c.MEMCACHED_BEHAVIOR_IO_MSG_WATERMARK">
848 <code class="sig-name descname">MEMCACHED_BEHAVIOR_IO_MSG_WATERMARK</code><a class="headerlink" href="#c.MEMCACHED_BEHAVIOR_IO_MSG_WATERMARK" title="Permalink to this definition"></a></dt>
849 <dd></dd></dl>
850
851 <p>Set this value to tune the number of messages that may be sent before libmemcached should start to automatically drain the input queue. Setting this value to high, may cause libmemcached to deadlock (trying to send data, but the send will block because the input buffer in the kernel is full).</p>
852 <dl class="type">
853 <dt id="c.MEMCACHED_BEHAVIOR_IO_BYTES_WATERMARK">
854 <code class="sig-name descname">MEMCACHED_BEHAVIOR_IO_BYTES_WATERMARK</code><a class="headerlink" href="#c.MEMCACHED_BEHAVIOR_IO_BYTES_WATERMARK" title="Permalink to this definition"></a></dt>
855 <dd></dd></dl>
856
857 <p>Set this value to tune the number of bytes that may be sent before libmemcached should start to automatically drain the input queue (need at least 10 IO requests sent without reading the input buffer). Setting this value to high, may cause libmemcached to deadlock (trying to send data, but the send will block because the input buffer in the kernel is full).</p>
858 <dl class="type">
859 <dt id="c.MEMCACHED_BEHAVIOR_IO_KEY_PREFETCH">
860 <code class="sig-name descname">MEMCACHED_BEHAVIOR_IO_KEY_PREFETCH</code><a class="headerlink" href="#c.MEMCACHED_BEHAVIOR_IO_KEY_PREFETCH" title="Permalink to this definition"></a></dt>
861 <dd></dd></dl>
862
863 <p>The binary protocol works a bit different than the textual protocol in that a multiget is implemented as a pipe of single get-operations which are sent to the server in a chunk. If you are using large multigets from your application, you may improve the latency of the gets by setting this value so you send out the first chunk of requests when you hit the specified limit. It allows the servers to start processing the requests to send the data back while the rest of the requests are created and sent to the server.</p>
864 <dl class="type">
865 <dt id="c.MEMCACHED_BEHAVIOR_NOREPLY">
866 <code class="sig-name descname">MEMCACHED_BEHAVIOR_NOREPLY</code><a class="headerlink" href="#c.MEMCACHED_BEHAVIOR_NOREPLY" title="Permalink to this definition"></a></dt>
867 <dd></dd></dl>
868
869 <p>Set this value to specify that you really don’t care about the result from your storage commands (set, add, replace, append, prepend).</p>
870 <dl class="type">
871 <dt id="c.MEMCACHED_BEHAVIOR_NUMBER_OF_REPLICAS">
872 <code class="sig-name descname">MEMCACHED_BEHAVIOR_NUMBER_OF_REPLICAS</code><a class="headerlink" href="#c.MEMCACHED_BEHAVIOR_NUMBER_OF_REPLICAS" title="Permalink to this definition"></a></dt>
873 <dd></dd></dl>
874
875 <p>If you just want “a poor mans HA”, you may specify the numbers of replicas libmemcached should store of each item (on different servers). This replication does not dedicate certain memcached servers to store the replicas in, but instead it will store the replicas together with all of the other objects (on the ‘n’ next servers specified in your server list).</p>
876 <dl class="type">
877 <dt id="c.MEMCACHED_BEHAVIOR_RANDOMIZE_REPLICA_READ">
878 <code class="sig-name descname">MEMCACHED_BEHAVIOR_RANDOMIZE_REPLICA_READ</code><a class="headerlink" href="#c.MEMCACHED_BEHAVIOR_RANDOMIZE_REPLICA_READ" title="Permalink to this definition"></a></dt>
879 <dd></dd></dl>
880
881 <p>Allows randomizing the replica reads starting point. Normally the read is done from primary server and in case of miss the read is done from primary + 1, then primary + 2 all the way to ‘n’ replicas. If this option is set on the starting point of the replica reads is randomized between the servers. This allows distributing read load to multiple servers with the expense of more write traffic.</p>
882 <dl class="type">
883 <dt id="c.MEMCACHED_BEHAVIOR_CORK">
884 <code class="sig-name descname">MEMCACHED_BEHAVIOR_CORK</code><a class="headerlink" href="#c.MEMCACHED_BEHAVIOR_CORK" title="Permalink to this definition"></a></dt>
885 <dd></dd></dl>
886
887 <p>This open has been deprecated with the behavior now built and used appropriately on selected platforms.</p>
888 <dl class="type">
889 <dt id="c.MEMCACHED_BEHAVIOR_KEEPALIVE">
890 <code class="sig-name descname">MEMCACHED_BEHAVIOR_KEEPALIVE</code><a class="headerlink" href="#c.MEMCACHED_BEHAVIOR_KEEPALIVE" title="Permalink to this definition"></a></dt>
891 <dd></dd></dl>
892
893 <p>Enable TCP_KEEPALIVE behavior.</p>
894 <dl class="type">
895 <dt id="c.MEMCACHED_BEHAVIOR_KEEPALIVE_IDLE">
896 <code class="sig-name descname">MEMCACHED_BEHAVIOR_KEEPALIVE_IDLE</code><a class="headerlink" href="#c.MEMCACHED_BEHAVIOR_KEEPALIVE_IDLE" title="Permalink to this definition"></a></dt>
897 <dd></dd></dl>
898
899 <p>Specify time, in seconds, to mark a connection as idle. This is only available as an option Linux.</p>
900 <dl class="type">
901 <dt id="c.MEMCACHED_BEHAVIOR_SOCKET_SEND_SIZE">
902 <code class="sig-name descname">MEMCACHED_BEHAVIOR_SOCKET_SEND_SIZE</code><a class="headerlink" href="#c.MEMCACHED_BEHAVIOR_SOCKET_SEND_SIZE" title="Permalink to this definition"></a></dt>
903 <dd></dd></dl>
904
905 <p>Find the current size of SO_SNDBUF. A value of 0 means either an error occurred or no hosts were available. It is safe to assume system default if this occurs. If an error occurs you can checked the last cached errno statement to find the specific error.</p>
906 <dl class="type">
907 <dt id="c.MEMCACHED_BEHAVIOR_SOCKET_RECV_SIZE">
908 <code class="sig-name descname">MEMCACHED_BEHAVIOR_SOCKET_RECV_SIZE</code><a class="headerlink" href="#c.MEMCACHED_BEHAVIOR_SOCKET_RECV_SIZE" title="Permalink to this definition"></a></dt>
909 <dd></dd></dl>
910
911 <p>Find the current size of SO_RCVBUF. A value of 0 means either an error occurred or no hosts were available. It is safe to assume system default if this occurs. If an error occurs you can checked the last cached errno statement to find the specific error.</p>
912 <dl class="type">
913 <dt>
914 <code class="sig-name descname">MEMCACHED_BEHAVIOR_SERVER_FAILURE_LIMIT</code></dt>
915 <dd></dd></dl>
916
917 <div class="deprecated">
918 <p><span class="versionmodified deprecated">Deprecated since version 0.48: </span>See <a class="reference internal" href="#c.MEMCACHED_BEHAVIOR_REMOVE_FAILED_SERVERS" title="MEMCACHED_BEHAVIOR_REMOVE_FAILED_SERVERS"><code class="xref c c-type docutils literal notranslate"><span class="pre">MEMCACHED_BEHAVIOR_REMOVE_FAILED_SERVERS</span></code></a></p>
919 <p>This number of times a host can have an error before it is disabled.</p>
920 </div>
921 <dl class="type">
922 <dt id="c.MEMCACHED_BEHAVIOR_AUTO_EJECT_HOSTS">
923 <code class="sig-name descname">MEMCACHED_BEHAVIOR_AUTO_EJECT_HOSTS</code><a class="headerlink" href="#c.MEMCACHED_BEHAVIOR_AUTO_EJECT_HOSTS" title="Permalink to this definition"></a></dt>
924 <dd></dd></dl>
925
926 <div class="deprecated">
927 <p><span class="versionmodified deprecated">Deprecated since version 0.48: </span>See <a class="reference internal" href="#c.MEMCACHED_BEHAVIOR_REMOVE_FAILED_SERVERS" title="MEMCACHED_BEHAVIOR_REMOVE_FAILED_SERVERS"><code class="xref c c-type docutils literal notranslate"><span class="pre">MEMCACHED_BEHAVIOR_REMOVE_FAILED_SERVERS</span></code></a></p>
928 <p>If enabled any hosts which have been flagged as disabled will be removed from the list of servers in the memcached_st structure. This must be used in combination with MEMCACHED_BEHAVIOR_SERVER_FAILURE_LIMIT.</p>
929 </div>
930 <dl class="type">
931 <dt id="c.MEMCACHED_BEHAVIOR_REMOVE_FAILED_SERVERS">
932 <code class="sig-name descname">MEMCACHED_BEHAVIOR_REMOVE_FAILED_SERVERS</code><a class="headerlink" href="#c.MEMCACHED_BEHAVIOR_REMOVE_FAILED_SERVERS" title="Permalink to this definition"></a></dt>
933 <dd><p>If enabled any hosts which have been flagged as disabled will be removed from the list of servers in the memcached_st structure.</p>
934 </dd></dl>
935
936 <dl class="type">
937 <dt id="c.MEMCACHED_BEHAVIOR_RETRY_TIMEOUT">
938 <code class="sig-name descname">MEMCACHED_BEHAVIOR_RETRY_TIMEOUT</code><a class="headerlink" href="#c.MEMCACHED_BEHAVIOR_RETRY_TIMEOUT" title="Permalink to this definition"></a></dt>
939 <dd></dd></dl>
940
941 <p>When enabled a host which is problematic will only be checked for usage based on the amount of time set by this behavior. The value is in seconds.</p>
942 <dl class="type">
943 <dt id="c.MEMCACHED_BEHAVIOR_HASH_WITH_PREFIX_KEY">
944 <code class="sig-name descname">MEMCACHED_BEHAVIOR_HASH_WITH_PREFIX_KEY</code><a class="headerlink" href="#c.MEMCACHED_BEHAVIOR_HASH_WITH_PREFIX_KEY" title="Permalink to this definition"></a></dt>
945 <dd></dd></dl>
946
947 <p>When enabled the prefix key will be added to the key when determining server
948 by hash. See <a class="reference internal" href="memcached_callback.html#c.MEMCACHED_CALLBACK_NAMESPACE" title="MEMCACHED_CALLBACK_NAMESPACE"><code class="xref c c-type docutils literal notranslate"><span class="pre">MEMCACHED_CALLBACK_NAMESPACE</span></code></a> for additional
949 information.</p>
950 </div>
951 <div class="section" id="return">
952 <h2>RETURN<a class="headerlink" href="#return" title="Permalink to this headline"></a></h2>
953 <p>memcached_behavior_get returns either the current value of the get, or 0
954 or 1 on simple flag behaviors (1 being enabled). memcached_behavior_set
955 returns failure or success.</p>
956 </div>
957 <div class="section" id="notes">
958 <h2>NOTES<a class="headerlink" href="#notes" title="Permalink to this headline"></a></h2>
959 <p>memcached_behavior_set in version .17 was changed from taking a pointer
960 to data value, to taking a uin64_t.</p>
961 </div>
962 <div class="section" id="see-also">
963 <h2>SEE ALSO<a class="headerlink" href="#see-also" title="Permalink to this headline"></a></h2>
964 <p><em class="manpage">memcached(1)</em> <em class="manpage">libmemcached(3)</em> <em class="manpage">memcached_strerror(3)</em></p>
965 </div>
966 </div>
967
968
969 </div>
970
971 </div>
972 <footer>
973
974 <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
975
976 <a href="memcached_callback.html" class="btn btn-neutral float-right" title="Setting callbacks" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right"></span></a>
977
978
979 <a href="libmemcached-1.0/memcached_set_encoding_key.html" class="btn btn-neutral float-left" title="Set encryption key" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left"></span> Previous</a>
980
981 </div>
982
983
984 <hr/>
985
986 <div role="contentinfo">
987 <p>
988 &copy; <a href="copyright.html">Copyright</a>
989
990 </p>
991 </div>
992 Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
993
994 </footer>
995
996 </div>
997 </div>
998
999 </section>
1000
1001 </div>
1002
1003
1004
1005 <script type="text/javascript">
1006 jQuery(function () {
1007 SphinxRtdTheme.Navigation.enable(true);
1008 });
1009 </script>
1010
1011
1012
1013
1014
1015
1016 </body>
1017 </html>