From: Brian Aker Date: Sun, 10 Apr 2011 02:30:09 +0000 (-0700) Subject: Merge in more documentation. X-Git-Tag: 0.51~15^2~8 X-Git-Url: https://git.m6w6.name/?a=commitdiff_plain;h=1a237369acc2140ec76f46202dfde37047ef140d;p=m6w6%2Flibmemcached Merge in more documentation. --- diff --git a/ChangeLog b/ChangeLog index 09bfd51a..d3fde530 100644 --- a/ChangeLog +++ b/ChangeLog @@ -2,11 +2,11 @@ * Fix calls to auto methods so that if value is not passed in nothing bad happens. * New parser calls for generating memcached_st objects. * New error system. - + * New flow control for messages means faster get/set calls. * Added new documentation system. - - * A behavior change has been now made that if you specify a weight for any - server, we enable the weight flag and do weight balancing. + * A behavior change has been now made that if you specify a weight for any server, we enable the weight flag and do weight balancing. + + * Added MEMCACHED_BEHAVIOR_REMOVE_FAILED_SERVERS to simplify the setting of AUTO REJECT for servers. 0.48 Tue Mar 15 23:05:18 PDT 2011 * Fix memory leak in server parse. diff --git a/docs/conf.py b/docs/conf.py index 2c634707..33febd2e 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -227,15 +227,15 @@ man_pages = [ ('hashkit_functions', 'hashkit_murmur', u'libhashkit Documentation', [u'Brian Aker'], 3), ('hashkit_functions', 'hashkit_hsieh', u'libhashkit Documentation', [u'Brian Aker'], 3), ('hashkit_value', 'hashkit_value', u'libhashkit Documentation', [u'Brian Aker'], 3), - ('libmemcached', 'libmemcached', u'libmemcached Documentation', [u'Brian Aker'], 3), + ('libmemcached', 'libmemcached', u'Introducing the C Client Library for memcached', [u'Brian Aker'], 3), ('libmemcached_examples', 'libmemcached_examples', u'libmemcached Documentation', [u'Brian Aker'], 3), ('libmemcachedutil', 'libmemcachedutil', u'libmemcached Documentation', [u'Brian Aker'], 3), ('memcached_analyze', 'memcached_analyze', u'libmemcached Documentation', [u'Brian Aker'], 3), - ('memcached_auto', 'memcached_auto', u'libmemcached Documentation', [u'Brian Aker'], 3), - ('memcached_auto', 'memcached_decrement', u'libmemcached Documentation', [u'Brian Aker'], 3), - ('memcached_auto', 'memcached_decrement_with_initial', u'libmemcached Documentation', [u'Brian Aker'], 3), - ('memcached_auto', 'memcached_increment', u'libmemcached Documentation', [u'Brian Aker'], 3), - ('memcached_auto', 'memcached_increment_with_initial', u'libmemcached Documentation', [u'Brian Aker'], 3), + ('memcached_auto', 'memcached_auto', u'Incrementing and Decrementing Values', [u'Brian Aker'], 3), + ('memcached_auto', 'memcached_decrement', u'Incrementing and Decrementing Values', [u'Brian Aker'], 3), + ('memcached_auto', 'memcached_decrement_with_initial', u'Incrementing and Decrementing Values', [u'Brian Aker'], 3), + ('memcached_auto', 'memcached_increment', u'Incrementing and Decrementing Values', [u'Brian Aker'], 3), + ('memcached_auto', 'memcached_increment_with_initial', u'Incrementing and Decrementing Values', [u'Brian Aker'], 3), ('memcached_behavior', 'memcached_behavior', u'libmemcached Documentation', [u'Brian Aker'], 3), ('memcached_behavior', 'memcached_behavior_get', u'libmemcached Documentation', [u'Brian Aker'], 3), ('memcached_behavior', 'memcached_behavior_set', u'libmemcached Documentation', [u'Brian Aker'], 3), @@ -251,16 +251,17 @@ man_pages = [ ('memcached_dump', 'memcached_dump', u'libmemcached Documentation', [u'Brian Aker'], 3), ('memcached_flush', 'memcached_flush', u'libmemcached Documentation', [u'Brian Aker'], 3), ('memcached_flush_buffers', 'memcached_flush_buffers', u'libmemcached Documentation', [u'Brian Aker'], 3), - ('memcached_generate_hash_value', 'memcached_generate_hash_value', u'libmemcached Documentation', [u'Brian Aker'], 3), - ('memcached_get', 'memcached_fetch', u'libmemcached Documentation', [u'Brian Aker'], 3), - ('memcached_get', 'memcached_fetch_execute', u'libmemcached Documentation', [u'Brian Aker'], 3), - ('memcached_get', 'memcached_fetch_result', u'libmemcached Documentation', [u'Brian Aker'], 3), - ('memcached_get', 'memcached_get', u'libmemcached Documentation', [u'Brian Aker'], 3), - ('memcached_get', 'memcached_get_by_key', u'libmemcached Documentation', [u'Brian Aker'], 3), - ('memcached_get', 'memcached_mget', u'libmemcached Documentation', [u'Brian Aker'], 3), - ('memcached_get', 'memcached_mget_by_key', u'libmemcached Documentation', [u'Brian Aker'], 3), - ('memcached_get', 'memcached_mget_execute', u'libmemcached Documentation', [u'Brian Aker'], 3), - ('memcached_get', 'memcached_mget_execute_by_key', u'libmemcached Documentation', [u'Brian Aker'], 3), + ('memcached_generate_hash_value', 'memcached_generate_hash_value', u'Generating hash values directly', [u'Brian Aker'], 3), + ('memcached_generate_hash_value', 'memcached_generate_hash', u'Generating hash values directly', [u'Brian Aker'], 3), + ('memcached_get', 'memcached_fetch', u'Retrieving data from the server', [u'Brian Aker'], 3), + ('memcached_get', 'memcached_fetch_execute', u'Retrieving data from the server', [u'Brian Aker'], 3), + ('memcached_get', 'memcached_fetch_result', u'Retrieving data from the server', [u'Brian Aker'], 3), + ('memcached_get', 'memcached_get', u'Retrieving data from the server', [u'Brian Aker'], 3), + ('memcached_get', 'memcached_get_by_key', u'Retrieving data from the server', [u'Brian Aker'], 3), + ('memcached_get', 'memcached_mget', u'Retrieving data from the server', [u'Brian Aker'], 3), + ('memcached_get', 'memcached_mget_by_key', u'Retrieving data from the server', [u'Brian Aker'], 3), + ('memcached_get', 'memcached_mget_execute', u'Retrieving data from the server', [u'Brian Aker'], 3), + ('memcached_get', 'memcached_mget_execute_by_key', u'Retrieving data from the server', [u'Brian Aker'], 3), ('memcached_memory_allocators', 'memcached_get_memory_allocators', u'libmemcached Documentation', [u'Brian Aker'], 3), ('memcached_memory_allocators', 'memcached_memory_allocators', u'libmemcached Documentation', [u'Brian Aker'], 3), ('memcached_memory_allocators', 'memcached_set_memory_allocators', u'libmemcached Documentation', [u'Brian Aker'], 3), @@ -274,15 +275,15 @@ man_pages = [ ('memcached_pool', 'memcached_pool_pop', u'libmemcached Documentation', [u'Brian Aker'], 3), ('memcached_pool', 'memcached_pool_push', u'libmemcached Documentation', [u'Brian Aker'], 3), ('memcached_quit', 'memcached_quit', u'libmemcached Documentation', [u'Brian Aker'], 3), - ('memcached_result_st', 'memcached_result_cas', u'libmemcached Documentation', [u'Brian Aker'], 3), - ('memcached_result_st', 'memcached_result_create', u'libmemcached Documentation', [u'Brian Aker'], 3), - ('memcached_result_st', 'memcached_result_flags', u'libmemcached Documentation', [u'Brian Aker'], 3), - ('memcached_result_st', 'memcached_result_free', u'libmemcached Documentation', [u'Brian Aker'], 3), - ('memcached_result_st', 'memcached_result_key_length', u'libmemcached Documentation', [u'Brian Aker'], 3), - ('memcached_result_st', 'memcached_result_key_value', u'libmemcached Documentation', [u'Brian Aker'], 3), - ('memcached_result_st', 'memcached_result_length', u'libmemcached Documentation', [u'Brian Aker'], 3), - ('memcached_result_st', 'memcached_result_st', u'libmemcached Documentation', [u'Brian Aker'], 3), - ('memcached_result_st', 'memcached_result_value', u'libmemcached Documentation', [u'Brian Aker'], 3), + ('memcached_result_st', 'memcached_result_cas', u'Working with result sets', [u'Brian Aker'], 3), + ('memcached_result_st', 'memcached_result_create', u'Working with result sets', [u'Brian Aker'], 3), + ('memcached_result_st', 'memcached_result_flags', u'Working with result sets', [u'Brian Aker'], 3), + ('memcached_result_st', 'memcached_result_free', u'Working with result sets', [u'Brian Aker'], 3), + ('memcached_result_st', 'memcached_result_key_length', u'Working with result sets', [u'Brian Aker'], 3), + ('memcached_result_st', 'memcached_result_key_value', u'Working with result sets', [u'Brian Aker'], 3), + ('memcached_result_st', 'memcached_result_length', u'Working with result sets', [u'Brian Aker'], 3), + ('memcached_result_st', 'memcached_result_st', u'Working with result sets', [u'Brian Aker'], 3), + ('memcached_result_st', 'memcached_result_value', u'Working with result sets', [u'Brian Aker'], 3), ('memcached_sasl', 'memcached_destroy_sasl_auth_data', u'libmemcached Documentation', [u'Brian Aker'], 3), ('memcached_sasl', 'memcached_get_sasl_callbacks', u'libmemcached Documentation', [u'Brian Aker'], 3), ('memcached_sasl', 'memcached_sasl', u'libmemcached Documentation', [u'Brian Aker'], 3), @@ -300,18 +301,18 @@ man_pages = [ ('memcached_servers', 'memcached_server_push', u'libmemcached Documentation', [u'Brian Aker'], 3), ('memcached_servers', 'memcached_server_st', u'libmemcached Documentation', [u'Brian Aker'], 3), ('memcached_servers', 'memcached_servers', u'libmemcached Documentation', [u'Brian Aker'], 3), - ('memcached_set', 'memcached_add', u'libmemcached Documentation', [u'Brian Aker'], 3), - ('memcached_set', 'memcached_add_by_key', u'libmemcached Documentation', [u'Brian Aker'], 3), - ('memcached_set', 'memcached_append', u'libmemcached Documentation', [u'Brian Aker'], 3), - ('memcached_set', 'memcached_append_by_key', u'libmemcached Documentation', [u'Brian Aker'], 3), - ('memcached_set', 'memcached_cas', u'libmemcached Documentation', [u'Brian Aker'], 3), - ('memcached_set', 'memcached_cas_by_key', u'libmemcached Documentation', [u'Brian Aker'], 3), - ('memcached_set', 'memcached_prepend', u'libmemcached Documentation', [u'Brian Aker'], 3), - ('memcached_set', 'memcached_prepend_by_key', u'libmemcached Documentation', [u'Brian Aker'], 3), - ('memcached_set', 'memcached_replace', u'libmemcached Documentation', [u'Brian Aker'], 3), - ('memcached_set', 'memcached_replace_by_key', u'libmemcached Documentation', [u'Brian Aker'], 3), - ('memcached_set', 'memcached_set', u'libmemcached Documentation', [u'Brian Aker'], 3), - ('memcached_set', 'memcached_set_by_key', u'libmemcached Documentation', [u'Brian Aker'], 3), + ('memcached_set', 'memcached_add', u'Storing and Replacing Data', [u'Brian Aker'], 3), + ('memcached_set', 'memcached_add_by_key', u'Storing and Replacing Data', [u'Brian Aker'], 3), + ('memcached_set', 'memcached_append', u'Storing and Replacing Data', [u'Brian Aker'], 3), + ('memcached_set', 'memcached_append_by_key', u'Storing and Replacing Data', [u'Brian Aker'], 3), + ('memcached_set', 'memcached_cas', u'Storing and Replacing Data', [u'Brian Aker'], 3), + ('memcached_set', 'memcached_cas_by_key', u'Storing and Replacing Data', [u'Brian Aker'], 3), + ('memcached_set', 'memcached_prepend', u'Storing and Replacing Data', [u'Brian Aker'], 3), + ('memcached_set', 'memcached_prepend_by_key', u'Storing and Replacing Data', [u'Brian Aker'], 3), + ('memcached_set', 'memcached_replace', u'Storing and Replacing Data', [u'Brian Aker'], 3), + ('memcached_set', 'memcached_replace_by_key', u'Storing and Replacing Data', [u'Brian Aker'], 3), + ('memcached_set', 'memcached_set', u'Storing and Replacing Data', [u'Brian Aker'], 3), + ('memcached_set', 'memcached_set_by_key', u'Storing and Replacing Data', [u'Brian Aker'], 3), ('memcached_stats', 'memcached_stat', u'libmemcached Documentation', [u'Brian Aker'], 3), ('memcached_stats', 'memcached_stat_execute', u'libmemcached Documentation', [u'Brian Aker'], 3), ('memcached_stats', 'memcached_stat_get_keys', u'libmemcached Documentation', [u'Brian Aker'], 3), diff --git a/docs/include.am b/docs/include.am index 03a54a29..6721c4d2 100644 --- a/docs/include.am +++ b/docs/include.am @@ -107,6 +107,7 @@ man_MANS+= \ docs/man/memcached_fetch_result.3 \ docs/man/memcached_flush_buffers.3 \ docs/man/memcached_free.3 \ + docs/man/memcached_generate_hash.3 \ docs/man/memcached_generate_hash_value.3 \ docs/man/memcached_get.3 \ docs/man/memcached_get_by_key.3 \ diff --git a/docs/libmemcached.rst b/docs/libmemcached.rst index 38346fca..c60cf99c 100644 --- a/docs/libmemcached.rst +++ b/docs/libmemcached.rst @@ -1,29 +1,14 @@ -=========== -Introducing -=========== - - -Client library for memcached - - -------- -LIBRARY -------- - - -C Client Library for memcached (libmemcached, -lmemcached) - +============================================== +Introducing the C Client Library for memcached +============================================== -------- SYNOPSIS -------- +#include - -.. code-block:: perl - - #include - +Compile and link with -lmemcached ----------- diff --git a/docs/libmemcached_configuration.rst b/docs/libmemcached_configuration.rst index 86b7cbe9..5cb35374 100644 --- a/docs/libmemcached_configuration.rst +++ b/docs/libmemcached_configuration.rst @@ -3,3 +3,121 @@ Configuring Libmemcached ======================== Libmemcached implements a custom language for configuring and modifying servers. + +.. describe:: --SERVER=:/? + +Provide a servername to be used by the client. Providing a weight will cause weighting to occur with all hosts with each server getting a default weight of 1. + +.. describe:: --VERIFY-KEY + +Verify that keys that are being used fit within the design of the protocol being used. + +.. describe:: --AUTO-EJECT_HOSTS + +Enable the behavior MEMCACHED_BEHAVIOR_AUTO_EJECT_HOSTS. + +.. describe:: --BINARY-PROTOCOL + +Force all connections to use the binary protocol. + +.. describe:: --BUFFER-REQUESTS + +Enable MEMCACHED_BEHAVIOR_BUFFER_REQUESTS. + +.. describe:: --CONFIGURE-FILE= + +Provide a configuration file to be used to load requests. Beware that by using a configuration file libmemcached will reset memcached_st based on information only contained in the file. + +.. describe:: --CONNECT-TIMEOUT= + +Enable MEMCACHED_BEHAVIOR_CONNECT_TIMEOUT. + +.. describe:: --DISTRIBUTION= + +Set the distribution model used by the client. See :manpage:`` for more details. + +.. describe:: --HASH= + +Set the hashing alogrthm used for placing keys on servers. + +.. describe:: --HASH-WITH-PREFIX_KEY + +.. describe:: --IO-BYTES-WATERMARK= + +.. describe:: --IO-KEY-PREFETCH= + +.. describe:: --IO-MSG-WATERMARK= + +.. describe:: --NOREPLY + +.. describe:: --NUMBER-OF-REPLICAS= + +Set the nummber of servers that keys will be replicated to. + +.. describe:: --POLL-TIMEOUT= + +.. describe:: --RANDOMIZE-REPLICA-READ + +Select randomly the server within the replication pool to read from. + +.. describe:: --RCV-TIMEOUT= + +.. describe:: --RETRY-TIMEOUT= + +See :manpage:`memcached_behavior_set(3)` for MEMCACHED_BEHAVIOR_RETRY_TIMEOUT + +.. describe:: --SERVER-FAILURE-LIMIT= + +See :manpage:`memcached_behavior_set(3)` for MEMCACHED_BEHAVIOR_SERVER_FAILURE_LIMIT + +.. describe:: --SND-TIMEOUT= + +See :manpage:`memcached_behavior_set(3)` for MEMCACHED_BEHAVIOR_SND_TIMEOUT + +.. describe:: --SOCKET-RECV-SIZE= + +See :manpage:`memcached_behavior_set(3)` for MEMCACHED_BEHAVIOR_SOCKET_RECV_SIZE + +.. describe:: --SOCKET-SEND-SIZE= + +See :manpage:`memcached_behavior_set(3)` for MEMCACHED_BEHAVIOR_SOCKET_SEND_SIZE + +.. describe:: --SORT-HOSTS + +When adding new servers always calculate their distribution based on sorted naming order. + +.. describe:: --SUPPORT-CAS + +See :manpage:`memcached_behavior_set(3)` for MEMCACHED_BEHAVIOR_SUPPORT_CAS + +.. describe:: --TCP-NODELAY + +See :manpage:`memcached_behavior_set(3)` for MEMCACHED_BEHAVIOR_TCP_NODELAY + +.. describe:: --TCP-KEEPALIVE + +See :manpage:`memcached_behavior_set(3)` for MEMCACHED_BEHAVIOR_TCP_KEEPALIVE + +.. describe:: --TCP-KEEPIDLE + +.. describe:: --USE-UDP + +See :manpage:`memcached_behavior_set(3)` for MEMCACHED_BEHAVIOR_USE_UDP + +.. describe:: --PREFIX-KEY= + +.. describe:: INCLUDE + +Include a file in configuration. Unlike --CONFIGURE-FILE= this will not reset memcached_st + +.. describe:: RESET + +Reset memcached_st and continue to process. + +.. describe:: END + +End configutation processing. + +.. describe:: ERROR + +End configutation processing and throw an error. diff --git a/docs/man/libmemcached.3 b/docs/man/libmemcached.3 index e8eb8f04..d70d225c 100644 --- a/docs/man/libmemcached.3 +++ b/docs/man/libmemcached.3 @@ -1,6 +1,6 @@ .TH "LIBMEMCACHED" "3" "April 09, 2011" "0.47" "libmemcached" .SH NAME -libmemcached \- libmemcached Documentation +libmemcached \- Introducing the C Client Library for memcached . .nr rst2man-indent-level 0 . @@ -30,18 +30,11 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] .. .\" Man page generated from reStructeredText. . -.sp -Client library for memcached -.SH LIBRARY -.sp -C Client Library for memcached (libmemcached, \-lmemcached) .SH SYNOPSIS .sp -.nf -.ft C #include -.ft P -.fi +.sp +Compile and link with \-lmemcached .SH DESCRIPTION .sp "Memcached is a high\-performance, distributed memory object caching diff --git a/docs/man/memcached_add.3 b/docs/man/memcached_add.3 index a796bc8f..17ecbe0b 100644 --- a/docs/man/memcached_add.3 +++ b/docs/man/memcached_add.3 @@ -1,6 +1,6 @@ .TH "MEMCACHED_ADD" "3" "April 09, 2011" "0.47" "libmemcached" .SH NAME -memcached_add \- libmemcached Documentation +memcached_add \- Storing and Replacing Data . .nr rst2man-indent-level 0 . @@ -32,107 +32,59 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] . .sp Store value on server -.SH LIBRARY -.sp -C Client Library for memcached (libmemcached, \-lmemcached) .SH SYNOPSIS .sp -.nf -.ft C #include - -memcached_return_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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); -.ft P -.fi +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_prepend(memcached_st\fI\ *ptr\fP, const char\fI\ *key\fP, size_t\fI\ key_length\fP, const char\fI\ *value\fP, size_t\fI\ value_length\fP, time_t\fI\ expiration\fP, uint32_t\fI\ flags\fP) +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_append(memcached_st\fI\ *ptr\fP, const char\fI\ *key\fP, size_t\fI\ key_length\fP, const char\fI\ *value\fP, size_t\fI\ value_length\fP, time_t\fI\ expiration\fP, uint32_t\fI\ flags\fP) +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.sp +Compile and link with \-lmemcached .SH DESCRIPTION .sp memcached_set(), memcached_add(), and memcached_replace() are all used to diff --git a/docs/man/memcached_add_by_key.3 b/docs/man/memcached_add_by_key.3 index d6641218..b1331717 100644 --- a/docs/man/memcached_add_by_key.3 +++ b/docs/man/memcached_add_by_key.3 @@ -1,6 +1,6 @@ .TH "MEMCACHED_ADD_BY_KEY" "3" "April 09, 2011" "0.47" "libmemcached" .SH NAME -memcached_add_by_key \- libmemcached Documentation +memcached_add_by_key \- Storing and Replacing Data . .nr rst2man-indent-level 0 . @@ -32,107 +32,59 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] . .sp Store value on server -.SH LIBRARY -.sp -C Client Library for memcached (libmemcached, \-lmemcached) .SH SYNOPSIS .sp -.nf -.ft C #include - -memcached_return_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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); -.ft P -.fi +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_prepend(memcached_st\fI\ *ptr\fP, const char\fI\ *key\fP, size_t\fI\ key_length\fP, const char\fI\ *value\fP, size_t\fI\ value_length\fP, time_t\fI\ expiration\fP, uint32_t\fI\ flags\fP) +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_append(memcached_st\fI\ *ptr\fP, const char\fI\ *key\fP, size_t\fI\ key_length\fP, const char\fI\ *value\fP, size_t\fI\ value_length\fP, time_t\fI\ expiration\fP, uint32_t\fI\ flags\fP) +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.sp +Compile and link with \-lmemcached .SH DESCRIPTION .sp memcached_set(), memcached_add(), and memcached_replace() are all used to diff --git a/docs/man/memcached_append.3 b/docs/man/memcached_append.3 index 9411d127..4da04b80 100644 --- a/docs/man/memcached_append.3 +++ b/docs/man/memcached_append.3 @@ -1,6 +1,6 @@ .TH "MEMCACHED_APPEND" "3" "April 09, 2011" "0.47" "libmemcached" .SH NAME -memcached_append \- libmemcached Documentation +memcached_append \- Storing and Replacing Data . .nr rst2man-indent-level 0 . @@ -32,107 +32,59 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] . .sp Store value on server -.SH LIBRARY -.sp -C Client Library for memcached (libmemcached, \-lmemcached) .SH SYNOPSIS .sp -.nf -.ft C #include - -memcached_return_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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); -.ft P -.fi +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_prepend(memcached_st\fI\ *ptr\fP, const char\fI\ *key\fP, size_t\fI\ key_length\fP, const char\fI\ *value\fP, size_t\fI\ value_length\fP, time_t\fI\ expiration\fP, uint32_t\fI\ flags\fP) +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_append(memcached_st\fI\ *ptr\fP, const char\fI\ *key\fP, size_t\fI\ key_length\fP, const char\fI\ *value\fP, size_t\fI\ value_length\fP, time_t\fI\ expiration\fP, uint32_t\fI\ flags\fP) +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.sp +Compile and link with \-lmemcached .SH DESCRIPTION .sp memcached_set(), memcached_add(), and memcached_replace() are all used to diff --git a/docs/man/memcached_append_by_key.3 b/docs/man/memcached_append_by_key.3 index 283fe738..b51fdce8 100644 --- a/docs/man/memcached_append_by_key.3 +++ b/docs/man/memcached_append_by_key.3 @@ -1,6 +1,6 @@ .TH "MEMCACHED_APPEND_BY_KEY" "3" "April 09, 2011" "0.47" "libmemcached" .SH NAME -memcached_append_by_key \- libmemcached Documentation +memcached_append_by_key \- Storing and Replacing Data . .nr rst2man-indent-level 0 . @@ -32,107 +32,59 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] . .sp Store value on server -.SH LIBRARY -.sp -C Client Library for memcached (libmemcached, \-lmemcached) .SH SYNOPSIS .sp -.nf -.ft C #include - -memcached_return_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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); -.ft P -.fi +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_prepend(memcached_st\fI\ *ptr\fP, const char\fI\ *key\fP, size_t\fI\ key_length\fP, const char\fI\ *value\fP, size_t\fI\ value_length\fP, time_t\fI\ expiration\fP, uint32_t\fI\ flags\fP) +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_append(memcached_st\fI\ *ptr\fP, const char\fI\ *key\fP, size_t\fI\ key_length\fP, const char\fI\ *value\fP, size_t\fI\ value_length\fP, time_t\fI\ expiration\fP, uint32_t\fI\ flags\fP) +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.sp +Compile and link with \-lmemcached .SH DESCRIPTION .sp memcached_set(), memcached_add(), and memcached_replace() are all used to diff --git a/docs/man/memcached_auto.3 b/docs/man/memcached_auto.3 index 9228ccd2..39530a28 100644 --- a/docs/man/memcached_auto.3 +++ b/docs/man/memcached_auto.3 @@ -1,6 +1,6 @@ .TH "MEMCACHED_AUTO" "3" "April 09, 2011" "0.47" "libmemcached" .SH NAME -memcached_auto \- libmemcached Documentation +memcached_auto \- Incrementing and Decrementing Values . .nr rst2man-indent-level 0 . @@ -30,87 +30,46 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] .. .\" Man page generated from reStructeredText. . +.SH SYNOPSIS .sp -Manipulate counters -.SH LIBRARY -.sp -C Client Library for memcached (libmemcached, \-lmemcached) -.SS SYNOPSIS -.sp -.nf -.ft C #include - -memcached_return_t - memcached_increment (memcached_st *ptr, - const char *key, size_t key_length, - unsigned int offset, - uint64_t *value); - -memcached_return_t - memcached_decrement (memcached_st *ptr, - const char *key, size_t key_length, - unsigned int offset, - uint64_t *value); - -memcached_return_t - memcached_increment_with_initial (memcached_st *ptr, - const char *key, - size_t key_length, - uint64_t offset, - uint64_t initial, - time_t expiration, - uint64_t *value); - -memcached_return_t - memcached_decrement_with_initial (memcached_st *ptr, - const char *key, - size_t key_length, - uint64_t offset, - uint64_t initial, - time_t expiration, - uint64_t *value); - -memcached_return_t - memcached_increment_by_key (memcached_st *ptr, - const char *master_key, size_t master_key_length, - const char *key, size_t key_length, - unsigned int offset, - uint64_t *value); - -memcached_return_t - memcached_decrement_by_key (memcached_st *ptr, - const char *master_key, size_t master_key_length, - const char *key, size_t key_length, - unsigned int offset, - uint64_t *value); - -memcached_return_t - memcached_increment_with_initial_by_key (memcached_st *ptr, - const char *master_key, - size_t master_key_length, - const char *key, - size_t key_length, - uint64_t offset, - uint64_t initial, - time_t expiration, - uint64_t *value); - -memcached_return_t - memcached_decrement_with_initial_by_key (memcached_st *ptr, - const char *master_key, - size_t master_key_length, - const char *key, - size_t key_length, - uint64_t offset, - uint64_t initial, - time_t expiration, - uint64_t *value); -.ft P -.fi -.SS DESCRIPTION +.INDENT 0.0 +.TP +.B memcached_return_t memcached_increment (memcached_st *ptr, const char *key, size_t key_length, unsigned int offset, uint64_t *value); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_decrement (memcached_st *ptr, const char *key, size_t key_length, unsigned int offset, uint64_t *value); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_increment_with_initial (memcached_st *ptr, const char *key, size_t key_length, uint64_t offset, uint64_t initial, time_t expiration, uint64_t *value); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_decrement_with_initial (memcached_st *ptr, const char *key, size_t key_length, uint64_t offset, uint64_t initial, time_t expiration, uint64_t *value); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_increment_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char *key, size_t key_length, unsigned int offset, uint64_t *value); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_decrement_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char *key, size_t key_length, unsigned int offset, uint64_t *value); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_increment_with_initial_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char *key, size_t key_length, uint64_t offset, uint64_t initial, time_t expiration, uint64_t *value); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_decrement_with_initial_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char *key, size_t key_length, uint64_t offset, uint64_t initial, time_t expiration, uint64_t *value); +.UNINDENT +.sp +Compile and link with \-lmemcached +.SH DESCRIPTION .sp -memcached(1) servers have the ability to increment and decrement keys +\fImemcached(1)\fP servers have the ability to increment and decrement keys (overflow and underflow are not detected). This gives you the ability to use memcached to generate shared sequences of values. .sp @@ -153,10 +112,7 @@ Use memcached_strerror() to translate this value to a printable string. .sp To find out more information please check: \fI\%https://launchpad.net/libmemcached\fP -.SH AUTHOR -.sp -Brian Aker, <\fI\%brian@tangent.org\fP> -.SS SEE ALSO +.SH SEE ALSO .sp \fImemcached(1)\fP \fIlibmemcached(3)\fP \fImemcached_strerror(3)\fP .SH AUTHOR diff --git a/docs/man/memcached_behavior.3 b/docs/man/memcached_behavior.3 index 1658a14d..826497fe 100644 --- a/docs/man/memcached_behavior.3 +++ b/docs/man/memcached_behavior.3 @@ -35,25 +35,20 @@ Manipulate behavior .SH LIBRARY .sp C Client Library for memcached (libmemcached, \-lmemcached) -.SS SYNOPSIS +.SH SYNOPSIS .sp -.nf -.ft C #include - -uint64_t - memcached_behavior_get (memcached_st *ptr, - memcached_behavior flag); - -memcached_return_t - memcached_behavior_set (memcached_st *ptr, - memcached_behavior flag, - uint64_t data); -.ft P -.fi -.SS DESCRIPTION -.sp -libmemcached(3) behavior can be modified by use memcached_behavior_set(). +.INDENT 0.0 +.TP +.B uint64_t memcached_behavior_get (memcached_st *ptr, memcached_behavior flag); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_behavior_set (memcached_st *ptr, memcached_behavior flag, uint64_t data); +.UNINDENT +.SH DESCRIPTION +.sp +\fIlibmemcached(3)\fP behavior can be modified by use memcached_behavior_set(). Default behavior is the library strives to be quick and accurate. Some behavior, while being faster, can also result in not entirely accurate behavior (for instance, memcached_set() will always respond with @@ -66,12 +61,12 @@ memcached_behavior_set() changes the value of a particular option of the client. It takes both a flag (listed below) and a value. For simple on or off options you just need to pass in a value of 1. Calls to memcached_behavior_set() will flush and reset all connections. -.sp -MEMCACHED_BEHAVIOR_USE_UDP .INDENT 0.0 -.INDENT 3.5 +.TP +.B MEMCACHED_BEHAVIOR_USE_UDP +.UNINDENT .sp -Causes libmemcached(3) to use the UDP transport when communicating +Causes \fIlibmemcached(3)\fP to use the UDP transport when communicating with a memcached server. Not all I/O operations are testsed when this behavior is enababled. The following operations will return \fBMEMCACHED_NOT_SUPPORTED\fP when executed with the MEMCACHED_BEHAVIOR_USE_UDP @@ -84,362 +79,236 @@ mode, in which once the client has executed the operation, no attempt will be made to ensure the operation has been received and acted on by the server. .sp -libmemcached(3) does not allow TCP and UDP servers to be shared within +\fIlibmemcached(3)\fP does not allow TCP and UDP servers to be shared within the same libmemached(3) client \(aqinstance\(aq. An attempt to add a TCP server when this behavior is enabled will result in a \fBMEMCACHED_INVALID_HOST_PROTOCOL\fP, as will attempting to add a UDP server when this behavior has not been enabled. -.UNINDENT -.UNINDENT -.sp -MEMCACHED_BEHAVIOR_NO_BLOCK .INDENT 0.0 -.INDENT 3.5 -.sp -Causes libmemcached(3) to use asychronous IO. This is the fastest transport -available for storage functions. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_NO_BLOCK .UNINDENT .sp -MEMCACHED_BEHAVIOR_SND_TIMEOUT +Causes \fIlibmemcached(3)\fP to use asychronous IO. This is the fastest transport +available for storage functions. .INDENT 0.0 -.INDENT 3.5 -.sp -This sets the microsecond behavior of the socket against the SO_SNDTIMEO flag. -In cases where you cannot use non\-blocking IO this will allow you to still have -timeouts on the sending of data. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_SND_TIMEOUT .UNINDENT .sp -MEMCACHED_BEHAVIOR_RCV_TIMEOUT +This sets the microsecond behavior of the socket against the SO_SNDTIMEO flag. In cases where you cannot use non\-blocking IO this will allow you to still have timeouts on the sending of data. .INDENT 0.0 -.INDENT 3.5 +.TP +.B MEMCACHED_BEHAVIOR_RCV_TIMEOUT +.UNINDENT .sp This sets the microsecond behavior of the socket against the SO_RCVTIMEO flag. -In cases where you cannot use non\-blocking IO this will allow you to still have -timeouts on the reading of data. -.UNINDENT -.UNINDENT .sp -MEMCACHED_BEHAVIOR_TCP_NODELAY +In cases where you cannot use non\-blocking IO this will allow you to still have timeouts on the reading of data. .INDENT 0.0 -.INDENT 3.5 +.TP +.B MEMCACHED_BEHAVIOR_TCP_NODELAY +.UNINDENT .sp Turns on the no\-delay feature for connecting sockets (may be faster in some environments). -.UNINDENT +.INDENT 0.0 +.TP +.B MEMCACHED_BEHAVIOR_HASH .UNINDENT .sp -MEMCACHED_BEHAVIOR_HASH -.INDENT 0.0 -.INDENT 3.5 +Makes the default hashing algorithm for keys use MD5. The value can be set to either MEMCACHED_HASH_DEFAULT, MEMCACHED_HASH_MD5, MEMCACHED_HASH_CRC, MEMCACHED_HASH_FNV1_64, MEMCACHED_HASH_FNV1A_64, MEMCACHED_HASH_FNV1_32, MEMCACHED_HASH_FNV1A_32, MEMCACHED_HASH_JENKINS, MEMCACHED_HASH_HSIEH, and MEMCACHED_HASH_MURMUR. .sp -Makes the default hashing algorithm for keys use MD5. The value can be set -to either MEMCACHED_HASH_DEFAULT, MEMCACHED_HASH_MD5, MEMCACHED_HASH_CRC, MEMCACHED_HASH_FNV1_64, MEMCACHED_HASH_FNV1A_64, MEMCACHED_HASH_FNV1_32, MEMCACHED_HASH_FNV1A_32, MEMCACHED_HASH_JENKINS, MEMCACHED_HASH_HSIEH, and MEMCACHED_HASH_MURMUR. Each hash has it\(aqs advantages and it\(aqs weaknesses. If you don\(aqt know or don\(aqt care, just go with the default. -Support for MEMCACHED_HASH_HSIEH is a compile time option that is disabled by default. To enable tests for this hashing algorithm, configure and build libmemcached with the \-\-enable\-hash_hsieh. -.UNINDENT -.UNINDENT .sp -MEMCACHED_BEHAVIOR_DISTRIBUTION +Support for MEMCACHED_HASH_HSIEH is a compile time option that is disabled by default. To enable tests for this hashing algorithm, configure and build libmemcached with the \-\-enable\-hash_hsieh. .INDENT 0.0 -.INDENT 3.5 +.TP +.B MEMCACHED_BEHAVIOR_DISTRIBUTION +.UNINDENT .sp Using this you can enable different means of distributing values to servers. -The default method is MEMCACHED_DISTRIBUTION_MODULA. You can enable -consistent hashing by setting MEMCACHED_DISTRIBUTION_CONSISTENT. -Consistent hashing delivers better distribution and allows servers to be -added to the cluster with minimal cache losses. Currently -MEMCACHED_DISTRIBUTION_CONSISTENT is an alias for the value -MEMCACHED_DISTRIBUTION_CONSISTENT_KETAMA. -.UNINDENT -.UNINDENT .sp -MEMCACHED_BEHAVIOR_CACHE_LOOKUPS +The default method is MEMCACHED_DISTRIBUTION_MODULA. You can enable consistent hashing by setting MEMCACHED_DISTRIBUTION_CONSISTENT. Consistent hashing delivers better distribution and allows servers to be added to the cluster with minimal cache losses. Currently MEMCACHED_DISTRIBUTION_CONSISTENT is an alias for the value MEMCACHED_DISTRIBUTION_CONSISTENT_KETAMA. .INDENT 0.0 -.INDENT 3.5 -.sp -Memcached can cache named lookups so that DNS lookups are made only once. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_CACHE_LOOKUPS .UNINDENT .sp -MEMCACHED_BEHAVIOR_SUPPORT_CAS +DEPRECATED. Memcached can cache named lookups so that DNS lookups are made only once. .INDENT 0.0 -.INDENT 3.5 -.sp -Support CAS operations (this is not enabled by default at this point in the server since it imposes a slight performance penalty). -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_SUPPORT_CAS .UNINDENT .sp -MEMCACHED_BEHAVIOR_KETAMA +Support CAS operations (this is not enabled by default at this point in the server since it imposes a slight performance penalty). .INDENT 0.0 -.INDENT 3.5 -.sp -Sets the default distribution to MEMCACHED_DISTRIBUTION_CONSISTENT_KETAMA -and the hash to MEMCACHED_HASH_MD5. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_KETAMA .UNINDENT .sp -MEMCACHED_BEHAVIOR_KETAMA_WEIGHTED +Sets the default distribution to MEMCACHED_DISTRIBUTION_CONSISTENT_KETAMA and the hash to MEMCACHED_HASH_MD5. .INDENT 0.0 -.INDENT 3.5 -.sp -Sets the default distribution to MEMCACHED_DISTRIBUTION_CONSISTENT_KETAMA with the weighted tests. -and the hash to MEMCACHED_HASH_MD5. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_KETAMA_WEIGHTED .UNINDENT .sp -MEMCACHED_BEHAVIOR_KETAMA_HASH +Sets the default distribution to MEMCACHED_DISTRIBUTION_CONSISTENT_KETAMA with the weighted tests. and the hash to MEMCACHED_HASH_MD5. .INDENT 0.0 -.INDENT 3.5 -.sp -Sets the hashing algorithm for host mapping on continuum. The value can be set -to either MEMCACHED_HASH_DEFAULT, MEMCACHED_HASH_MD5, MEMCACHED_HASH_CRC, MEMCACHED_HASH_FNV1_64, MEMCACHED_HASH_FNV1A_64, MEMCACHED_HASH_FNV1_32, and MEMCACHED_HASH_FNV1A_32. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_KETAMA_HASH .UNINDENT .sp -MEMCACHED_BEHAVIOR_KETAMA_COMPAT +Sets the hashing algorithm for host mapping on continuum. The value can be set to either MEMCACHED_HASH_DEFAULT, MEMCACHED_HASH_MD5, MEMCACHED_HASH_CRC, MEMCACHED_HASH_FNV1_64, MEMCACHED_HASH_FNV1A_64, MEMCACHED_HASH_FNV1_32, and MEMCACHED_HASH_FNV1A_32. .INDENT 0.0 -.INDENT 3.5 -.sp -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. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_KETAMA_COMPAT .UNINDENT .sp -MEMCACHED_BEHAVIOR_POLL_TIMEOUT +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. .INDENT 0.0 -.INDENT 3.5 -.sp -Modify the timeout value that is used by poll(). The default value is \-1. An signed int pointer must be passed to memcached_behavior_set() to change this value. For memcached_behavior_get() a signed int value will be cast and returned as the unsigned long long. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_POLL_TIMEOUT .UNINDENT .sp -MEMCACHED_BEHAVIOR_USER_DATA +Modify the timeout value that is used by poll(). The default value is \-1. An signed int pointer must be passed to memcached_behavior_set() to change this value. For memcached_behavior_get() a signed int value will be cast and returned as the unsigned long long. .INDENT 0.0 -.INDENT 3.5 -.sp -This allows you to store a pointer to a specifc piece of data. This can be -retrieved from inside of memcached_fetch_execute(). Cloning a memcached_st -.sp -will copy the pointer to the clone. This was deprecated in 0.14 in favor -of memcached_callback_set(3). This will be removed in 0.15. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_USER_DATA .UNINDENT .sp -MEMCACHED_BEHAVIOR_BUFFER_REQUESTS +DEPRECATED .INDENT 0.0 -.INDENT 3.5 -.sp -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. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_BUFFER_REQUESTS .UNINDENT .sp -MEMCACHED_BEHAVIOR_VERIFY_KEY +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. .INDENT 0.0 -.INDENT 3.5 -.sp -Enabling this will cause libmemcached(3) to test all keys to verify that they -are valid keys. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_VERIFY_KEY .UNINDENT .sp -MEMCACHED_BEHAVIOR_SORT_HOSTS +Enabling this will cause \fIlibmemcached(3)\fP to test all keys to verify that they are valid keys. .INDENT 0.0 -.INDENT 3.5 -.sp -Enabling this will cause hosts that are added to be placed in the host list in -sorted order. This will defeat consisten hashing. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_SORT_HOSTS .UNINDENT .sp -MEMCACHED_BEHAVIOR_CONNECT_TIMEOUT +Enabling this will cause hosts that are added to be placed in the host list in sorted order. This will defeat consisten hashing. .INDENT 0.0 -.INDENT 3.5 -.sp -In non\-blocking mode this changes the value of the timeout during socket -connection. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_CONNECT_TIMEOUT .UNINDENT .sp -MEMCACHED_BEHAVIOR_BINARY_PROTOCOL +In non\-blocking mode this changes the value of the timeout during socket connection. .INDENT 0.0 -.INDENT 3.5 -.sp -Enable the use of the binary protocol. Please note that you cannot toggle -this flag on an open connection. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_BINARY_PROTOCOL .UNINDENT .sp -MEMCACHED_BEHAVIOR_SERVER_FAILURE_LIMIT +Enable the use of the binary protocol. Please note that you cannot toggle this flag on an open connection. .INDENT 0.0 -.INDENT 3.5 -.sp -Set this value to enable the server be removed after continuous MEMCACHED_BEHAVIOR_SERVER_FAILURE_LIMIT -times connection failure. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_SERVER_FAILURE_LIMIT .UNINDENT .sp -MEMCACHED_BEHAVIOR_IO_MSG_WATERMARK +Set this value to enable the server be removed after continuous MEMCACHED_BEHAVIOR_SERVER_FAILURE_LIMIT times connection failure. .INDENT 0.0 -.INDENT 3.5 -.sp -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). -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_IO_MSG_WATERMARK .UNINDENT .sp -MEMCACHED_BEHAVIOR_IO_BYTES_WATERMARK +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). .INDENT 0.0 -.INDENT 3.5 -.sp -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). -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_IO_BYTES_WATERMARK .UNINDENT .sp -MEMCACHED_BEHAVIOR_IO_KEY_PREFETCH +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). .INDENT 0.0 -.INDENT 3.5 -.sp -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. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_IO_KEY_PREFETCH .UNINDENT .sp -MEMCACHED_BEHAVIOR_NOREPLY +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. .INDENT 0.0 -.INDENT 3.5 -.sp -Set this value to specify that you really don\(aqt care about the result -from your storage commands (set, add, replace, append, prepend). -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_NOREPLY .UNINDENT .sp -MEMCACHED_BEHAVIOR_NUMBER_OF_REPLICAS +Set this value to specify that you really don\(aqt care about the result from your storage commands (set, add, replace, append, prepend). .INDENT 0.0 -.INDENT 3.5 -.sp -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 \(aqn\(aq next servers specified in your server list). -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_NUMBER_OF_REPLICAS .UNINDENT .sp -MEMCACHED_BEHAVIOR_RANDOMIZE_REPLICA_READ +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 \(aqn\(aq next servers specified in your server list). .INDENT 0.0 -.INDENT 3.5 -.sp -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 \(aqn\(aq 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. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_RANDOMIZE_REPLICA_READ .UNINDENT .sp -MEMCACHED_BEHAVIOR_CORK +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 \(aqn\(aq 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. .INDENT 0.0 -.INDENT 3.5 -.sp -Enable TCP_CORK behavior. This is only available as an option Linux. -MEMCACHED_NO_SERVERS is returned if no servers are available to test with. -MEMCACHED_NOT_SUPPORTED is returned if we were not able to determine -if tests was available. All other responses then MEMCACHED_SUCCESS -report an error of some sort. This behavior also enables -MEMCACHED_BEHAVIOR_TCP_NODELAY when set. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_CORK .UNINDENT .sp -MEMCACHED_BEHAVIOR_KEEPALIVE +This open has been deprecated with the behavior now built and used appropriately on selected platforms. .INDENT 0.0 -.INDENT 3.5 -.sp -Enable TCP_KEEPALIVE behavior. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_KEEPALIVE .UNINDENT .sp -MEMCACHED_BEHAVIOR_KEEPALIVE_IDLE +Enable TCP_KEEPALIVE behavior. .INDENT 0.0 -.INDENT 3.5 +.TP +.B MEMCACHED_BEHAVIOR_KEEPALIVE_IDLE +.UNINDENT .sp Specify time, in seconds, to mark a connection as idle. This is only available as an option Linux. -.UNINDENT +.INDENT 0.0 +.TP +.B MEMCACHED_BEHAVIOR_SOCKET_SEND_SIZE .UNINDENT .sp -MEMCACHED_BEHAVIOR_SOCKET_SEND_SIZE +Find the current size of SO_SNDBUF. A value of 0 means either an error occured 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. .INDENT 0.0 -.INDENT 3.5 -.sp -Find the current size of SO_SNDBUF. A value of 0 means either an error -occured 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. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_SOCKET_RECV_SIZE .UNINDENT .sp -MEMCACHED_BEHAVIOR_SOCKET_RECV_SIZE +Find the current size of SO_RCVBUF. A value of 0 means either an error occured 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. .INDENT 0.0 -.INDENT 3.5 -.sp -Find the current size of SO_RCVBUF. A value of 0 means either an error -occured 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. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_SERVER_FAILURE_LIMIT .UNINDENT .sp -MEMCACHED_BEHAVIOR_SERVER_FAILURE_LIMIT +DEPRECATED, please see MEMCACHED_BEHAVIOR_REMOVE_FAILED_SERVERS. This number of times a host can have an error before it is disabled. .INDENT 0.0 -.INDENT 3.5 -.sp -This number of times a host can have an error before it is disabled. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_AUTO_EJECT_HOSTS .UNINDENT .sp -MEMCACHED_BEHAVIOR_AUTO_EJECT_HOSTS +DEPRECATED, please see MEMCACHED_BEHAVIOR_REMOVE_FAILED_SERVERS. 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. .INDENT 0.0 -.INDENT 3.5 -.sp -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. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_REMOVE_FAILED_SERVERS .UNINDENT .sp -MEMCACHED_BEHAVIOR_RETRY_TIMEOUT +If enabled any hosts which have been flagged as disabled will be removed from the list of servers in the memcached_st structure. .INDENT 0.0 -.INDENT 3.5 -.sp -When enabled a host which is problematic will only be checked for usage -based on the amount of time set by this behavior. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_RETRY_TIMEOUT .UNINDENT .sp -MEMCACHED_BEHAVIOR_HASH_WITH_PREFIX_KEY +When enabled a host which is problematic will only be checked for usage based on the amount of time set by this behavior. .INDENT 0.0 -.INDENT 3.5 -.sp -When enabled the prefix key will be added to the key when determining -server by hash. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_HASH_WITH_PREFIX_KEY .UNINDENT +.sp +When enabled the prefix key will be added to the key when determining server by hash. .SH RETURN .sp memcached_behavior_get() returns either the current value of the get, or 0 @@ -453,10 +322,7 @@ to data value, to taking a uin64_t. .sp To find out more information please check: \fI\%https://launchpad.net/libmemcached\fP -.SH AUTHOR -.sp -Brian Aker, <\fI\%brian@tangent.org\fP> -.SS SEE ALSO +.SH SEE ALSO .sp \fImemcached(1)\fP \fIlibmemcached(3)\fP \fImemcached_strerror(3)\fP .SH AUTHOR diff --git a/docs/man/memcached_behavior_get.3 b/docs/man/memcached_behavior_get.3 index 35e17b3d..9b39d56d 100644 --- a/docs/man/memcached_behavior_get.3 +++ b/docs/man/memcached_behavior_get.3 @@ -35,25 +35,20 @@ Manipulate behavior .SH LIBRARY .sp C Client Library for memcached (libmemcached, \-lmemcached) -.SS SYNOPSIS +.SH SYNOPSIS .sp -.nf -.ft C #include - -uint64_t - memcached_behavior_get (memcached_st *ptr, - memcached_behavior flag); - -memcached_return_t - memcached_behavior_set (memcached_st *ptr, - memcached_behavior flag, - uint64_t data); -.ft P -.fi -.SS DESCRIPTION -.sp -libmemcached(3) behavior can be modified by use memcached_behavior_set(). +.INDENT 0.0 +.TP +.B uint64_t memcached_behavior_get (memcached_st *ptr, memcached_behavior flag); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_behavior_set (memcached_st *ptr, memcached_behavior flag, uint64_t data); +.UNINDENT +.SH DESCRIPTION +.sp +\fIlibmemcached(3)\fP behavior can be modified by use memcached_behavior_set(). Default behavior is the library strives to be quick and accurate. Some behavior, while being faster, can also result in not entirely accurate behavior (for instance, memcached_set() will always respond with @@ -66,12 +61,12 @@ memcached_behavior_set() changes the value of a particular option of the client. It takes both a flag (listed below) and a value. For simple on or off options you just need to pass in a value of 1. Calls to memcached_behavior_set() will flush and reset all connections. -.sp -MEMCACHED_BEHAVIOR_USE_UDP .INDENT 0.0 -.INDENT 3.5 +.TP +.B MEMCACHED_BEHAVIOR_USE_UDP +.UNINDENT .sp -Causes libmemcached(3) to use the UDP transport when communicating +Causes \fIlibmemcached(3)\fP to use the UDP transport when communicating with a memcached server. Not all I/O operations are testsed when this behavior is enababled. The following operations will return \fBMEMCACHED_NOT_SUPPORTED\fP when executed with the MEMCACHED_BEHAVIOR_USE_UDP @@ -84,362 +79,236 @@ mode, in which once the client has executed the operation, no attempt will be made to ensure the operation has been received and acted on by the server. .sp -libmemcached(3) does not allow TCP and UDP servers to be shared within +\fIlibmemcached(3)\fP does not allow TCP and UDP servers to be shared within the same libmemached(3) client \(aqinstance\(aq. An attempt to add a TCP server when this behavior is enabled will result in a \fBMEMCACHED_INVALID_HOST_PROTOCOL\fP, as will attempting to add a UDP server when this behavior has not been enabled. -.UNINDENT -.UNINDENT -.sp -MEMCACHED_BEHAVIOR_NO_BLOCK .INDENT 0.0 -.INDENT 3.5 -.sp -Causes libmemcached(3) to use asychronous IO. This is the fastest transport -available for storage functions. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_NO_BLOCK .UNINDENT .sp -MEMCACHED_BEHAVIOR_SND_TIMEOUT +Causes \fIlibmemcached(3)\fP to use asychronous IO. This is the fastest transport +available for storage functions. .INDENT 0.0 -.INDENT 3.5 -.sp -This sets the microsecond behavior of the socket against the SO_SNDTIMEO flag. -In cases where you cannot use non\-blocking IO this will allow you to still have -timeouts on the sending of data. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_SND_TIMEOUT .UNINDENT .sp -MEMCACHED_BEHAVIOR_RCV_TIMEOUT +This sets the microsecond behavior of the socket against the SO_SNDTIMEO flag. In cases where you cannot use non\-blocking IO this will allow you to still have timeouts on the sending of data. .INDENT 0.0 -.INDENT 3.5 +.TP +.B MEMCACHED_BEHAVIOR_RCV_TIMEOUT +.UNINDENT .sp This sets the microsecond behavior of the socket against the SO_RCVTIMEO flag. -In cases where you cannot use non\-blocking IO this will allow you to still have -timeouts on the reading of data. -.UNINDENT -.UNINDENT .sp -MEMCACHED_BEHAVIOR_TCP_NODELAY +In cases where you cannot use non\-blocking IO this will allow you to still have timeouts on the reading of data. .INDENT 0.0 -.INDENT 3.5 +.TP +.B MEMCACHED_BEHAVIOR_TCP_NODELAY +.UNINDENT .sp Turns on the no\-delay feature for connecting sockets (may be faster in some environments). -.UNINDENT +.INDENT 0.0 +.TP +.B MEMCACHED_BEHAVIOR_HASH .UNINDENT .sp -MEMCACHED_BEHAVIOR_HASH -.INDENT 0.0 -.INDENT 3.5 +Makes the default hashing algorithm for keys use MD5. The value can be set to either MEMCACHED_HASH_DEFAULT, MEMCACHED_HASH_MD5, MEMCACHED_HASH_CRC, MEMCACHED_HASH_FNV1_64, MEMCACHED_HASH_FNV1A_64, MEMCACHED_HASH_FNV1_32, MEMCACHED_HASH_FNV1A_32, MEMCACHED_HASH_JENKINS, MEMCACHED_HASH_HSIEH, and MEMCACHED_HASH_MURMUR. .sp -Makes the default hashing algorithm for keys use MD5. The value can be set -to either MEMCACHED_HASH_DEFAULT, MEMCACHED_HASH_MD5, MEMCACHED_HASH_CRC, MEMCACHED_HASH_FNV1_64, MEMCACHED_HASH_FNV1A_64, MEMCACHED_HASH_FNV1_32, MEMCACHED_HASH_FNV1A_32, MEMCACHED_HASH_JENKINS, MEMCACHED_HASH_HSIEH, and MEMCACHED_HASH_MURMUR. Each hash has it\(aqs advantages and it\(aqs weaknesses. If you don\(aqt know or don\(aqt care, just go with the default. -Support for MEMCACHED_HASH_HSIEH is a compile time option that is disabled by default. To enable tests for this hashing algorithm, configure and build libmemcached with the \-\-enable\-hash_hsieh. -.UNINDENT -.UNINDENT .sp -MEMCACHED_BEHAVIOR_DISTRIBUTION +Support for MEMCACHED_HASH_HSIEH is a compile time option that is disabled by default. To enable tests for this hashing algorithm, configure and build libmemcached with the \-\-enable\-hash_hsieh. .INDENT 0.0 -.INDENT 3.5 +.TP +.B MEMCACHED_BEHAVIOR_DISTRIBUTION +.UNINDENT .sp Using this you can enable different means of distributing values to servers. -The default method is MEMCACHED_DISTRIBUTION_MODULA. You can enable -consistent hashing by setting MEMCACHED_DISTRIBUTION_CONSISTENT. -Consistent hashing delivers better distribution and allows servers to be -added to the cluster with minimal cache losses. Currently -MEMCACHED_DISTRIBUTION_CONSISTENT is an alias for the value -MEMCACHED_DISTRIBUTION_CONSISTENT_KETAMA. -.UNINDENT -.UNINDENT .sp -MEMCACHED_BEHAVIOR_CACHE_LOOKUPS +The default method is MEMCACHED_DISTRIBUTION_MODULA. You can enable consistent hashing by setting MEMCACHED_DISTRIBUTION_CONSISTENT. Consistent hashing delivers better distribution and allows servers to be added to the cluster with minimal cache losses. Currently MEMCACHED_DISTRIBUTION_CONSISTENT is an alias for the value MEMCACHED_DISTRIBUTION_CONSISTENT_KETAMA. .INDENT 0.0 -.INDENT 3.5 -.sp -Memcached can cache named lookups so that DNS lookups are made only once. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_CACHE_LOOKUPS .UNINDENT .sp -MEMCACHED_BEHAVIOR_SUPPORT_CAS +DEPRECATED. Memcached can cache named lookups so that DNS lookups are made only once. .INDENT 0.0 -.INDENT 3.5 -.sp -Support CAS operations (this is not enabled by default at this point in the server since it imposes a slight performance penalty). -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_SUPPORT_CAS .UNINDENT .sp -MEMCACHED_BEHAVIOR_KETAMA +Support CAS operations (this is not enabled by default at this point in the server since it imposes a slight performance penalty). .INDENT 0.0 -.INDENT 3.5 -.sp -Sets the default distribution to MEMCACHED_DISTRIBUTION_CONSISTENT_KETAMA -and the hash to MEMCACHED_HASH_MD5. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_KETAMA .UNINDENT .sp -MEMCACHED_BEHAVIOR_KETAMA_WEIGHTED +Sets the default distribution to MEMCACHED_DISTRIBUTION_CONSISTENT_KETAMA and the hash to MEMCACHED_HASH_MD5. .INDENT 0.0 -.INDENT 3.5 -.sp -Sets the default distribution to MEMCACHED_DISTRIBUTION_CONSISTENT_KETAMA with the weighted tests. -and the hash to MEMCACHED_HASH_MD5. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_KETAMA_WEIGHTED .UNINDENT .sp -MEMCACHED_BEHAVIOR_KETAMA_HASH +Sets the default distribution to MEMCACHED_DISTRIBUTION_CONSISTENT_KETAMA with the weighted tests. and the hash to MEMCACHED_HASH_MD5. .INDENT 0.0 -.INDENT 3.5 -.sp -Sets the hashing algorithm for host mapping on continuum. The value can be set -to either MEMCACHED_HASH_DEFAULT, MEMCACHED_HASH_MD5, MEMCACHED_HASH_CRC, MEMCACHED_HASH_FNV1_64, MEMCACHED_HASH_FNV1A_64, MEMCACHED_HASH_FNV1_32, and MEMCACHED_HASH_FNV1A_32. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_KETAMA_HASH .UNINDENT .sp -MEMCACHED_BEHAVIOR_KETAMA_COMPAT +Sets the hashing algorithm for host mapping on continuum. The value can be set to either MEMCACHED_HASH_DEFAULT, MEMCACHED_HASH_MD5, MEMCACHED_HASH_CRC, MEMCACHED_HASH_FNV1_64, MEMCACHED_HASH_FNV1A_64, MEMCACHED_HASH_FNV1_32, and MEMCACHED_HASH_FNV1A_32. .INDENT 0.0 -.INDENT 3.5 -.sp -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. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_KETAMA_COMPAT .UNINDENT .sp -MEMCACHED_BEHAVIOR_POLL_TIMEOUT +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. .INDENT 0.0 -.INDENT 3.5 -.sp -Modify the timeout value that is used by poll(). The default value is \-1. An signed int pointer must be passed to memcached_behavior_set() to change this value. For memcached_behavior_get() a signed int value will be cast and returned as the unsigned long long. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_POLL_TIMEOUT .UNINDENT .sp -MEMCACHED_BEHAVIOR_USER_DATA +Modify the timeout value that is used by poll(). The default value is \-1. An signed int pointer must be passed to memcached_behavior_set() to change this value. For memcached_behavior_get() a signed int value will be cast and returned as the unsigned long long. .INDENT 0.0 -.INDENT 3.5 -.sp -This allows you to store a pointer to a specifc piece of data. This can be -retrieved from inside of memcached_fetch_execute(). Cloning a memcached_st -.sp -will copy the pointer to the clone. This was deprecated in 0.14 in favor -of memcached_callback_set(3). This will be removed in 0.15. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_USER_DATA .UNINDENT .sp -MEMCACHED_BEHAVIOR_BUFFER_REQUESTS +DEPRECATED .INDENT 0.0 -.INDENT 3.5 -.sp -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. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_BUFFER_REQUESTS .UNINDENT .sp -MEMCACHED_BEHAVIOR_VERIFY_KEY +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. .INDENT 0.0 -.INDENT 3.5 -.sp -Enabling this will cause libmemcached(3) to test all keys to verify that they -are valid keys. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_VERIFY_KEY .UNINDENT .sp -MEMCACHED_BEHAVIOR_SORT_HOSTS +Enabling this will cause \fIlibmemcached(3)\fP to test all keys to verify that they are valid keys. .INDENT 0.0 -.INDENT 3.5 -.sp -Enabling this will cause hosts that are added to be placed in the host list in -sorted order. This will defeat consisten hashing. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_SORT_HOSTS .UNINDENT .sp -MEMCACHED_BEHAVIOR_CONNECT_TIMEOUT +Enabling this will cause hosts that are added to be placed in the host list in sorted order. This will defeat consisten hashing. .INDENT 0.0 -.INDENT 3.5 -.sp -In non\-blocking mode this changes the value of the timeout during socket -connection. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_CONNECT_TIMEOUT .UNINDENT .sp -MEMCACHED_BEHAVIOR_BINARY_PROTOCOL +In non\-blocking mode this changes the value of the timeout during socket connection. .INDENT 0.0 -.INDENT 3.5 -.sp -Enable the use of the binary protocol. Please note that you cannot toggle -this flag on an open connection. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_BINARY_PROTOCOL .UNINDENT .sp -MEMCACHED_BEHAVIOR_SERVER_FAILURE_LIMIT +Enable the use of the binary protocol. Please note that you cannot toggle this flag on an open connection. .INDENT 0.0 -.INDENT 3.5 -.sp -Set this value to enable the server be removed after continuous MEMCACHED_BEHAVIOR_SERVER_FAILURE_LIMIT -times connection failure. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_SERVER_FAILURE_LIMIT .UNINDENT .sp -MEMCACHED_BEHAVIOR_IO_MSG_WATERMARK +Set this value to enable the server be removed after continuous MEMCACHED_BEHAVIOR_SERVER_FAILURE_LIMIT times connection failure. .INDENT 0.0 -.INDENT 3.5 -.sp -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). -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_IO_MSG_WATERMARK .UNINDENT .sp -MEMCACHED_BEHAVIOR_IO_BYTES_WATERMARK +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). .INDENT 0.0 -.INDENT 3.5 -.sp -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). -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_IO_BYTES_WATERMARK .UNINDENT .sp -MEMCACHED_BEHAVIOR_IO_KEY_PREFETCH +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). .INDENT 0.0 -.INDENT 3.5 -.sp -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. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_IO_KEY_PREFETCH .UNINDENT .sp -MEMCACHED_BEHAVIOR_NOREPLY +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. .INDENT 0.0 -.INDENT 3.5 -.sp -Set this value to specify that you really don\(aqt care about the result -from your storage commands (set, add, replace, append, prepend). -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_NOREPLY .UNINDENT .sp -MEMCACHED_BEHAVIOR_NUMBER_OF_REPLICAS +Set this value to specify that you really don\(aqt care about the result from your storage commands (set, add, replace, append, prepend). .INDENT 0.0 -.INDENT 3.5 -.sp -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 \(aqn\(aq next servers specified in your server list). -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_NUMBER_OF_REPLICAS .UNINDENT .sp -MEMCACHED_BEHAVIOR_RANDOMIZE_REPLICA_READ +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 \(aqn\(aq next servers specified in your server list). .INDENT 0.0 -.INDENT 3.5 -.sp -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 \(aqn\(aq 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. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_RANDOMIZE_REPLICA_READ .UNINDENT .sp -MEMCACHED_BEHAVIOR_CORK +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 \(aqn\(aq 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. .INDENT 0.0 -.INDENT 3.5 -.sp -Enable TCP_CORK behavior. This is only available as an option Linux. -MEMCACHED_NO_SERVERS is returned if no servers are available to test with. -MEMCACHED_NOT_SUPPORTED is returned if we were not able to determine -if tests was available. All other responses then MEMCACHED_SUCCESS -report an error of some sort. This behavior also enables -MEMCACHED_BEHAVIOR_TCP_NODELAY when set. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_CORK .UNINDENT .sp -MEMCACHED_BEHAVIOR_KEEPALIVE +This open has been deprecated with the behavior now built and used appropriately on selected platforms. .INDENT 0.0 -.INDENT 3.5 -.sp -Enable TCP_KEEPALIVE behavior. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_KEEPALIVE .UNINDENT .sp -MEMCACHED_BEHAVIOR_KEEPALIVE_IDLE +Enable TCP_KEEPALIVE behavior. .INDENT 0.0 -.INDENT 3.5 +.TP +.B MEMCACHED_BEHAVIOR_KEEPALIVE_IDLE +.UNINDENT .sp Specify time, in seconds, to mark a connection as idle. This is only available as an option Linux. -.UNINDENT +.INDENT 0.0 +.TP +.B MEMCACHED_BEHAVIOR_SOCKET_SEND_SIZE .UNINDENT .sp -MEMCACHED_BEHAVIOR_SOCKET_SEND_SIZE +Find the current size of SO_SNDBUF. A value of 0 means either an error occured 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. .INDENT 0.0 -.INDENT 3.5 -.sp -Find the current size of SO_SNDBUF. A value of 0 means either an error -occured 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. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_SOCKET_RECV_SIZE .UNINDENT .sp -MEMCACHED_BEHAVIOR_SOCKET_RECV_SIZE +Find the current size of SO_RCVBUF. A value of 0 means either an error occured 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. .INDENT 0.0 -.INDENT 3.5 -.sp -Find the current size of SO_RCVBUF. A value of 0 means either an error -occured 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. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_SERVER_FAILURE_LIMIT .UNINDENT .sp -MEMCACHED_BEHAVIOR_SERVER_FAILURE_LIMIT +DEPRECATED, please see MEMCACHED_BEHAVIOR_REMOVE_FAILED_SERVERS. This number of times a host can have an error before it is disabled. .INDENT 0.0 -.INDENT 3.5 -.sp -This number of times a host can have an error before it is disabled. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_AUTO_EJECT_HOSTS .UNINDENT .sp -MEMCACHED_BEHAVIOR_AUTO_EJECT_HOSTS +DEPRECATED, please see MEMCACHED_BEHAVIOR_REMOVE_FAILED_SERVERS. 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. .INDENT 0.0 -.INDENT 3.5 -.sp -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. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_REMOVE_FAILED_SERVERS .UNINDENT .sp -MEMCACHED_BEHAVIOR_RETRY_TIMEOUT +If enabled any hosts which have been flagged as disabled will be removed from the list of servers in the memcached_st structure. .INDENT 0.0 -.INDENT 3.5 -.sp -When enabled a host which is problematic will only be checked for usage -based on the amount of time set by this behavior. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_RETRY_TIMEOUT .UNINDENT .sp -MEMCACHED_BEHAVIOR_HASH_WITH_PREFIX_KEY +When enabled a host which is problematic will only be checked for usage based on the amount of time set by this behavior. .INDENT 0.0 -.INDENT 3.5 -.sp -When enabled the prefix key will be added to the key when determining -server by hash. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_HASH_WITH_PREFIX_KEY .UNINDENT +.sp +When enabled the prefix key will be added to the key when determining server by hash. .SH RETURN .sp memcached_behavior_get() returns either the current value of the get, or 0 @@ -453,10 +322,7 @@ to data value, to taking a uin64_t. .sp To find out more information please check: \fI\%https://launchpad.net/libmemcached\fP -.SH AUTHOR -.sp -Brian Aker, <\fI\%brian@tangent.org\fP> -.SS SEE ALSO +.SH SEE ALSO .sp \fImemcached(1)\fP \fIlibmemcached(3)\fP \fImemcached_strerror(3)\fP .SH AUTHOR diff --git a/docs/man/memcached_behavior_set.3 b/docs/man/memcached_behavior_set.3 index 2269f6e9..57574fa1 100644 --- a/docs/man/memcached_behavior_set.3 +++ b/docs/man/memcached_behavior_set.3 @@ -35,25 +35,20 @@ Manipulate behavior .SH LIBRARY .sp C Client Library for memcached (libmemcached, \-lmemcached) -.SS SYNOPSIS +.SH SYNOPSIS .sp -.nf -.ft C #include - -uint64_t - memcached_behavior_get (memcached_st *ptr, - memcached_behavior flag); - -memcached_return_t - memcached_behavior_set (memcached_st *ptr, - memcached_behavior flag, - uint64_t data); -.ft P -.fi -.SS DESCRIPTION -.sp -libmemcached(3) behavior can be modified by use memcached_behavior_set(). +.INDENT 0.0 +.TP +.B uint64_t memcached_behavior_get (memcached_st *ptr, memcached_behavior flag); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_behavior_set (memcached_st *ptr, memcached_behavior flag, uint64_t data); +.UNINDENT +.SH DESCRIPTION +.sp +\fIlibmemcached(3)\fP behavior can be modified by use memcached_behavior_set(). Default behavior is the library strives to be quick and accurate. Some behavior, while being faster, can also result in not entirely accurate behavior (for instance, memcached_set() will always respond with @@ -66,12 +61,12 @@ memcached_behavior_set() changes the value of a particular option of the client. It takes both a flag (listed below) and a value. For simple on or off options you just need to pass in a value of 1. Calls to memcached_behavior_set() will flush and reset all connections. -.sp -MEMCACHED_BEHAVIOR_USE_UDP .INDENT 0.0 -.INDENT 3.5 +.TP +.B MEMCACHED_BEHAVIOR_USE_UDP +.UNINDENT .sp -Causes libmemcached(3) to use the UDP transport when communicating +Causes \fIlibmemcached(3)\fP to use the UDP transport when communicating with a memcached server. Not all I/O operations are testsed when this behavior is enababled. The following operations will return \fBMEMCACHED_NOT_SUPPORTED\fP when executed with the MEMCACHED_BEHAVIOR_USE_UDP @@ -84,362 +79,236 @@ mode, in which once the client has executed the operation, no attempt will be made to ensure the operation has been received and acted on by the server. .sp -libmemcached(3) does not allow TCP and UDP servers to be shared within +\fIlibmemcached(3)\fP does not allow TCP and UDP servers to be shared within the same libmemached(3) client \(aqinstance\(aq. An attempt to add a TCP server when this behavior is enabled will result in a \fBMEMCACHED_INVALID_HOST_PROTOCOL\fP, as will attempting to add a UDP server when this behavior has not been enabled. -.UNINDENT -.UNINDENT -.sp -MEMCACHED_BEHAVIOR_NO_BLOCK .INDENT 0.0 -.INDENT 3.5 -.sp -Causes libmemcached(3) to use asychronous IO. This is the fastest transport -available for storage functions. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_NO_BLOCK .UNINDENT .sp -MEMCACHED_BEHAVIOR_SND_TIMEOUT +Causes \fIlibmemcached(3)\fP to use asychronous IO. This is the fastest transport +available for storage functions. .INDENT 0.0 -.INDENT 3.5 -.sp -This sets the microsecond behavior of the socket against the SO_SNDTIMEO flag. -In cases where you cannot use non\-blocking IO this will allow you to still have -timeouts on the sending of data. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_SND_TIMEOUT .UNINDENT .sp -MEMCACHED_BEHAVIOR_RCV_TIMEOUT +This sets the microsecond behavior of the socket against the SO_SNDTIMEO flag. In cases where you cannot use non\-blocking IO this will allow you to still have timeouts on the sending of data. .INDENT 0.0 -.INDENT 3.5 +.TP +.B MEMCACHED_BEHAVIOR_RCV_TIMEOUT +.UNINDENT .sp This sets the microsecond behavior of the socket against the SO_RCVTIMEO flag. -In cases where you cannot use non\-blocking IO this will allow you to still have -timeouts on the reading of data. -.UNINDENT -.UNINDENT .sp -MEMCACHED_BEHAVIOR_TCP_NODELAY +In cases where you cannot use non\-blocking IO this will allow you to still have timeouts on the reading of data. .INDENT 0.0 -.INDENT 3.5 +.TP +.B MEMCACHED_BEHAVIOR_TCP_NODELAY +.UNINDENT .sp Turns on the no\-delay feature for connecting sockets (may be faster in some environments). -.UNINDENT +.INDENT 0.0 +.TP +.B MEMCACHED_BEHAVIOR_HASH .UNINDENT .sp -MEMCACHED_BEHAVIOR_HASH -.INDENT 0.0 -.INDENT 3.5 +Makes the default hashing algorithm for keys use MD5. The value can be set to either MEMCACHED_HASH_DEFAULT, MEMCACHED_HASH_MD5, MEMCACHED_HASH_CRC, MEMCACHED_HASH_FNV1_64, MEMCACHED_HASH_FNV1A_64, MEMCACHED_HASH_FNV1_32, MEMCACHED_HASH_FNV1A_32, MEMCACHED_HASH_JENKINS, MEMCACHED_HASH_HSIEH, and MEMCACHED_HASH_MURMUR. .sp -Makes the default hashing algorithm for keys use MD5. The value can be set -to either MEMCACHED_HASH_DEFAULT, MEMCACHED_HASH_MD5, MEMCACHED_HASH_CRC, MEMCACHED_HASH_FNV1_64, MEMCACHED_HASH_FNV1A_64, MEMCACHED_HASH_FNV1_32, MEMCACHED_HASH_FNV1A_32, MEMCACHED_HASH_JENKINS, MEMCACHED_HASH_HSIEH, and MEMCACHED_HASH_MURMUR. Each hash has it\(aqs advantages and it\(aqs weaknesses. If you don\(aqt know or don\(aqt care, just go with the default. -Support for MEMCACHED_HASH_HSIEH is a compile time option that is disabled by default. To enable tests for this hashing algorithm, configure and build libmemcached with the \-\-enable\-hash_hsieh. -.UNINDENT -.UNINDENT .sp -MEMCACHED_BEHAVIOR_DISTRIBUTION +Support for MEMCACHED_HASH_HSIEH is a compile time option that is disabled by default. To enable tests for this hashing algorithm, configure and build libmemcached with the \-\-enable\-hash_hsieh. .INDENT 0.0 -.INDENT 3.5 +.TP +.B MEMCACHED_BEHAVIOR_DISTRIBUTION +.UNINDENT .sp Using this you can enable different means of distributing values to servers. -The default method is MEMCACHED_DISTRIBUTION_MODULA. You can enable -consistent hashing by setting MEMCACHED_DISTRIBUTION_CONSISTENT. -Consistent hashing delivers better distribution and allows servers to be -added to the cluster with minimal cache losses. Currently -MEMCACHED_DISTRIBUTION_CONSISTENT is an alias for the value -MEMCACHED_DISTRIBUTION_CONSISTENT_KETAMA. -.UNINDENT -.UNINDENT .sp -MEMCACHED_BEHAVIOR_CACHE_LOOKUPS +The default method is MEMCACHED_DISTRIBUTION_MODULA. You can enable consistent hashing by setting MEMCACHED_DISTRIBUTION_CONSISTENT. Consistent hashing delivers better distribution and allows servers to be added to the cluster with minimal cache losses. Currently MEMCACHED_DISTRIBUTION_CONSISTENT is an alias for the value MEMCACHED_DISTRIBUTION_CONSISTENT_KETAMA. .INDENT 0.0 -.INDENT 3.5 -.sp -Memcached can cache named lookups so that DNS lookups are made only once. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_CACHE_LOOKUPS .UNINDENT .sp -MEMCACHED_BEHAVIOR_SUPPORT_CAS +DEPRECATED. Memcached can cache named lookups so that DNS lookups are made only once. .INDENT 0.0 -.INDENT 3.5 -.sp -Support CAS operations (this is not enabled by default at this point in the server since it imposes a slight performance penalty). -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_SUPPORT_CAS .UNINDENT .sp -MEMCACHED_BEHAVIOR_KETAMA +Support CAS operations (this is not enabled by default at this point in the server since it imposes a slight performance penalty). .INDENT 0.0 -.INDENT 3.5 -.sp -Sets the default distribution to MEMCACHED_DISTRIBUTION_CONSISTENT_KETAMA -and the hash to MEMCACHED_HASH_MD5. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_KETAMA .UNINDENT .sp -MEMCACHED_BEHAVIOR_KETAMA_WEIGHTED +Sets the default distribution to MEMCACHED_DISTRIBUTION_CONSISTENT_KETAMA and the hash to MEMCACHED_HASH_MD5. .INDENT 0.0 -.INDENT 3.5 -.sp -Sets the default distribution to MEMCACHED_DISTRIBUTION_CONSISTENT_KETAMA with the weighted tests. -and the hash to MEMCACHED_HASH_MD5. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_KETAMA_WEIGHTED .UNINDENT .sp -MEMCACHED_BEHAVIOR_KETAMA_HASH +Sets the default distribution to MEMCACHED_DISTRIBUTION_CONSISTENT_KETAMA with the weighted tests. and the hash to MEMCACHED_HASH_MD5. .INDENT 0.0 -.INDENT 3.5 -.sp -Sets the hashing algorithm for host mapping on continuum. The value can be set -to either MEMCACHED_HASH_DEFAULT, MEMCACHED_HASH_MD5, MEMCACHED_HASH_CRC, MEMCACHED_HASH_FNV1_64, MEMCACHED_HASH_FNV1A_64, MEMCACHED_HASH_FNV1_32, and MEMCACHED_HASH_FNV1A_32. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_KETAMA_HASH .UNINDENT .sp -MEMCACHED_BEHAVIOR_KETAMA_COMPAT +Sets the hashing algorithm for host mapping on continuum. The value can be set to either MEMCACHED_HASH_DEFAULT, MEMCACHED_HASH_MD5, MEMCACHED_HASH_CRC, MEMCACHED_HASH_FNV1_64, MEMCACHED_HASH_FNV1A_64, MEMCACHED_HASH_FNV1_32, and MEMCACHED_HASH_FNV1A_32. .INDENT 0.0 -.INDENT 3.5 -.sp -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. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_KETAMA_COMPAT .UNINDENT .sp -MEMCACHED_BEHAVIOR_POLL_TIMEOUT +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. .INDENT 0.0 -.INDENT 3.5 -.sp -Modify the timeout value that is used by poll(). The default value is \-1. An signed int pointer must be passed to memcached_behavior_set() to change this value. For memcached_behavior_get() a signed int value will be cast and returned as the unsigned long long. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_POLL_TIMEOUT .UNINDENT .sp -MEMCACHED_BEHAVIOR_USER_DATA +Modify the timeout value that is used by poll(). The default value is \-1. An signed int pointer must be passed to memcached_behavior_set() to change this value. For memcached_behavior_get() a signed int value will be cast and returned as the unsigned long long. .INDENT 0.0 -.INDENT 3.5 -.sp -This allows you to store a pointer to a specifc piece of data. This can be -retrieved from inside of memcached_fetch_execute(). Cloning a memcached_st -.sp -will copy the pointer to the clone. This was deprecated in 0.14 in favor -of memcached_callback_set(3). This will be removed in 0.15. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_USER_DATA .UNINDENT .sp -MEMCACHED_BEHAVIOR_BUFFER_REQUESTS +DEPRECATED .INDENT 0.0 -.INDENT 3.5 -.sp -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. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_BUFFER_REQUESTS .UNINDENT .sp -MEMCACHED_BEHAVIOR_VERIFY_KEY +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. .INDENT 0.0 -.INDENT 3.5 -.sp -Enabling this will cause libmemcached(3) to test all keys to verify that they -are valid keys. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_VERIFY_KEY .UNINDENT .sp -MEMCACHED_BEHAVIOR_SORT_HOSTS +Enabling this will cause \fIlibmemcached(3)\fP to test all keys to verify that they are valid keys. .INDENT 0.0 -.INDENT 3.5 -.sp -Enabling this will cause hosts that are added to be placed in the host list in -sorted order. This will defeat consisten hashing. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_SORT_HOSTS .UNINDENT .sp -MEMCACHED_BEHAVIOR_CONNECT_TIMEOUT +Enabling this will cause hosts that are added to be placed in the host list in sorted order. This will defeat consisten hashing. .INDENT 0.0 -.INDENT 3.5 -.sp -In non\-blocking mode this changes the value of the timeout during socket -connection. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_CONNECT_TIMEOUT .UNINDENT .sp -MEMCACHED_BEHAVIOR_BINARY_PROTOCOL +In non\-blocking mode this changes the value of the timeout during socket connection. .INDENT 0.0 -.INDENT 3.5 -.sp -Enable the use of the binary protocol. Please note that you cannot toggle -this flag on an open connection. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_BINARY_PROTOCOL .UNINDENT .sp -MEMCACHED_BEHAVIOR_SERVER_FAILURE_LIMIT +Enable the use of the binary protocol. Please note that you cannot toggle this flag on an open connection. .INDENT 0.0 -.INDENT 3.5 -.sp -Set this value to enable the server be removed after continuous MEMCACHED_BEHAVIOR_SERVER_FAILURE_LIMIT -times connection failure. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_SERVER_FAILURE_LIMIT .UNINDENT .sp -MEMCACHED_BEHAVIOR_IO_MSG_WATERMARK +Set this value to enable the server be removed after continuous MEMCACHED_BEHAVIOR_SERVER_FAILURE_LIMIT times connection failure. .INDENT 0.0 -.INDENT 3.5 -.sp -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). -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_IO_MSG_WATERMARK .UNINDENT .sp -MEMCACHED_BEHAVIOR_IO_BYTES_WATERMARK +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). .INDENT 0.0 -.INDENT 3.5 -.sp -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). -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_IO_BYTES_WATERMARK .UNINDENT .sp -MEMCACHED_BEHAVIOR_IO_KEY_PREFETCH +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). .INDENT 0.0 -.INDENT 3.5 -.sp -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. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_IO_KEY_PREFETCH .UNINDENT .sp -MEMCACHED_BEHAVIOR_NOREPLY +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. .INDENT 0.0 -.INDENT 3.5 -.sp -Set this value to specify that you really don\(aqt care about the result -from your storage commands (set, add, replace, append, prepend). -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_NOREPLY .UNINDENT .sp -MEMCACHED_BEHAVIOR_NUMBER_OF_REPLICAS +Set this value to specify that you really don\(aqt care about the result from your storage commands (set, add, replace, append, prepend). .INDENT 0.0 -.INDENT 3.5 -.sp -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 \(aqn\(aq next servers specified in your server list). -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_NUMBER_OF_REPLICAS .UNINDENT .sp -MEMCACHED_BEHAVIOR_RANDOMIZE_REPLICA_READ +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 \(aqn\(aq next servers specified in your server list). .INDENT 0.0 -.INDENT 3.5 -.sp -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 \(aqn\(aq 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. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_RANDOMIZE_REPLICA_READ .UNINDENT .sp -MEMCACHED_BEHAVIOR_CORK +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 \(aqn\(aq 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. .INDENT 0.0 -.INDENT 3.5 -.sp -Enable TCP_CORK behavior. This is only available as an option Linux. -MEMCACHED_NO_SERVERS is returned if no servers are available to test with. -MEMCACHED_NOT_SUPPORTED is returned if we were not able to determine -if tests was available. All other responses then MEMCACHED_SUCCESS -report an error of some sort. This behavior also enables -MEMCACHED_BEHAVIOR_TCP_NODELAY when set. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_CORK .UNINDENT .sp -MEMCACHED_BEHAVIOR_KEEPALIVE +This open has been deprecated with the behavior now built and used appropriately on selected platforms. .INDENT 0.0 -.INDENT 3.5 -.sp -Enable TCP_KEEPALIVE behavior. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_KEEPALIVE .UNINDENT .sp -MEMCACHED_BEHAVIOR_KEEPALIVE_IDLE +Enable TCP_KEEPALIVE behavior. .INDENT 0.0 -.INDENT 3.5 +.TP +.B MEMCACHED_BEHAVIOR_KEEPALIVE_IDLE +.UNINDENT .sp Specify time, in seconds, to mark a connection as idle. This is only available as an option Linux. -.UNINDENT +.INDENT 0.0 +.TP +.B MEMCACHED_BEHAVIOR_SOCKET_SEND_SIZE .UNINDENT .sp -MEMCACHED_BEHAVIOR_SOCKET_SEND_SIZE +Find the current size of SO_SNDBUF. A value of 0 means either an error occured 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. .INDENT 0.0 -.INDENT 3.5 -.sp -Find the current size of SO_SNDBUF. A value of 0 means either an error -occured 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. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_SOCKET_RECV_SIZE .UNINDENT .sp -MEMCACHED_BEHAVIOR_SOCKET_RECV_SIZE +Find the current size of SO_RCVBUF. A value of 0 means either an error occured 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. .INDENT 0.0 -.INDENT 3.5 -.sp -Find the current size of SO_RCVBUF. A value of 0 means either an error -occured 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. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_SERVER_FAILURE_LIMIT .UNINDENT .sp -MEMCACHED_BEHAVIOR_SERVER_FAILURE_LIMIT +DEPRECATED, please see MEMCACHED_BEHAVIOR_REMOVE_FAILED_SERVERS. This number of times a host can have an error before it is disabled. .INDENT 0.0 -.INDENT 3.5 -.sp -This number of times a host can have an error before it is disabled. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_AUTO_EJECT_HOSTS .UNINDENT .sp -MEMCACHED_BEHAVIOR_AUTO_EJECT_HOSTS +DEPRECATED, please see MEMCACHED_BEHAVIOR_REMOVE_FAILED_SERVERS. 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. .INDENT 0.0 -.INDENT 3.5 -.sp -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. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_REMOVE_FAILED_SERVERS .UNINDENT .sp -MEMCACHED_BEHAVIOR_RETRY_TIMEOUT +If enabled any hosts which have been flagged as disabled will be removed from the list of servers in the memcached_st structure. .INDENT 0.0 -.INDENT 3.5 -.sp -When enabled a host which is problematic will only be checked for usage -based on the amount of time set by this behavior. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_RETRY_TIMEOUT .UNINDENT .sp -MEMCACHED_BEHAVIOR_HASH_WITH_PREFIX_KEY +When enabled a host which is problematic will only be checked for usage based on the amount of time set by this behavior. .INDENT 0.0 -.INDENT 3.5 -.sp -When enabled the prefix key will be added to the key when determining -server by hash. -.UNINDENT +.TP +.B MEMCACHED_BEHAVIOR_HASH_WITH_PREFIX_KEY .UNINDENT +.sp +When enabled the prefix key will be added to the key when determining server by hash. .SH RETURN .sp memcached_behavior_get() returns either the current value of the get, or 0 @@ -453,10 +322,7 @@ to data value, to taking a uin64_t. .sp To find out more information please check: \fI\%https://launchpad.net/libmemcached\fP -.SH AUTHOR -.sp -Brian Aker, <\fI\%brian@tangent.org\fP> -.SS SEE ALSO +.SH SEE ALSO .sp \fImemcached(1)\fP \fIlibmemcached(3)\fP \fImemcached_strerror(3)\fP .SH AUTHOR diff --git a/docs/man/memcached_cas.3 b/docs/man/memcached_cas.3 index 983b5caa..48d9ca3b 100644 --- a/docs/man/memcached_cas.3 +++ b/docs/man/memcached_cas.3 @@ -1,6 +1,6 @@ .TH "MEMCACHED_CAS" "3" "April 09, 2011" "0.47" "libmemcached" .SH NAME -memcached_cas \- libmemcached Documentation +memcached_cas \- Storing and Replacing Data . .nr rst2man-indent-level 0 . @@ -32,107 +32,59 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] . .sp Store value on server -.SH LIBRARY -.sp -C Client Library for memcached (libmemcached, \-lmemcached) .SH SYNOPSIS .sp -.nf -.ft C #include - -memcached_return_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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); -.ft P -.fi +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_prepend(memcached_st\fI\ *ptr\fP, const char\fI\ *key\fP, size_t\fI\ key_length\fP, const char\fI\ *value\fP, size_t\fI\ value_length\fP, time_t\fI\ expiration\fP, uint32_t\fI\ flags\fP) +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_append(memcached_st\fI\ *ptr\fP, const char\fI\ *key\fP, size_t\fI\ key_length\fP, const char\fI\ *value\fP, size_t\fI\ value_length\fP, time_t\fI\ expiration\fP, uint32_t\fI\ flags\fP) +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.sp +Compile and link with \-lmemcached .SH DESCRIPTION .sp memcached_set(), memcached_add(), and memcached_replace() are all used to diff --git a/docs/man/memcached_cas_by_key.3 b/docs/man/memcached_cas_by_key.3 index 2c2b06c4..c7288165 100644 --- a/docs/man/memcached_cas_by_key.3 +++ b/docs/man/memcached_cas_by_key.3 @@ -1,6 +1,6 @@ .TH "MEMCACHED_CAS_BY_KEY" "3" "April 09, 2011" "0.47" "libmemcached" .SH NAME -memcached_cas_by_key \- libmemcached Documentation +memcached_cas_by_key \- Storing and Replacing Data . .nr rst2man-indent-level 0 . @@ -32,107 +32,59 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] . .sp Store value on server -.SH LIBRARY -.sp -C Client Library for memcached (libmemcached, \-lmemcached) .SH SYNOPSIS .sp -.nf -.ft C #include - -memcached_return_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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); -.ft P -.fi +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_prepend(memcached_st\fI\ *ptr\fP, const char\fI\ *key\fP, size_t\fI\ key_length\fP, const char\fI\ *value\fP, size_t\fI\ value_length\fP, time_t\fI\ expiration\fP, uint32_t\fI\ flags\fP) +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_append(memcached_st\fI\ *ptr\fP, const char\fI\ *key\fP, size_t\fI\ key_length\fP, const char\fI\ *value\fP, size_t\fI\ value_length\fP, time_t\fI\ expiration\fP, uint32_t\fI\ flags\fP) +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.sp +Compile and link with \-lmemcached .SH DESCRIPTION .sp memcached_set(), memcached_add(), and memcached_replace() are all used to diff --git a/docs/man/memcached_clone.3 b/docs/man/memcached_clone.3 index fe2abebf..81e28c97 100644 --- a/docs/man/memcached_clone.3 +++ b/docs/man/memcached_clone.3 @@ -32,9 +32,6 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] . .sp Create a memcached_st structure -.SH LIBRARY -.sp -C Client Library for memcached (libmemcached, \-lmemcached) .SH SYNOPSIS .sp #include @@ -54,6 +51,8 @@ C Client Library for memcached (libmemcached, \-lmemcached) .TP .B void memcached_servers_reset(memcached_st); .UNINDENT +.sp +Compile and link with \-lmemcached .SH DESCRIPTION .sp memcached_create() is used to create a \fBmemcached_st\fP structure that will then diff --git a/docs/man/memcached_create.3 b/docs/man/memcached_create.3 index edcbbd95..8aaf2efe 100644 --- a/docs/man/memcached_create.3 +++ b/docs/man/memcached_create.3 @@ -32,9 +32,6 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] . .sp Create a memcached_st structure -.SH LIBRARY -.sp -C Client Library for memcached (libmemcached, \-lmemcached) .SH SYNOPSIS .sp #include @@ -54,6 +51,8 @@ C Client Library for memcached (libmemcached, \-lmemcached) .TP .B void memcached_servers_reset(memcached_st); .UNINDENT +.sp +Compile and link with \-lmemcached .SH DESCRIPTION .sp memcached_create() is used to create a \fBmemcached_st\fP structure that will then diff --git a/docs/man/memcached_decrement.3 b/docs/man/memcached_decrement.3 index 3d1d9dc2..e6b8b69d 100644 --- a/docs/man/memcached_decrement.3 +++ b/docs/man/memcached_decrement.3 @@ -1,6 +1,6 @@ .TH "MEMCACHED_DECREMENT" "3" "April 09, 2011" "0.47" "libmemcached" .SH NAME -memcached_decrement \- libmemcached Documentation +memcached_decrement \- Incrementing and Decrementing Values . .nr rst2man-indent-level 0 . @@ -30,87 +30,46 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] .. .\" Man page generated from reStructeredText. . +.SH SYNOPSIS .sp -Manipulate counters -.SH LIBRARY -.sp -C Client Library for memcached (libmemcached, \-lmemcached) -.SS SYNOPSIS -.sp -.nf -.ft C #include - -memcached_return_t - memcached_increment (memcached_st *ptr, - const char *key, size_t key_length, - unsigned int offset, - uint64_t *value); - -memcached_return_t - memcached_decrement (memcached_st *ptr, - const char *key, size_t key_length, - unsigned int offset, - uint64_t *value); - -memcached_return_t - memcached_increment_with_initial (memcached_st *ptr, - const char *key, - size_t key_length, - uint64_t offset, - uint64_t initial, - time_t expiration, - uint64_t *value); - -memcached_return_t - memcached_decrement_with_initial (memcached_st *ptr, - const char *key, - size_t key_length, - uint64_t offset, - uint64_t initial, - time_t expiration, - uint64_t *value); - -memcached_return_t - memcached_increment_by_key (memcached_st *ptr, - const char *master_key, size_t master_key_length, - const char *key, size_t key_length, - unsigned int offset, - uint64_t *value); - -memcached_return_t - memcached_decrement_by_key (memcached_st *ptr, - const char *master_key, size_t master_key_length, - const char *key, size_t key_length, - unsigned int offset, - uint64_t *value); - -memcached_return_t - memcached_increment_with_initial_by_key (memcached_st *ptr, - const char *master_key, - size_t master_key_length, - const char *key, - size_t key_length, - uint64_t offset, - uint64_t initial, - time_t expiration, - uint64_t *value); - -memcached_return_t - memcached_decrement_with_initial_by_key (memcached_st *ptr, - const char *master_key, - size_t master_key_length, - const char *key, - size_t key_length, - uint64_t offset, - uint64_t initial, - time_t expiration, - uint64_t *value); -.ft P -.fi -.SS DESCRIPTION +.INDENT 0.0 +.TP +.B memcached_return_t memcached_increment (memcached_st *ptr, const char *key, size_t key_length, unsigned int offset, uint64_t *value); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_decrement (memcached_st *ptr, const char *key, size_t key_length, unsigned int offset, uint64_t *value); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_increment_with_initial (memcached_st *ptr, const char *key, size_t key_length, uint64_t offset, uint64_t initial, time_t expiration, uint64_t *value); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_decrement_with_initial (memcached_st *ptr, const char *key, size_t key_length, uint64_t offset, uint64_t initial, time_t expiration, uint64_t *value); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_increment_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char *key, size_t key_length, unsigned int offset, uint64_t *value); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_decrement_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char *key, size_t key_length, unsigned int offset, uint64_t *value); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_increment_with_initial_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char *key, size_t key_length, uint64_t offset, uint64_t initial, time_t expiration, uint64_t *value); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_decrement_with_initial_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char *key, size_t key_length, uint64_t offset, uint64_t initial, time_t expiration, uint64_t *value); +.UNINDENT +.sp +Compile and link with \-lmemcached +.SH DESCRIPTION .sp -memcached(1) servers have the ability to increment and decrement keys +\fImemcached(1)\fP servers have the ability to increment and decrement keys (overflow and underflow are not detected). This gives you the ability to use memcached to generate shared sequences of values. .sp @@ -153,10 +112,7 @@ Use memcached_strerror() to translate this value to a printable string. .sp To find out more information please check: \fI\%https://launchpad.net/libmemcached\fP -.SH AUTHOR -.sp -Brian Aker, <\fI\%brian@tangent.org\fP> -.SS SEE ALSO +.SH SEE ALSO .sp \fImemcached(1)\fP \fIlibmemcached(3)\fP \fImemcached_strerror(3)\fP .SH AUTHOR diff --git a/docs/man/memcached_decrement_with_initial.3 b/docs/man/memcached_decrement_with_initial.3 index 3fd7cac1..4ce2deb8 100644 --- a/docs/man/memcached_decrement_with_initial.3 +++ b/docs/man/memcached_decrement_with_initial.3 @@ -1,6 +1,6 @@ .TH "MEMCACHED_DECREMENT_WITH_INITIAL" "3" "April 09, 2011" "0.47" "libmemcached" .SH NAME -memcached_decrement_with_initial \- libmemcached Documentation +memcached_decrement_with_initial \- Incrementing and Decrementing Values . .nr rst2man-indent-level 0 . @@ -30,87 +30,46 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] .. .\" Man page generated from reStructeredText. . +.SH SYNOPSIS .sp -Manipulate counters -.SH LIBRARY -.sp -C Client Library for memcached (libmemcached, \-lmemcached) -.SS SYNOPSIS -.sp -.nf -.ft C #include - -memcached_return_t - memcached_increment (memcached_st *ptr, - const char *key, size_t key_length, - unsigned int offset, - uint64_t *value); - -memcached_return_t - memcached_decrement (memcached_st *ptr, - const char *key, size_t key_length, - unsigned int offset, - uint64_t *value); - -memcached_return_t - memcached_increment_with_initial (memcached_st *ptr, - const char *key, - size_t key_length, - uint64_t offset, - uint64_t initial, - time_t expiration, - uint64_t *value); - -memcached_return_t - memcached_decrement_with_initial (memcached_st *ptr, - const char *key, - size_t key_length, - uint64_t offset, - uint64_t initial, - time_t expiration, - uint64_t *value); - -memcached_return_t - memcached_increment_by_key (memcached_st *ptr, - const char *master_key, size_t master_key_length, - const char *key, size_t key_length, - unsigned int offset, - uint64_t *value); - -memcached_return_t - memcached_decrement_by_key (memcached_st *ptr, - const char *master_key, size_t master_key_length, - const char *key, size_t key_length, - unsigned int offset, - uint64_t *value); - -memcached_return_t - memcached_increment_with_initial_by_key (memcached_st *ptr, - const char *master_key, - size_t master_key_length, - const char *key, - size_t key_length, - uint64_t offset, - uint64_t initial, - time_t expiration, - uint64_t *value); - -memcached_return_t - memcached_decrement_with_initial_by_key (memcached_st *ptr, - const char *master_key, - size_t master_key_length, - const char *key, - size_t key_length, - uint64_t offset, - uint64_t initial, - time_t expiration, - uint64_t *value); -.ft P -.fi -.SS DESCRIPTION +.INDENT 0.0 +.TP +.B memcached_return_t memcached_increment (memcached_st *ptr, const char *key, size_t key_length, unsigned int offset, uint64_t *value); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_decrement (memcached_st *ptr, const char *key, size_t key_length, unsigned int offset, uint64_t *value); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_increment_with_initial (memcached_st *ptr, const char *key, size_t key_length, uint64_t offset, uint64_t initial, time_t expiration, uint64_t *value); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_decrement_with_initial (memcached_st *ptr, const char *key, size_t key_length, uint64_t offset, uint64_t initial, time_t expiration, uint64_t *value); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_increment_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char *key, size_t key_length, unsigned int offset, uint64_t *value); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_decrement_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char *key, size_t key_length, unsigned int offset, uint64_t *value); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_increment_with_initial_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char *key, size_t key_length, uint64_t offset, uint64_t initial, time_t expiration, uint64_t *value); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_decrement_with_initial_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char *key, size_t key_length, uint64_t offset, uint64_t initial, time_t expiration, uint64_t *value); +.UNINDENT +.sp +Compile and link with \-lmemcached +.SH DESCRIPTION .sp -memcached(1) servers have the ability to increment and decrement keys +\fImemcached(1)\fP servers have the ability to increment and decrement keys (overflow and underflow are not detected). This gives you the ability to use memcached to generate shared sequences of values. .sp @@ -153,10 +112,7 @@ Use memcached_strerror() to translate this value to a printable string. .sp To find out more information please check: \fI\%https://launchpad.net/libmemcached\fP -.SH AUTHOR -.sp -Brian Aker, <\fI\%brian@tangent.org\fP> -.SS SEE ALSO +.SH SEE ALSO .sp \fImemcached(1)\fP \fIlibmemcached(3)\fP \fImemcached_strerror(3)\fP .SH AUTHOR diff --git a/docs/man/memcached_delete.3 b/docs/man/memcached_delete.3 index 30c79c56..2e715437 100644 --- a/docs/man/memcached_delete.3 +++ b/docs/man/memcached_delete.3 @@ -30,22 +30,19 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] .. .\" Man page generated from reStructeredText. . -.sp -Delete a key -.SH LIBRARY -.sp -C Client Library for memcached (libmemcached, \-lmemcached) .SH SYNOPSIS .sp -.nf -.ft C #include - -memcached_return_t memcached_delete (memcached_st *ptr, const char *key, size_t key_length, time_t expiration); - -memcached_return_t memcached_delete_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char *key, size_t key_length, time_t expiration); -.ft P -.fi +.INDENT 0.0 +.TP +.B memcached_return_t memcached_delete (memcached_st *ptr, const char *key, size_t key_length, time_t expiration); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_delete_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char *key, size_t key_length, time_t expiration); +.UNINDENT +.sp +Compile and link with \-lmemcached .SH DESCRIPTION .sp memcached_delete() is used to delete a particular key. diff --git a/docs/man/memcached_delete_by_key.3 b/docs/man/memcached_delete_by_key.3 index 56619879..ac8c46e8 100644 --- a/docs/man/memcached_delete_by_key.3 +++ b/docs/man/memcached_delete_by_key.3 @@ -30,22 +30,19 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] .. .\" Man page generated from reStructeredText. . -.sp -Delete a key -.SH LIBRARY -.sp -C Client Library for memcached (libmemcached, \-lmemcached) .SH SYNOPSIS .sp -.nf -.ft C #include - -memcached_return_t memcached_delete (memcached_st *ptr, const char *key, size_t key_length, time_t expiration); - -memcached_return_t memcached_delete_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char *key, size_t key_length, time_t expiration); -.ft P -.fi +.INDENT 0.0 +.TP +.B memcached_return_t memcached_delete (memcached_st *ptr, const char *key, size_t key_length, time_t expiration); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_delete_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char *key, size_t key_length, time_t expiration); +.UNINDENT +.sp +Compile and link with \-lmemcached .SH DESCRIPTION .sp memcached_delete() is used to delete a particular key. diff --git a/docs/man/memcached_fetch.3 b/docs/man/memcached_fetch.3 index fc1c20a2..f0ce0087 100644 --- a/docs/man/memcached_fetch.3 +++ b/docs/man/memcached_fetch.3 @@ -1,6 +1,6 @@ .TH "MEMCACHED_FETCH" "3" "April 09, 2011" "0.47" "libmemcached" .SH NAME -memcached_fetch \- libmemcached Documentation +memcached_fetch \- Retrieving data from the server . .nr rst2man-indent-level 0 . @@ -30,85 +30,48 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] .. .\" Man page generated from reStructeredText. . +.SH SYNOPSIS .sp -Get a value -.SH LIBRARY -.sp -C Client Library for memcached (libmemcached, \-lmemcached) -.SS SYNOPSIS -.sp -.nf -.ft C #include - -memcached_result_st * - memcached_fetch_result (memcached_st *ptr, - memcached_result_st *result, - memcached_return_t *error); - -char * - memcached_get (memcached_st *ptr, - const char *key, size_t key_length, - size_t *value_length, - uint32_t *flags, - memcached_return_t *error); - -memcached_return_t - memcached_mget (memcached_st *ptr, - const char * const *keys, - const size_t *key_length, - size_t number_of_keys); -char * - memcached_get_by_key (memcached_st *ptr, - const char *master_key, size_t master_key_length, - const char *key, size_t key_length, - size_t *value_length, - uint32_t *flags, - memcached_return_t *error); - -memcached_return_t - memcached_mget_by_key (memcached_st *ptr, - const char *master_key, size_t master_key_length, - const char * const *keys, - const size_t *key_length, - size_t number_of_keys); - -char * - memcached_fetch (memcached_st *ptr, - char *key, size_t *key_length, - size_t *value_length, - uint32_t *flags, - memcached_return_t *error); - -memcached_return_t - memcached_fetch_execute (memcached_st *ptr, - memcached_execute_fn *callback, - void *context, - uint32_t number_of_callbacks); - - -memcached_return_t - memcached_mget_execute (memcached_st *ptr, - const char * const *keys, - const size_t *key_length, - size_t number_of_keys, - memcached_execute_fn *callback, - void *context, - uint32_t number_of_callbacks); - -memcached_return_t - memcached_mget_execute_by_key (memcached_st *ptr, - const char *master_key, - size_t master_key_length, - const char * const *keys, - const size_t *key_length, - size_t number_of_keys, - memcached_execute_fn *callback, - void *context, - uint32_t number_of_callbacks); -.ft P -.fi -.SS DESCRIPTION +.INDENT 0.0 +.TP +.B memcached_result_st * memcached_fetch_result (memcached_st *ptr, memcached_result_st *result, memcached_return_t *error); +.UNINDENT +.INDENT 0.0 +.TP +.B char * memcached_get (memcached_st *ptr, const char *key, size_t key_length, size_t *value_length, uint32_t *flags, memcached_return_t *error); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_mget (memcached_st *ptr, const char * const *keys, const size_t *key_length, size_t number_of_keys); +.UNINDENT +.INDENT 0.0 +.TP +.B char * memcached_get_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char *key, size_t key_length, size_t *value_length, uint32_t *flags, memcached_return_t *error); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_mget_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char * const *keys, const size_t *key_length, size_t number_of_keys); +.UNINDENT +.INDENT 0.0 +.TP +.B char * memcached_fetch (memcached_st *ptr, char *key, size_t *key_length, size_t *value_length, uint32_t *flags, memcached_return_t *error); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_fetch_execute (memcached_st *ptr, memcached_execute_fn *callback, void *context, uint32_t number_of_callbacks); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_mget_execute (memcached_st *ptr, const char * const *keys, const size_t *key_length, size_t number_of_keys, memcached_execute_fn *callback, void *context, uint32_t number_of_callbacks); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_mget_execute_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char * const *keys, const size_t *key_length, size_t number_of_keys, memcached_execute_fn *callback, void *context, uint32_t number_of_callbacks); +.UNINDENT +.sp +Compile and link with \-lmemcached +.SH DESCRIPTION .sp memcached_get() is used to fetch an individual value from the server. You must pass in a key and its length to fetch the object. You must supply @@ -191,10 +154,7 @@ key allowed for the original memcached ascii server. .sp To find out more information please check: \fI\%https://launchpad.net/libmemcached\fP -.SH AUTHOR -.sp -Brian Aker, <\fI\%brian@tangent.org\fP> -.SS SEE ALSO +.SH SEE ALSO .sp \fImemcached(1)\fP \fIlibmemcached(3)\fP \fImemcached_strerror(3)\fP .SH AUTHOR diff --git a/docs/man/memcached_fetch_execute.3 b/docs/man/memcached_fetch_execute.3 index 9f12c081..132cbb81 100644 --- a/docs/man/memcached_fetch_execute.3 +++ b/docs/man/memcached_fetch_execute.3 @@ -1,6 +1,6 @@ .TH "MEMCACHED_FETCH_EXECUTE" "3" "April 09, 2011" "0.47" "libmemcached" .SH NAME -memcached_fetch_execute \- libmemcached Documentation +memcached_fetch_execute \- Retrieving data from the server . .nr rst2man-indent-level 0 . @@ -30,85 +30,48 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] .. .\" Man page generated from reStructeredText. . +.SH SYNOPSIS .sp -Get a value -.SH LIBRARY -.sp -C Client Library for memcached (libmemcached, \-lmemcached) -.SS SYNOPSIS -.sp -.nf -.ft C #include - -memcached_result_st * - memcached_fetch_result (memcached_st *ptr, - memcached_result_st *result, - memcached_return_t *error); - -char * - memcached_get (memcached_st *ptr, - const char *key, size_t key_length, - size_t *value_length, - uint32_t *flags, - memcached_return_t *error); - -memcached_return_t - memcached_mget (memcached_st *ptr, - const char * const *keys, - const size_t *key_length, - size_t number_of_keys); -char * - memcached_get_by_key (memcached_st *ptr, - const char *master_key, size_t master_key_length, - const char *key, size_t key_length, - size_t *value_length, - uint32_t *flags, - memcached_return_t *error); - -memcached_return_t - memcached_mget_by_key (memcached_st *ptr, - const char *master_key, size_t master_key_length, - const char * const *keys, - const size_t *key_length, - size_t number_of_keys); - -char * - memcached_fetch (memcached_st *ptr, - char *key, size_t *key_length, - size_t *value_length, - uint32_t *flags, - memcached_return_t *error); - -memcached_return_t - memcached_fetch_execute (memcached_st *ptr, - memcached_execute_fn *callback, - void *context, - uint32_t number_of_callbacks); - - -memcached_return_t - memcached_mget_execute (memcached_st *ptr, - const char * const *keys, - const size_t *key_length, - size_t number_of_keys, - memcached_execute_fn *callback, - void *context, - uint32_t number_of_callbacks); - -memcached_return_t - memcached_mget_execute_by_key (memcached_st *ptr, - const char *master_key, - size_t master_key_length, - const char * const *keys, - const size_t *key_length, - size_t number_of_keys, - memcached_execute_fn *callback, - void *context, - uint32_t number_of_callbacks); -.ft P -.fi -.SS DESCRIPTION +.INDENT 0.0 +.TP +.B memcached_result_st * memcached_fetch_result (memcached_st *ptr, memcached_result_st *result, memcached_return_t *error); +.UNINDENT +.INDENT 0.0 +.TP +.B char * memcached_get (memcached_st *ptr, const char *key, size_t key_length, size_t *value_length, uint32_t *flags, memcached_return_t *error); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_mget (memcached_st *ptr, const char * const *keys, const size_t *key_length, size_t number_of_keys); +.UNINDENT +.INDENT 0.0 +.TP +.B char * memcached_get_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char *key, size_t key_length, size_t *value_length, uint32_t *flags, memcached_return_t *error); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_mget_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char * const *keys, const size_t *key_length, size_t number_of_keys); +.UNINDENT +.INDENT 0.0 +.TP +.B char * memcached_fetch (memcached_st *ptr, char *key, size_t *key_length, size_t *value_length, uint32_t *flags, memcached_return_t *error); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_fetch_execute (memcached_st *ptr, memcached_execute_fn *callback, void *context, uint32_t number_of_callbacks); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_mget_execute (memcached_st *ptr, const char * const *keys, const size_t *key_length, size_t number_of_keys, memcached_execute_fn *callback, void *context, uint32_t number_of_callbacks); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_mget_execute_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char * const *keys, const size_t *key_length, size_t number_of_keys, memcached_execute_fn *callback, void *context, uint32_t number_of_callbacks); +.UNINDENT +.sp +Compile and link with \-lmemcached +.SH DESCRIPTION .sp memcached_get() is used to fetch an individual value from the server. You must pass in a key and its length to fetch the object. You must supply @@ -191,10 +154,7 @@ key allowed for the original memcached ascii server. .sp To find out more information please check: \fI\%https://launchpad.net/libmemcached\fP -.SH AUTHOR -.sp -Brian Aker, <\fI\%brian@tangent.org\fP> -.SS SEE ALSO +.SH SEE ALSO .sp \fImemcached(1)\fP \fIlibmemcached(3)\fP \fImemcached_strerror(3)\fP .SH AUTHOR diff --git a/docs/man/memcached_fetch_result.3 b/docs/man/memcached_fetch_result.3 index 62a84998..e7cdf56d 100644 --- a/docs/man/memcached_fetch_result.3 +++ b/docs/man/memcached_fetch_result.3 @@ -1,6 +1,6 @@ .TH "MEMCACHED_FETCH_RESULT" "3" "April 09, 2011" "0.47" "libmemcached" .SH NAME -memcached_fetch_result \- libmemcached Documentation +memcached_fetch_result \- Retrieving data from the server . .nr rst2man-indent-level 0 . @@ -30,85 +30,48 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] .. .\" Man page generated from reStructeredText. . +.SH SYNOPSIS .sp -Get a value -.SH LIBRARY -.sp -C Client Library for memcached (libmemcached, \-lmemcached) -.SS SYNOPSIS -.sp -.nf -.ft C #include - -memcached_result_st * - memcached_fetch_result (memcached_st *ptr, - memcached_result_st *result, - memcached_return_t *error); - -char * - memcached_get (memcached_st *ptr, - const char *key, size_t key_length, - size_t *value_length, - uint32_t *flags, - memcached_return_t *error); - -memcached_return_t - memcached_mget (memcached_st *ptr, - const char * const *keys, - const size_t *key_length, - size_t number_of_keys); -char * - memcached_get_by_key (memcached_st *ptr, - const char *master_key, size_t master_key_length, - const char *key, size_t key_length, - size_t *value_length, - uint32_t *flags, - memcached_return_t *error); - -memcached_return_t - memcached_mget_by_key (memcached_st *ptr, - const char *master_key, size_t master_key_length, - const char * const *keys, - const size_t *key_length, - size_t number_of_keys); - -char * - memcached_fetch (memcached_st *ptr, - char *key, size_t *key_length, - size_t *value_length, - uint32_t *flags, - memcached_return_t *error); - -memcached_return_t - memcached_fetch_execute (memcached_st *ptr, - memcached_execute_fn *callback, - void *context, - uint32_t number_of_callbacks); - - -memcached_return_t - memcached_mget_execute (memcached_st *ptr, - const char * const *keys, - const size_t *key_length, - size_t number_of_keys, - memcached_execute_fn *callback, - void *context, - uint32_t number_of_callbacks); - -memcached_return_t - memcached_mget_execute_by_key (memcached_st *ptr, - const char *master_key, - size_t master_key_length, - const char * const *keys, - const size_t *key_length, - size_t number_of_keys, - memcached_execute_fn *callback, - void *context, - uint32_t number_of_callbacks); -.ft P -.fi -.SS DESCRIPTION +.INDENT 0.0 +.TP +.B memcached_result_st * memcached_fetch_result (memcached_st *ptr, memcached_result_st *result, memcached_return_t *error); +.UNINDENT +.INDENT 0.0 +.TP +.B char * memcached_get (memcached_st *ptr, const char *key, size_t key_length, size_t *value_length, uint32_t *flags, memcached_return_t *error); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_mget (memcached_st *ptr, const char * const *keys, const size_t *key_length, size_t number_of_keys); +.UNINDENT +.INDENT 0.0 +.TP +.B char * memcached_get_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char *key, size_t key_length, size_t *value_length, uint32_t *flags, memcached_return_t *error); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_mget_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char * const *keys, const size_t *key_length, size_t number_of_keys); +.UNINDENT +.INDENT 0.0 +.TP +.B char * memcached_fetch (memcached_st *ptr, char *key, size_t *key_length, size_t *value_length, uint32_t *flags, memcached_return_t *error); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_fetch_execute (memcached_st *ptr, memcached_execute_fn *callback, void *context, uint32_t number_of_callbacks); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_mget_execute (memcached_st *ptr, const char * const *keys, const size_t *key_length, size_t number_of_keys, memcached_execute_fn *callback, void *context, uint32_t number_of_callbacks); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_mget_execute_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char * const *keys, const size_t *key_length, size_t number_of_keys, memcached_execute_fn *callback, void *context, uint32_t number_of_callbacks); +.UNINDENT +.sp +Compile and link with \-lmemcached +.SH DESCRIPTION .sp memcached_get() is used to fetch an individual value from the server. You must pass in a key and its length to fetch the object. You must supply @@ -191,10 +154,7 @@ key allowed for the original memcached ascii server. .sp To find out more information please check: \fI\%https://launchpad.net/libmemcached\fP -.SH AUTHOR -.sp -Brian Aker, <\fI\%brian@tangent.org\fP> -.SS SEE ALSO +.SH SEE ALSO .sp \fImemcached(1)\fP \fIlibmemcached(3)\fP \fImemcached_strerror(3)\fP .SH AUTHOR diff --git a/docs/man/memcached_flush.3 b/docs/man/memcached_flush.3 index dbf05957..0535097a 100644 --- a/docs/man/memcached_flush.3 +++ b/docs/man/memcached_flush.3 @@ -32,20 +32,15 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] . .sp Wipe contents of memcached servers -.SH LIBRARY -.sp -C Client Library for memcached (libmemcached, \-lmemcached) .SH SYNOPSIS .sp -.nf -.ft C #include - -memcached_return_t - memcached_flush (memcached_st *ptr, - time_t expiration); -.ft P -.fi +.INDENT 0.0 +.TP +.B memcached_return_t memcached_flush (memcached_st *ptr, time_t expiration); +.UNINDENT +.sp +Compile and link with \-lmemcached .SH DESCRIPTION .sp memcached_flush() is used to wipe clean the contents of memcached(1) servers. diff --git a/docs/man/memcached_free.3 b/docs/man/memcached_free.3 index 94e5ab44..3d5a32f7 100644 --- a/docs/man/memcached_free.3 +++ b/docs/man/memcached_free.3 @@ -32,9 +32,6 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] . .sp Create a memcached_st structure -.SH LIBRARY -.sp -C Client Library for memcached (libmemcached, \-lmemcached) .SH SYNOPSIS .sp #include @@ -54,6 +51,8 @@ C Client Library for memcached (libmemcached, \-lmemcached) .TP .B void memcached_servers_reset(memcached_st); .UNINDENT +.sp +Compile and link with \-lmemcached .SH DESCRIPTION .sp memcached_create() is used to create a \fBmemcached_st\fP structure that will then diff --git a/docs/man/memcached_generate_hash.3 b/docs/man/memcached_generate_hash.3 new file mode 100644 index 00000000..3c81b38c --- /dev/null +++ b/docs/man/memcached_generate_hash.3 @@ -0,0 +1,85 @@ +.TH "MEMCACHED_GENERATE_HASH" "3" "April 09, 2011" "0.47" "libmemcached" +.SH NAME +memcached_generate_hash \- Generating hash values directly +. +.nr rst2man-indent-level 0 +. +.de1 rstReportMargin +\\$1 \\n[an-margin] +level \\n[rst2man-indent-level] +level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] +- +\\n[rst2man-indent0] +\\n[rst2man-indent1] +\\n[rst2man-indent2] +.. +.de1 INDENT +.\" .rstReportMargin pre: +. RS \\$1 +. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin] +. nr rst2man-indent-level +1 +.\" .rstReportMargin post: +.. +.de UNINDENT +. RE +.\" indent \\n[an-margin] +.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]] +.nr rst2man-indent-level -1 +.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]] +.in \\n[rst2man-indent\\n[rst2man-indent-level]]u +.. +.\" Man page generated from reStructeredText. +. +.sp +Hash a key value +.SH SYNOPSIS +.sp +#include +.INDENT 0.0 +.TP +.B uint32_t memcached_generate_hash_value (const char *key, size_t key_length, memcached_hash_t hash_algorithm); +.UNINDENT +.INDENT 0.0 +.TP +.B uint32_t memcached_generate_hash (memcached_st *ptr, const char *key, size_t key_length); +.UNINDENT +.sp +Compile and link with \-lmemcachedutil \-lmemcached +.SH DESCRIPTION +.sp +memcached_generate_hash_value() allows you to hash a key using one of +the hash functions defined in the library. This method is provided for +the convenience of higher\-level language bindings and is not necessary +for normal memcache operations. +.sp +The allowed hash algorithm constants are listed in the manpage for +memcached_behavior_set(). +.sp +memcached_generate_hash() takes a memcached_st struture and produces +the hash value that would have been generated based on the defaults +of the memcached_st structure. +.sp +As of version 0.36 all hash methods have been placed into the library +libhashkit(3) which is linked with libmemcached(3). For more information please see its documentation. +.SH RETURN +.sp +A 32\-bit integer which is the result of hashing the given key. +For 64\-bit hash algorithms, only the least\-significant 32 bits are +returned. +.SH HOME +.sp +To find out more information please check: +\fI\%https://launchpad.net/libmemcached\fP +.SH AUTHOR +.sp +Brian Aker, <\fI\%brian@tangent.org\fP> +.SH SEE ALSO +.sp +\fImemcached(1)\fP \fIlibmemcached(3)\fP \fImemcached_strerror(3)\fP +.SH AUTHOR +Brian Aker +.SH COPYRIGHT +2011, Brian Aker DataDifferential, http://datadifferential.com/ +.\" Generated by docutils manpage writer. +.\" +. diff --git a/docs/man/memcached_generate_hash_value.3 b/docs/man/memcached_generate_hash_value.3 index b81e3ce7..d047f5d0 100644 --- a/docs/man/memcached_generate_hash_value.3 +++ b/docs/man/memcached_generate_hash_value.3 @@ -1,6 +1,6 @@ .TH "MEMCACHED_GENERATE_HASH_VALUE" "3" "April 09, 2011" "0.47" "libmemcached" .SH NAME -memcached_generate_hash_value \- libmemcached Documentation +memcached_generate_hash_value \- Generating hash values directly . .nr rst2man-indent-level 0 . @@ -32,26 +32,19 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] . .sp Hash a key value -.SH LIBRARY -.sp -C Client Library for memcached (libmemcached, \-lmemcached) .SH SYNOPSIS .sp -.nf -.ft C #include - -uint32_t - memcached_generate_hash_value (const char *key, - size_t key_length, - memcached_hash_t hash_algorithm); - -uint32_t - memcached_generate_hash (memcached_st *ptr, - const char *key, - size_t key_length); -.ft P -.fi +.INDENT 0.0 +.TP +.B uint32_t memcached_generate_hash_value (const char *key, size_t key_length, memcached_hash_t hash_algorithm); +.UNINDENT +.INDENT 0.0 +.TP +.B uint32_t memcached_generate_hash (memcached_st *ptr, const char *key, size_t key_length); +.UNINDENT +.sp +Compile and link with \-lmemcachedutil \-lmemcached .SH DESCRIPTION .sp memcached_generate_hash_value() allows you to hash a key using one of diff --git a/docs/man/memcached_get.3 b/docs/man/memcached_get.3 index c75f080a..88aaa6f7 100644 --- a/docs/man/memcached_get.3 +++ b/docs/man/memcached_get.3 @@ -1,6 +1,6 @@ .TH "MEMCACHED_GET" "3" "April 09, 2011" "0.47" "libmemcached" .SH NAME -memcached_get \- libmemcached Documentation +memcached_get \- Retrieving data from the server . .nr rst2man-indent-level 0 . @@ -30,85 +30,48 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] .. .\" Man page generated from reStructeredText. . +.SH SYNOPSIS .sp -Get a value -.SH LIBRARY -.sp -C Client Library for memcached (libmemcached, \-lmemcached) -.SS SYNOPSIS -.sp -.nf -.ft C #include - -memcached_result_st * - memcached_fetch_result (memcached_st *ptr, - memcached_result_st *result, - memcached_return_t *error); - -char * - memcached_get (memcached_st *ptr, - const char *key, size_t key_length, - size_t *value_length, - uint32_t *flags, - memcached_return_t *error); - -memcached_return_t - memcached_mget (memcached_st *ptr, - const char * const *keys, - const size_t *key_length, - size_t number_of_keys); -char * - memcached_get_by_key (memcached_st *ptr, - const char *master_key, size_t master_key_length, - const char *key, size_t key_length, - size_t *value_length, - uint32_t *flags, - memcached_return_t *error); - -memcached_return_t - memcached_mget_by_key (memcached_st *ptr, - const char *master_key, size_t master_key_length, - const char * const *keys, - const size_t *key_length, - size_t number_of_keys); - -char * - memcached_fetch (memcached_st *ptr, - char *key, size_t *key_length, - size_t *value_length, - uint32_t *flags, - memcached_return_t *error); - -memcached_return_t - memcached_fetch_execute (memcached_st *ptr, - memcached_execute_fn *callback, - void *context, - uint32_t number_of_callbacks); - - -memcached_return_t - memcached_mget_execute (memcached_st *ptr, - const char * const *keys, - const size_t *key_length, - size_t number_of_keys, - memcached_execute_fn *callback, - void *context, - uint32_t number_of_callbacks); - -memcached_return_t - memcached_mget_execute_by_key (memcached_st *ptr, - const char *master_key, - size_t master_key_length, - const char * const *keys, - const size_t *key_length, - size_t number_of_keys, - memcached_execute_fn *callback, - void *context, - uint32_t number_of_callbacks); -.ft P -.fi -.SS DESCRIPTION +.INDENT 0.0 +.TP +.B memcached_result_st * memcached_fetch_result (memcached_st *ptr, memcached_result_st *result, memcached_return_t *error); +.UNINDENT +.INDENT 0.0 +.TP +.B char * memcached_get (memcached_st *ptr, const char *key, size_t key_length, size_t *value_length, uint32_t *flags, memcached_return_t *error); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_mget (memcached_st *ptr, const char * const *keys, const size_t *key_length, size_t number_of_keys); +.UNINDENT +.INDENT 0.0 +.TP +.B char * memcached_get_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char *key, size_t key_length, size_t *value_length, uint32_t *flags, memcached_return_t *error); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_mget_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char * const *keys, const size_t *key_length, size_t number_of_keys); +.UNINDENT +.INDENT 0.0 +.TP +.B char * memcached_fetch (memcached_st *ptr, char *key, size_t *key_length, size_t *value_length, uint32_t *flags, memcached_return_t *error); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_fetch_execute (memcached_st *ptr, memcached_execute_fn *callback, void *context, uint32_t number_of_callbacks); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_mget_execute (memcached_st *ptr, const char * const *keys, const size_t *key_length, size_t number_of_keys, memcached_execute_fn *callback, void *context, uint32_t number_of_callbacks); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_mget_execute_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char * const *keys, const size_t *key_length, size_t number_of_keys, memcached_execute_fn *callback, void *context, uint32_t number_of_callbacks); +.UNINDENT +.sp +Compile and link with \-lmemcached +.SH DESCRIPTION .sp memcached_get() is used to fetch an individual value from the server. You must pass in a key and its length to fetch the object. You must supply @@ -191,10 +154,7 @@ key allowed for the original memcached ascii server. .sp To find out more information please check: \fI\%https://launchpad.net/libmemcached\fP -.SH AUTHOR -.sp -Brian Aker, <\fI\%brian@tangent.org\fP> -.SS SEE ALSO +.SH SEE ALSO .sp \fImemcached(1)\fP \fIlibmemcached(3)\fP \fImemcached_strerror(3)\fP .SH AUTHOR diff --git a/docs/man/memcached_get_by_key.3 b/docs/man/memcached_get_by_key.3 index 76afec87..147131bf 100644 --- a/docs/man/memcached_get_by_key.3 +++ b/docs/man/memcached_get_by_key.3 @@ -1,6 +1,6 @@ .TH "MEMCACHED_GET_BY_KEY" "3" "April 09, 2011" "0.47" "libmemcached" .SH NAME -memcached_get_by_key \- libmemcached Documentation +memcached_get_by_key \- Retrieving data from the server . .nr rst2man-indent-level 0 . @@ -30,85 +30,48 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] .. .\" Man page generated from reStructeredText. . +.SH SYNOPSIS .sp -Get a value -.SH LIBRARY -.sp -C Client Library for memcached (libmemcached, \-lmemcached) -.SS SYNOPSIS -.sp -.nf -.ft C #include - -memcached_result_st * - memcached_fetch_result (memcached_st *ptr, - memcached_result_st *result, - memcached_return_t *error); - -char * - memcached_get (memcached_st *ptr, - const char *key, size_t key_length, - size_t *value_length, - uint32_t *flags, - memcached_return_t *error); - -memcached_return_t - memcached_mget (memcached_st *ptr, - const char * const *keys, - const size_t *key_length, - size_t number_of_keys); -char * - memcached_get_by_key (memcached_st *ptr, - const char *master_key, size_t master_key_length, - const char *key, size_t key_length, - size_t *value_length, - uint32_t *flags, - memcached_return_t *error); - -memcached_return_t - memcached_mget_by_key (memcached_st *ptr, - const char *master_key, size_t master_key_length, - const char * const *keys, - const size_t *key_length, - size_t number_of_keys); - -char * - memcached_fetch (memcached_st *ptr, - char *key, size_t *key_length, - size_t *value_length, - uint32_t *flags, - memcached_return_t *error); - -memcached_return_t - memcached_fetch_execute (memcached_st *ptr, - memcached_execute_fn *callback, - void *context, - uint32_t number_of_callbacks); - - -memcached_return_t - memcached_mget_execute (memcached_st *ptr, - const char * const *keys, - const size_t *key_length, - size_t number_of_keys, - memcached_execute_fn *callback, - void *context, - uint32_t number_of_callbacks); - -memcached_return_t - memcached_mget_execute_by_key (memcached_st *ptr, - const char *master_key, - size_t master_key_length, - const char * const *keys, - const size_t *key_length, - size_t number_of_keys, - memcached_execute_fn *callback, - void *context, - uint32_t number_of_callbacks); -.ft P -.fi -.SS DESCRIPTION +.INDENT 0.0 +.TP +.B memcached_result_st * memcached_fetch_result (memcached_st *ptr, memcached_result_st *result, memcached_return_t *error); +.UNINDENT +.INDENT 0.0 +.TP +.B char * memcached_get (memcached_st *ptr, const char *key, size_t key_length, size_t *value_length, uint32_t *flags, memcached_return_t *error); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_mget (memcached_st *ptr, const char * const *keys, const size_t *key_length, size_t number_of_keys); +.UNINDENT +.INDENT 0.0 +.TP +.B char * memcached_get_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char *key, size_t key_length, size_t *value_length, uint32_t *flags, memcached_return_t *error); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_mget_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char * const *keys, const size_t *key_length, size_t number_of_keys); +.UNINDENT +.INDENT 0.0 +.TP +.B char * memcached_fetch (memcached_st *ptr, char *key, size_t *key_length, size_t *value_length, uint32_t *flags, memcached_return_t *error); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_fetch_execute (memcached_st *ptr, memcached_execute_fn *callback, void *context, uint32_t number_of_callbacks); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_mget_execute (memcached_st *ptr, const char * const *keys, const size_t *key_length, size_t number_of_keys, memcached_execute_fn *callback, void *context, uint32_t number_of_callbacks); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_mget_execute_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char * const *keys, const size_t *key_length, size_t number_of_keys, memcached_execute_fn *callback, void *context, uint32_t number_of_callbacks); +.UNINDENT +.sp +Compile and link with \-lmemcached +.SH DESCRIPTION .sp memcached_get() is used to fetch an individual value from the server. You must pass in a key and its length to fetch the object. You must supply @@ -191,10 +154,7 @@ key allowed for the original memcached ascii server. .sp To find out more information please check: \fI\%https://launchpad.net/libmemcached\fP -.SH AUTHOR -.sp -Brian Aker, <\fI\%brian@tangent.org\fP> -.SS SEE ALSO +.SH SEE ALSO .sp \fImemcached(1)\fP \fIlibmemcached(3)\fP \fImemcached_strerror(3)\fP .SH AUTHOR diff --git a/docs/man/memcached_increment.3 b/docs/man/memcached_increment.3 index a5179e91..e81aa2e3 100644 --- a/docs/man/memcached_increment.3 +++ b/docs/man/memcached_increment.3 @@ -1,6 +1,6 @@ .TH "MEMCACHED_INCREMENT" "3" "April 09, 2011" "0.47" "libmemcached" .SH NAME -memcached_increment \- libmemcached Documentation +memcached_increment \- Incrementing and Decrementing Values . .nr rst2man-indent-level 0 . @@ -30,87 +30,46 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] .. .\" Man page generated from reStructeredText. . +.SH SYNOPSIS .sp -Manipulate counters -.SH LIBRARY -.sp -C Client Library for memcached (libmemcached, \-lmemcached) -.SS SYNOPSIS -.sp -.nf -.ft C #include - -memcached_return_t - memcached_increment (memcached_st *ptr, - const char *key, size_t key_length, - unsigned int offset, - uint64_t *value); - -memcached_return_t - memcached_decrement (memcached_st *ptr, - const char *key, size_t key_length, - unsigned int offset, - uint64_t *value); - -memcached_return_t - memcached_increment_with_initial (memcached_st *ptr, - const char *key, - size_t key_length, - uint64_t offset, - uint64_t initial, - time_t expiration, - uint64_t *value); - -memcached_return_t - memcached_decrement_with_initial (memcached_st *ptr, - const char *key, - size_t key_length, - uint64_t offset, - uint64_t initial, - time_t expiration, - uint64_t *value); - -memcached_return_t - memcached_increment_by_key (memcached_st *ptr, - const char *master_key, size_t master_key_length, - const char *key, size_t key_length, - unsigned int offset, - uint64_t *value); - -memcached_return_t - memcached_decrement_by_key (memcached_st *ptr, - const char *master_key, size_t master_key_length, - const char *key, size_t key_length, - unsigned int offset, - uint64_t *value); - -memcached_return_t - memcached_increment_with_initial_by_key (memcached_st *ptr, - const char *master_key, - size_t master_key_length, - const char *key, - size_t key_length, - uint64_t offset, - uint64_t initial, - time_t expiration, - uint64_t *value); - -memcached_return_t - memcached_decrement_with_initial_by_key (memcached_st *ptr, - const char *master_key, - size_t master_key_length, - const char *key, - size_t key_length, - uint64_t offset, - uint64_t initial, - time_t expiration, - uint64_t *value); -.ft P -.fi -.SS DESCRIPTION +.INDENT 0.0 +.TP +.B memcached_return_t memcached_increment (memcached_st *ptr, const char *key, size_t key_length, unsigned int offset, uint64_t *value); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_decrement (memcached_st *ptr, const char *key, size_t key_length, unsigned int offset, uint64_t *value); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_increment_with_initial (memcached_st *ptr, const char *key, size_t key_length, uint64_t offset, uint64_t initial, time_t expiration, uint64_t *value); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_decrement_with_initial (memcached_st *ptr, const char *key, size_t key_length, uint64_t offset, uint64_t initial, time_t expiration, uint64_t *value); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_increment_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char *key, size_t key_length, unsigned int offset, uint64_t *value); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_decrement_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char *key, size_t key_length, unsigned int offset, uint64_t *value); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_increment_with_initial_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char *key, size_t key_length, uint64_t offset, uint64_t initial, time_t expiration, uint64_t *value); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_decrement_with_initial_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char *key, size_t key_length, uint64_t offset, uint64_t initial, time_t expiration, uint64_t *value); +.UNINDENT +.sp +Compile and link with \-lmemcached +.SH DESCRIPTION .sp -memcached(1) servers have the ability to increment and decrement keys +\fImemcached(1)\fP servers have the ability to increment and decrement keys (overflow and underflow are not detected). This gives you the ability to use memcached to generate shared sequences of values. .sp @@ -153,10 +112,7 @@ Use memcached_strerror() to translate this value to a printable string. .sp To find out more information please check: \fI\%https://launchpad.net/libmemcached\fP -.SH AUTHOR -.sp -Brian Aker, <\fI\%brian@tangent.org\fP> -.SS SEE ALSO +.SH SEE ALSO .sp \fImemcached(1)\fP \fIlibmemcached(3)\fP \fImemcached_strerror(3)\fP .SH AUTHOR diff --git a/docs/man/memcached_increment_with_initial.3 b/docs/man/memcached_increment_with_initial.3 index e85c5efa..c8a9ad48 100644 --- a/docs/man/memcached_increment_with_initial.3 +++ b/docs/man/memcached_increment_with_initial.3 @@ -1,6 +1,6 @@ .TH "MEMCACHED_INCREMENT_WITH_INITIAL" "3" "April 09, 2011" "0.47" "libmemcached" .SH NAME -memcached_increment_with_initial \- libmemcached Documentation +memcached_increment_with_initial \- Incrementing and Decrementing Values . .nr rst2man-indent-level 0 . @@ -30,87 +30,46 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] .. .\" Man page generated from reStructeredText. . +.SH SYNOPSIS .sp -Manipulate counters -.SH LIBRARY -.sp -C Client Library for memcached (libmemcached, \-lmemcached) -.SS SYNOPSIS -.sp -.nf -.ft C #include - -memcached_return_t - memcached_increment (memcached_st *ptr, - const char *key, size_t key_length, - unsigned int offset, - uint64_t *value); - -memcached_return_t - memcached_decrement (memcached_st *ptr, - const char *key, size_t key_length, - unsigned int offset, - uint64_t *value); - -memcached_return_t - memcached_increment_with_initial (memcached_st *ptr, - const char *key, - size_t key_length, - uint64_t offset, - uint64_t initial, - time_t expiration, - uint64_t *value); - -memcached_return_t - memcached_decrement_with_initial (memcached_st *ptr, - const char *key, - size_t key_length, - uint64_t offset, - uint64_t initial, - time_t expiration, - uint64_t *value); - -memcached_return_t - memcached_increment_by_key (memcached_st *ptr, - const char *master_key, size_t master_key_length, - const char *key, size_t key_length, - unsigned int offset, - uint64_t *value); - -memcached_return_t - memcached_decrement_by_key (memcached_st *ptr, - const char *master_key, size_t master_key_length, - const char *key, size_t key_length, - unsigned int offset, - uint64_t *value); - -memcached_return_t - memcached_increment_with_initial_by_key (memcached_st *ptr, - const char *master_key, - size_t master_key_length, - const char *key, - size_t key_length, - uint64_t offset, - uint64_t initial, - time_t expiration, - uint64_t *value); - -memcached_return_t - memcached_decrement_with_initial_by_key (memcached_st *ptr, - const char *master_key, - size_t master_key_length, - const char *key, - size_t key_length, - uint64_t offset, - uint64_t initial, - time_t expiration, - uint64_t *value); -.ft P -.fi -.SS DESCRIPTION +.INDENT 0.0 +.TP +.B memcached_return_t memcached_increment (memcached_st *ptr, const char *key, size_t key_length, unsigned int offset, uint64_t *value); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_decrement (memcached_st *ptr, const char *key, size_t key_length, unsigned int offset, uint64_t *value); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_increment_with_initial (memcached_st *ptr, const char *key, size_t key_length, uint64_t offset, uint64_t initial, time_t expiration, uint64_t *value); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_decrement_with_initial (memcached_st *ptr, const char *key, size_t key_length, uint64_t offset, uint64_t initial, time_t expiration, uint64_t *value); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_increment_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char *key, size_t key_length, unsigned int offset, uint64_t *value); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_decrement_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char *key, size_t key_length, unsigned int offset, uint64_t *value); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_increment_with_initial_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char *key, size_t key_length, uint64_t offset, uint64_t initial, time_t expiration, uint64_t *value); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_decrement_with_initial_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char *key, size_t key_length, uint64_t offset, uint64_t initial, time_t expiration, uint64_t *value); +.UNINDENT +.sp +Compile and link with \-lmemcached +.SH DESCRIPTION .sp -memcached(1) servers have the ability to increment and decrement keys +\fImemcached(1)\fP servers have the ability to increment and decrement keys (overflow and underflow are not detected). This gives you the ability to use memcached to generate shared sequences of values. .sp @@ -153,10 +112,7 @@ Use memcached_strerror() to translate this value to a printable string. .sp To find out more information please check: \fI\%https://launchpad.net/libmemcached\fP -.SH AUTHOR -.sp -Brian Aker, <\fI\%brian@tangent.org\fP> -.SS SEE ALSO +.SH SEE ALSO .sp \fImemcached(1)\fP \fIlibmemcached(3)\fP \fImemcached_strerror(3)\fP .SH AUTHOR diff --git a/docs/man/memcached_mget.3 b/docs/man/memcached_mget.3 index 33523f44..8f4f7d31 100644 --- a/docs/man/memcached_mget.3 +++ b/docs/man/memcached_mget.3 @@ -1,6 +1,6 @@ .TH "MEMCACHED_MGET" "3" "April 09, 2011" "0.47" "libmemcached" .SH NAME -memcached_mget \- libmemcached Documentation +memcached_mget \- Retrieving data from the server . .nr rst2man-indent-level 0 . @@ -30,85 +30,48 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] .. .\" Man page generated from reStructeredText. . +.SH SYNOPSIS .sp -Get a value -.SH LIBRARY -.sp -C Client Library for memcached (libmemcached, \-lmemcached) -.SS SYNOPSIS -.sp -.nf -.ft C #include - -memcached_result_st * - memcached_fetch_result (memcached_st *ptr, - memcached_result_st *result, - memcached_return_t *error); - -char * - memcached_get (memcached_st *ptr, - const char *key, size_t key_length, - size_t *value_length, - uint32_t *flags, - memcached_return_t *error); - -memcached_return_t - memcached_mget (memcached_st *ptr, - const char * const *keys, - const size_t *key_length, - size_t number_of_keys); -char * - memcached_get_by_key (memcached_st *ptr, - const char *master_key, size_t master_key_length, - const char *key, size_t key_length, - size_t *value_length, - uint32_t *flags, - memcached_return_t *error); - -memcached_return_t - memcached_mget_by_key (memcached_st *ptr, - const char *master_key, size_t master_key_length, - const char * const *keys, - const size_t *key_length, - size_t number_of_keys); - -char * - memcached_fetch (memcached_st *ptr, - char *key, size_t *key_length, - size_t *value_length, - uint32_t *flags, - memcached_return_t *error); - -memcached_return_t - memcached_fetch_execute (memcached_st *ptr, - memcached_execute_fn *callback, - void *context, - uint32_t number_of_callbacks); - - -memcached_return_t - memcached_mget_execute (memcached_st *ptr, - const char * const *keys, - const size_t *key_length, - size_t number_of_keys, - memcached_execute_fn *callback, - void *context, - uint32_t number_of_callbacks); - -memcached_return_t - memcached_mget_execute_by_key (memcached_st *ptr, - const char *master_key, - size_t master_key_length, - const char * const *keys, - const size_t *key_length, - size_t number_of_keys, - memcached_execute_fn *callback, - void *context, - uint32_t number_of_callbacks); -.ft P -.fi -.SS DESCRIPTION +.INDENT 0.0 +.TP +.B memcached_result_st * memcached_fetch_result (memcached_st *ptr, memcached_result_st *result, memcached_return_t *error); +.UNINDENT +.INDENT 0.0 +.TP +.B char * memcached_get (memcached_st *ptr, const char *key, size_t key_length, size_t *value_length, uint32_t *flags, memcached_return_t *error); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_mget (memcached_st *ptr, const char * const *keys, const size_t *key_length, size_t number_of_keys); +.UNINDENT +.INDENT 0.0 +.TP +.B char * memcached_get_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char *key, size_t key_length, size_t *value_length, uint32_t *flags, memcached_return_t *error); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_mget_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char * const *keys, const size_t *key_length, size_t number_of_keys); +.UNINDENT +.INDENT 0.0 +.TP +.B char * memcached_fetch (memcached_st *ptr, char *key, size_t *key_length, size_t *value_length, uint32_t *flags, memcached_return_t *error); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_fetch_execute (memcached_st *ptr, memcached_execute_fn *callback, void *context, uint32_t number_of_callbacks); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_mget_execute (memcached_st *ptr, const char * const *keys, const size_t *key_length, size_t number_of_keys, memcached_execute_fn *callback, void *context, uint32_t number_of_callbacks); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_mget_execute_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char * const *keys, const size_t *key_length, size_t number_of_keys, memcached_execute_fn *callback, void *context, uint32_t number_of_callbacks); +.UNINDENT +.sp +Compile and link with \-lmemcached +.SH DESCRIPTION .sp memcached_get() is used to fetch an individual value from the server. You must pass in a key and its length to fetch the object. You must supply @@ -191,10 +154,7 @@ key allowed for the original memcached ascii server. .sp To find out more information please check: \fI\%https://launchpad.net/libmemcached\fP -.SH AUTHOR -.sp -Brian Aker, <\fI\%brian@tangent.org\fP> -.SS SEE ALSO +.SH SEE ALSO .sp \fImemcached(1)\fP \fIlibmemcached(3)\fP \fImemcached_strerror(3)\fP .SH AUTHOR diff --git a/docs/man/memcached_mget_by_key.3 b/docs/man/memcached_mget_by_key.3 index 0a5d8e26..2457318b 100644 --- a/docs/man/memcached_mget_by_key.3 +++ b/docs/man/memcached_mget_by_key.3 @@ -1,6 +1,6 @@ .TH "MEMCACHED_MGET_BY_KEY" "3" "April 09, 2011" "0.47" "libmemcached" .SH NAME -memcached_mget_by_key \- libmemcached Documentation +memcached_mget_by_key \- Retrieving data from the server . .nr rst2man-indent-level 0 . @@ -30,85 +30,48 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] .. .\" Man page generated from reStructeredText. . +.SH SYNOPSIS .sp -Get a value -.SH LIBRARY -.sp -C Client Library for memcached (libmemcached, \-lmemcached) -.SS SYNOPSIS -.sp -.nf -.ft C #include - -memcached_result_st * - memcached_fetch_result (memcached_st *ptr, - memcached_result_st *result, - memcached_return_t *error); - -char * - memcached_get (memcached_st *ptr, - const char *key, size_t key_length, - size_t *value_length, - uint32_t *flags, - memcached_return_t *error); - -memcached_return_t - memcached_mget (memcached_st *ptr, - const char * const *keys, - const size_t *key_length, - size_t number_of_keys); -char * - memcached_get_by_key (memcached_st *ptr, - const char *master_key, size_t master_key_length, - const char *key, size_t key_length, - size_t *value_length, - uint32_t *flags, - memcached_return_t *error); - -memcached_return_t - memcached_mget_by_key (memcached_st *ptr, - const char *master_key, size_t master_key_length, - const char * const *keys, - const size_t *key_length, - size_t number_of_keys); - -char * - memcached_fetch (memcached_st *ptr, - char *key, size_t *key_length, - size_t *value_length, - uint32_t *flags, - memcached_return_t *error); - -memcached_return_t - memcached_fetch_execute (memcached_st *ptr, - memcached_execute_fn *callback, - void *context, - uint32_t number_of_callbacks); - - -memcached_return_t - memcached_mget_execute (memcached_st *ptr, - const char * const *keys, - const size_t *key_length, - size_t number_of_keys, - memcached_execute_fn *callback, - void *context, - uint32_t number_of_callbacks); - -memcached_return_t - memcached_mget_execute_by_key (memcached_st *ptr, - const char *master_key, - size_t master_key_length, - const char * const *keys, - const size_t *key_length, - size_t number_of_keys, - memcached_execute_fn *callback, - void *context, - uint32_t number_of_callbacks); -.ft P -.fi -.SS DESCRIPTION +.INDENT 0.0 +.TP +.B memcached_result_st * memcached_fetch_result (memcached_st *ptr, memcached_result_st *result, memcached_return_t *error); +.UNINDENT +.INDENT 0.0 +.TP +.B char * memcached_get (memcached_st *ptr, const char *key, size_t key_length, size_t *value_length, uint32_t *flags, memcached_return_t *error); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_mget (memcached_st *ptr, const char * const *keys, const size_t *key_length, size_t number_of_keys); +.UNINDENT +.INDENT 0.0 +.TP +.B char * memcached_get_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char *key, size_t key_length, size_t *value_length, uint32_t *flags, memcached_return_t *error); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_mget_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char * const *keys, const size_t *key_length, size_t number_of_keys); +.UNINDENT +.INDENT 0.0 +.TP +.B char * memcached_fetch (memcached_st *ptr, char *key, size_t *key_length, size_t *value_length, uint32_t *flags, memcached_return_t *error); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_fetch_execute (memcached_st *ptr, memcached_execute_fn *callback, void *context, uint32_t number_of_callbacks); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_mget_execute (memcached_st *ptr, const char * const *keys, const size_t *key_length, size_t number_of_keys, memcached_execute_fn *callback, void *context, uint32_t number_of_callbacks); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_mget_execute_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char * const *keys, const size_t *key_length, size_t number_of_keys, memcached_execute_fn *callback, void *context, uint32_t number_of_callbacks); +.UNINDENT +.sp +Compile and link with \-lmemcached +.SH DESCRIPTION .sp memcached_get() is used to fetch an individual value from the server. You must pass in a key and its length to fetch the object. You must supply @@ -191,10 +154,7 @@ key allowed for the original memcached ascii server. .sp To find out more information please check: \fI\%https://launchpad.net/libmemcached\fP -.SH AUTHOR -.sp -Brian Aker, <\fI\%brian@tangent.org\fP> -.SS SEE ALSO +.SH SEE ALSO .sp \fImemcached(1)\fP \fIlibmemcached(3)\fP \fImemcached_strerror(3)\fP .SH AUTHOR diff --git a/docs/man/memcached_mget_execute.3 b/docs/man/memcached_mget_execute.3 index c7b8ffb2..62c92bfc 100644 --- a/docs/man/memcached_mget_execute.3 +++ b/docs/man/memcached_mget_execute.3 @@ -1,6 +1,6 @@ .TH "MEMCACHED_MGET_EXECUTE" "3" "April 09, 2011" "0.47" "libmemcached" .SH NAME -memcached_mget_execute \- libmemcached Documentation +memcached_mget_execute \- Retrieving data from the server . .nr rst2man-indent-level 0 . @@ -30,85 +30,48 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] .. .\" Man page generated from reStructeredText. . +.SH SYNOPSIS .sp -Get a value -.SH LIBRARY -.sp -C Client Library for memcached (libmemcached, \-lmemcached) -.SS SYNOPSIS -.sp -.nf -.ft C #include - -memcached_result_st * - memcached_fetch_result (memcached_st *ptr, - memcached_result_st *result, - memcached_return_t *error); - -char * - memcached_get (memcached_st *ptr, - const char *key, size_t key_length, - size_t *value_length, - uint32_t *flags, - memcached_return_t *error); - -memcached_return_t - memcached_mget (memcached_st *ptr, - const char * const *keys, - const size_t *key_length, - size_t number_of_keys); -char * - memcached_get_by_key (memcached_st *ptr, - const char *master_key, size_t master_key_length, - const char *key, size_t key_length, - size_t *value_length, - uint32_t *flags, - memcached_return_t *error); - -memcached_return_t - memcached_mget_by_key (memcached_st *ptr, - const char *master_key, size_t master_key_length, - const char * const *keys, - const size_t *key_length, - size_t number_of_keys); - -char * - memcached_fetch (memcached_st *ptr, - char *key, size_t *key_length, - size_t *value_length, - uint32_t *flags, - memcached_return_t *error); - -memcached_return_t - memcached_fetch_execute (memcached_st *ptr, - memcached_execute_fn *callback, - void *context, - uint32_t number_of_callbacks); - - -memcached_return_t - memcached_mget_execute (memcached_st *ptr, - const char * const *keys, - const size_t *key_length, - size_t number_of_keys, - memcached_execute_fn *callback, - void *context, - uint32_t number_of_callbacks); - -memcached_return_t - memcached_mget_execute_by_key (memcached_st *ptr, - const char *master_key, - size_t master_key_length, - const char * const *keys, - const size_t *key_length, - size_t number_of_keys, - memcached_execute_fn *callback, - void *context, - uint32_t number_of_callbacks); -.ft P -.fi -.SS DESCRIPTION +.INDENT 0.0 +.TP +.B memcached_result_st * memcached_fetch_result (memcached_st *ptr, memcached_result_st *result, memcached_return_t *error); +.UNINDENT +.INDENT 0.0 +.TP +.B char * memcached_get (memcached_st *ptr, const char *key, size_t key_length, size_t *value_length, uint32_t *flags, memcached_return_t *error); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_mget (memcached_st *ptr, const char * const *keys, const size_t *key_length, size_t number_of_keys); +.UNINDENT +.INDENT 0.0 +.TP +.B char * memcached_get_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char *key, size_t key_length, size_t *value_length, uint32_t *flags, memcached_return_t *error); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_mget_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char * const *keys, const size_t *key_length, size_t number_of_keys); +.UNINDENT +.INDENT 0.0 +.TP +.B char * memcached_fetch (memcached_st *ptr, char *key, size_t *key_length, size_t *value_length, uint32_t *flags, memcached_return_t *error); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_fetch_execute (memcached_st *ptr, memcached_execute_fn *callback, void *context, uint32_t number_of_callbacks); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_mget_execute (memcached_st *ptr, const char * const *keys, const size_t *key_length, size_t number_of_keys, memcached_execute_fn *callback, void *context, uint32_t number_of_callbacks); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_mget_execute_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char * const *keys, const size_t *key_length, size_t number_of_keys, memcached_execute_fn *callback, void *context, uint32_t number_of_callbacks); +.UNINDENT +.sp +Compile and link with \-lmemcached +.SH DESCRIPTION .sp memcached_get() is used to fetch an individual value from the server. You must pass in a key and its length to fetch the object. You must supply @@ -191,10 +154,7 @@ key allowed for the original memcached ascii server. .sp To find out more information please check: \fI\%https://launchpad.net/libmemcached\fP -.SH AUTHOR -.sp -Brian Aker, <\fI\%brian@tangent.org\fP> -.SS SEE ALSO +.SH SEE ALSO .sp \fImemcached(1)\fP \fIlibmemcached(3)\fP \fImemcached_strerror(3)\fP .SH AUTHOR diff --git a/docs/man/memcached_mget_execute_by_key.3 b/docs/man/memcached_mget_execute_by_key.3 index 82f47082..653e206c 100644 --- a/docs/man/memcached_mget_execute_by_key.3 +++ b/docs/man/memcached_mget_execute_by_key.3 @@ -1,6 +1,6 @@ .TH "MEMCACHED_MGET_EXECUTE_BY_KEY" "3" "April 09, 2011" "0.47" "libmemcached" .SH NAME -memcached_mget_execute_by_key \- libmemcached Documentation +memcached_mget_execute_by_key \- Retrieving data from the server . .nr rst2man-indent-level 0 . @@ -30,85 +30,48 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] .. .\" Man page generated from reStructeredText. . +.SH SYNOPSIS .sp -Get a value -.SH LIBRARY -.sp -C Client Library for memcached (libmemcached, \-lmemcached) -.SS SYNOPSIS -.sp -.nf -.ft C #include - -memcached_result_st * - memcached_fetch_result (memcached_st *ptr, - memcached_result_st *result, - memcached_return_t *error); - -char * - memcached_get (memcached_st *ptr, - const char *key, size_t key_length, - size_t *value_length, - uint32_t *flags, - memcached_return_t *error); - -memcached_return_t - memcached_mget (memcached_st *ptr, - const char * const *keys, - const size_t *key_length, - size_t number_of_keys); -char * - memcached_get_by_key (memcached_st *ptr, - const char *master_key, size_t master_key_length, - const char *key, size_t key_length, - size_t *value_length, - uint32_t *flags, - memcached_return_t *error); - -memcached_return_t - memcached_mget_by_key (memcached_st *ptr, - const char *master_key, size_t master_key_length, - const char * const *keys, - const size_t *key_length, - size_t number_of_keys); - -char * - memcached_fetch (memcached_st *ptr, - char *key, size_t *key_length, - size_t *value_length, - uint32_t *flags, - memcached_return_t *error); - -memcached_return_t - memcached_fetch_execute (memcached_st *ptr, - memcached_execute_fn *callback, - void *context, - uint32_t number_of_callbacks); - - -memcached_return_t - memcached_mget_execute (memcached_st *ptr, - const char * const *keys, - const size_t *key_length, - size_t number_of_keys, - memcached_execute_fn *callback, - void *context, - uint32_t number_of_callbacks); - -memcached_return_t - memcached_mget_execute_by_key (memcached_st *ptr, - const char *master_key, - size_t master_key_length, - const char * const *keys, - const size_t *key_length, - size_t number_of_keys, - memcached_execute_fn *callback, - void *context, - uint32_t number_of_callbacks); -.ft P -.fi -.SS DESCRIPTION +.INDENT 0.0 +.TP +.B memcached_result_st * memcached_fetch_result (memcached_st *ptr, memcached_result_st *result, memcached_return_t *error); +.UNINDENT +.INDENT 0.0 +.TP +.B char * memcached_get (memcached_st *ptr, const char *key, size_t key_length, size_t *value_length, uint32_t *flags, memcached_return_t *error); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_mget (memcached_st *ptr, const char * const *keys, const size_t *key_length, size_t number_of_keys); +.UNINDENT +.INDENT 0.0 +.TP +.B char * memcached_get_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char *key, size_t key_length, size_t *value_length, uint32_t *flags, memcached_return_t *error); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_mget_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char * const *keys, const size_t *key_length, size_t number_of_keys); +.UNINDENT +.INDENT 0.0 +.TP +.B char * memcached_fetch (memcached_st *ptr, char *key, size_t *key_length, size_t *value_length, uint32_t *flags, memcached_return_t *error); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_fetch_execute (memcached_st *ptr, memcached_execute_fn *callback, void *context, uint32_t number_of_callbacks); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_mget_execute (memcached_st *ptr, const char * const *keys, const size_t *key_length, size_t number_of_keys, memcached_execute_fn *callback, void *context, uint32_t number_of_callbacks); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_mget_execute_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char * const *keys, const size_t *key_length, size_t number_of_keys, memcached_execute_fn *callback, void *context, uint32_t number_of_callbacks); +.UNINDENT +.sp +Compile and link with \-lmemcached +.SH DESCRIPTION .sp memcached_get() is used to fetch an individual value from the server. You must pass in a key and its length to fetch the object. You must supply @@ -191,10 +154,7 @@ key allowed for the original memcached ascii server. .sp To find out more information please check: \fI\%https://launchpad.net/libmemcached\fP -.SH AUTHOR -.sp -Brian Aker, <\fI\%brian@tangent.org\fP> -.SS SEE ALSO +.SH SEE ALSO .sp \fImemcached(1)\fP \fIlibmemcached(3)\fP \fImemcached_strerror(3)\fP .SH AUTHOR diff --git a/docs/man/memcached_prepend.3 b/docs/man/memcached_prepend.3 index 42198263..4aa5f87d 100644 --- a/docs/man/memcached_prepend.3 +++ b/docs/man/memcached_prepend.3 @@ -1,6 +1,6 @@ .TH "MEMCACHED_PREPEND" "3" "April 09, 2011" "0.47" "libmemcached" .SH NAME -memcached_prepend \- libmemcached Documentation +memcached_prepend \- Storing and Replacing Data . .nr rst2man-indent-level 0 . @@ -32,107 +32,59 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] . .sp Store value on server -.SH LIBRARY -.sp -C Client Library for memcached (libmemcached, \-lmemcached) .SH SYNOPSIS .sp -.nf -.ft C #include - -memcached_return_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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); -.ft P -.fi +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_prepend(memcached_st\fI\ *ptr\fP, const char\fI\ *key\fP, size_t\fI\ key_length\fP, const char\fI\ *value\fP, size_t\fI\ value_length\fP, time_t\fI\ expiration\fP, uint32_t\fI\ flags\fP) +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_append(memcached_st\fI\ *ptr\fP, const char\fI\ *key\fP, size_t\fI\ key_length\fP, const char\fI\ *value\fP, size_t\fI\ value_length\fP, time_t\fI\ expiration\fP, uint32_t\fI\ flags\fP) +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.sp +Compile and link with \-lmemcached .SH DESCRIPTION .sp memcached_set(), memcached_add(), and memcached_replace() are all used to diff --git a/docs/man/memcached_prepend_by_key.3 b/docs/man/memcached_prepend_by_key.3 index 5544a112..d310a8d9 100644 --- a/docs/man/memcached_prepend_by_key.3 +++ b/docs/man/memcached_prepend_by_key.3 @@ -1,6 +1,6 @@ .TH "MEMCACHED_PREPEND_BY_KEY" "3" "April 09, 2011" "0.47" "libmemcached" .SH NAME -memcached_prepend_by_key \- libmemcached Documentation +memcached_prepend_by_key \- Storing and Replacing Data . .nr rst2man-indent-level 0 . @@ -32,107 +32,59 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] . .sp Store value on server -.SH LIBRARY -.sp -C Client Library for memcached (libmemcached, \-lmemcached) .SH SYNOPSIS .sp -.nf -.ft C #include - -memcached_return_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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); -.ft P -.fi +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_prepend(memcached_st\fI\ *ptr\fP, const char\fI\ *key\fP, size_t\fI\ key_length\fP, const char\fI\ *value\fP, size_t\fI\ value_length\fP, time_t\fI\ expiration\fP, uint32_t\fI\ flags\fP) +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_append(memcached_st\fI\ *ptr\fP, const char\fI\ *key\fP, size_t\fI\ key_length\fP, const char\fI\ *value\fP, size_t\fI\ value_length\fP, time_t\fI\ expiration\fP, uint32_t\fI\ flags\fP) +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.sp +Compile and link with \-lmemcached .SH DESCRIPTION .sp memcached_set(), memcached_add(), and memcached_replace() are all used to diff --git a/docs/man/memcached_quit.3 b/docs/man/memcached_quit.3 index f18c26cf..c0a4f8c1 100644 --- a/docs/man/memcached_quit.3 +++ b/docs/man/memcached_quit.3 @@ -30,20 +30,15 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] .. .\" Man page generated from reStructeredText. . -.sp -Disconnect from all servers -.SH LIBRARY -.sp -C Client Library for memcached (libmemcached, \-lmemcached) .SH SYNOPSIS .sp -.nf -.ft C #include - -void memcached_quit (memcached_st *ptr); -.ft P -.fi +.INDENT 0.0 +.TP +.B void memcached_quit (memcached_st *ptr); +.UNINDENT +.sp +Compile and link with \-lmemcached .SH DESCRIPTION .sp memcached_quit() will disconnect you from all currently connected servers. diff --git a/docs/man/memcached_replace.3 b/docs/man/memcached_replace.3 index 84fe39dc..3b359afb 100644 --- a/docs/man/memcached_replace.3 +++ b/docs/man/memcached_replace.3 @@ -1,6 +1,6 @@ .TH "MEMCACHED_REPLACE" "3" "April 09, 2011" "0.47" "libmemcached" .SH NAME -memcached_replace \- libmemcached Documentation +memcached_replace \- Storing and Replacing Data . .nr rst2man-indent-level 0 . @@ -32,107 +32,59 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] . .sp Store value on server -.SH LIBRARY -.sp -C Client Library for memcached (libmemcached, \-lmemcached) .SH SYNOPSIS .sp -.nf -.ft C #include - -memcached_return_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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); -.ft P -.fi +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_prepend(memcached_st\fI\ *ptr\fP, const char\fI\ *key\fP, size_t\fI\ key_length\fP, const char\fI\ *value\fP, size_t\fI\ value_length\fP, time_t\fI\ expiration\fP, uint32_t\fI\ flags\fP) +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_append(memcached_st\fI\ *ptr\fP, const char\fI\ *key\fP, size_t\fI\ key_length\fP, const char\fI\ *value\fP, size_t\fI\ value_length\fP, time_t\fI\ expiration\fP, uint32_t\fI\ flags\fP) +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.sp +Compile and link with \-lmemcached .SH DESCRIPTION .sp memcached_set(), memcached_add(), and memcached_replace() are all used to diff --git a/docs/man/memcached_replace_by_key.3 b/docs/man/memcached_replace_by_key.3 index 71cc1c97..fc3f37ae 100644 --- a/docs/man/memcached_replace_by_key.3 +++ b/docs/man/memcached_replace_by_key.3 @@ -1,6 +1,6 @@ .TH "MEMCACHED_REPLACE_BY_KEY" "3" "April 09, 2011" "0.47" "libmemcached" .SH NAME -memcached_replace_by_key \- libmemcached Documentation +memcached_replace_by_key \- Storing and Replacing Data . .nr rst2man-indent-level 0 . @@ -32,107 +32,59 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] . .sp Store value on server -.SH LIBRARY -.sp -C Client Library for memcached (libmemcached, \-lmemcached) .SH SYNOPSIS .sp -.nf -.ft C #include - -memcached_return_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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); -.ft P -.fi +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_prepend(memcached_st\fI\ *ptr\fP, const char\fI\ *key\fP, size_t\fI\ key_length\fP, const char\fI\ *value\fP, size_t\fI\ value_length\fP, time_t\fI\ expiration\fP, uint32_t\fI\ flags\fP) +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_append(memcached_st\fI\ *ptr\fP, const char\fI\ *key\fP, size_t\fI\ key_length\fP, const char\fI\ *value\fP, size_t\fI\ value_length\fP, time_t\fI\ expiration\fP, uint32_t\fI\ flags\fP) +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.sp +Compile and link with \-lmemcached .SH DESCRIPTION .sp memcached_set(), memcached_add(), and memcached_replace() are all used to diff --git a/docs/man/memcached_result_cas.3 b/docs/man/memcached_result_cas.3 index b1aa8664..5c79c7b9 100644 --- a/docs/man/memcached_result_cas.3 +++ b/docs/man/memcached_result_cas.3 @@ -1,6 +1,6 @@ .TH "MEMCACHED_RESULT_CAS" "3" "April 09, 2011" "0.47" "libmemcached" .SH NAME -memcached_result_cas \- libmemcached Documentation +memcached_result_cas \- Working with result sets . .nr rst2man-indent-level 0 . diff --git a/docs/man/memcached_result_create.3 b/docs/man/memcached_result_create.3 index 9c345c99..6d426325 100644 --- a/docs/man/memcached_result_create.3 +++ b/docs/man/memcached_result_create.3 @@ -1,6 +1,6 @@ .TH "MEMCACHED_RESULT_CREATE" "3" "April 09, 2011" "0.47" "libmemcached" .SH NAME -memcached_result_create \- libmemcached Documentation +memcached_result_create \- Working with result sets . .nr rst2man-indent-level 0 . diff --git a/docs/man/memcached_result_flags.3 b/docs/man/memcached_result_flags.3 index c9e0b65c..501b9ec9 100644 --- a/docs/man/memcached_result_flags.3 +++ b/docs/man/memcached_result_flags.3 @@ -1,6 +1,6 @@ .TH "MEMCACHED_RESULT_FLAGS" "3" "April 09, 2011" "0.47" "libmemcached" .SH NAME -memcached_result_flags \- libmemcached Documentation +memcached_result_flags \- Working with result sets . .nr rst2man-indent-level 0 . diff --git a/docs/man/memcached_result_free.3 b/docs/man/memcached_result_free.3 index 83962c03..dddf7307 100644 --- a/docs/man/memcached_result_free.3 +++ b/docs/man/memcached_result_free.3 @@ -1,6 +1,6 @@ .TH "MEMCACHED_RESULT_FREE" "3" "April 09, 2011" "0.47" "libmemcached" .SH NAME -memcached_result_free \- libmemcached Documentation +memcached_result_free \- Working with result sets . .nr rst2man-indent-level 0 . diff --git a/docs/man/memcached_result_key_length.3 b/docs/man/memcached_result_key_length.3 index c4a306b2..8a648a56 100644 --- a/docs/man/memcached_result_key_length.3 +++ b/docs/man/memcached_result_key_length.3 @@ -1,6 +1,6 @@ .TH "MEMCACHED_RESULT_KEY_LENGTH" "3" "April 09, 2011" "0.47" "libmemcached" .SH NAME -memcached_result_key_length \- libmemcached Documentation +memcached_result_key_length \- Working with result sets . .nr rst2man-indent-level 0 . diff --git a/docs/man/memcached_result_key_value.3 b/docs/man/memcached_result_key_value.3 index b3a528e1..88d0fa2a 100644 --- a/docs/man/memcached_result_key_value.3 +++ b/docs/man/memcached_result_key_value.3 @@ -1,6 +1,6 @@ .TH "MEMCACHED_RESULT_KEY_VALUE" "3" "April 09, 2011" "0.47" "libmemcached" .SH NAME -memcached_result_key_value \- libmemcached Documentation +memcached_result_key_value \- Working with result sets . .nr rst2man-indent-level 0 . diff --git a/docs/man/memcached_result_length.3 b/docs/man/memcached_result_length.3 index 8784bb65..0d28a293 100644 --- a/docs/man/memcached_result_length.3 +++ b/docs/man/memcached_result_length.3 @@ -1,6 +1,6 @@ .TH "MEMCACHED_RESULT_LENGTH" "3" "April 09, 2011" "0.47" "libmemcached" .SH NAME -memcached_result_length \- libmemcached Documentation +memcached_result_length \- Working with result sets . .nr rst2man-indent-level 0 . diff --git a/docs/man/memcached_result_st.3 b/docs/man/memcached_result_st.3 index 6fc23245..c1b418de 100644 --- a/docs/man/memcached_result_st.3 +++ b/docs/man/memcached_result_st.3 @@ -1,6 +1,6 @@ .TH "MEMCACHED_RESULT_ST" "3" "April 09, 2011" "0.47" "libmemcached" .SH NAME -memcached_result_st \- libmemcached Documentation +memcached_result_st \- Working with result sets . .nr rst2man-indent-level 0 . diff --git a/docs/man/memcached_result_value.3 b/docs/man/memcached_result_value.3 index fca0f5a4..b04a2ad0 100644 --- a/docs/man/memcached_result_value.3 +++ b/docs/man/memcached_result_value.3 @@ -1,6 +1,6 @@ .TH "MEMCACHED_RESULT_VALUE" "3" "April 09, 2011" "0.47" "libmemcached" .SH NAME -memcached_result_value \- libmemcached Documentation +memcached_result_value \- Working with result sets . .nr rst2man-indent-level 0 . diff --git a/docs/man/memcached_servers_reset.3 b/docs/man/memcached_servers_reset.3 index 6dabba78..e92ca82b 100644 --- a/docs/man/memcached_servers_reset.3 +++ b/docs/man/memcached_servers_reset.3 @@ -32,9 +32,6 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] . .sp Create a memcached_st structure -.SH LIBRARY -.sp -C Client Library for memcached (libmemcached, \-lmemcached) .SH SYNOPSIS .sp #include @@ -54,6 +51,8 @@ C Client Library for memcached (libmemcached, \-lmemcached) .TP .B void memcached_servers_reset(memcached_st); .UNINDENT +.sp +Compile and link with \-lmemcached .SH DESCRIPTION .sp memcached_create() is used to create a \fBmemcached_st\fP structure that will then diff --git a/docs/man/memcached_set.3 b/docs/man/memcached_set.3 index 298980cc..048dc42b 100644 --- a/docs/man/memcached_set.3 +++ b/docs/man/memcached_set.3 @@ -1,6 +1,6 @@ .TH "MEMCACHED_SET" "3" "April 09, 2011" "0.47" "libmemcached" .SH NAME -memcached_set \- libmemcached Documentation +memcached_set \- Storing and Replacing Data . .nr rst2man-indent-level 0 . @@ -32,107 +32,59 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] . .sp Store value on server -.SH LIBRARY -.sp -C Client Library for memcached (libmemcached, \-lmemcached) .SH SYNOPSIS .sp -.nf -.ft C #include - -memcached_return_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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); -.ft P -.fi +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_prepend(memcached_st\fI\ *ptr\fP, const char\fI\ *key\fP, size_t\fI\ key_length\fP, const char\fI\ *value\fP, size_t\fI\ value_length\fP, time_t\fI\ expiration\fP, uint32_t\fI\ flags\fP) +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_append(memcached_st\fI\ *ptr\fP, const char\fI\ *key\fP, size_t\fI\ key_length\fP, const char\fI\ *value\fP, size_t\fI\ value_length\fP, time_t\fI\ expiration\fP, uint32_t\fI\ flags\fP) +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.sp +Compile and link with \-lmemcached .SH DESCRIPTION .sp memcached_set(), memcached_add(), and memcached_replace() are all used to diff --git a/docs/man/memcached_set_by_key.3 b/docs/man/memcached_set_by_key.3 index e6b13508..8c870cbe 100644 --- a/docs/man/memcached_set_by_key.3 +++ b/docs/man/memcached_set_by_key.3 @@ -1,6 +1,6 @@ .TH "MEMCACHED_SET_BY_KEY" "3" "April 09, 2011" "0.47" "libmemcached" .SH NAME -memcached_set_by_key \- libmemcached Documentation +memcached_set_by_key \- Storing and Replacing Data . .nr rst2man-indent-level 0 . @@ -32,107 +32,59 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] . .sp Store value on server -.SH LIBRARY -.sp -C Client Library for memcached (libmemcached, \-lmemcached) .SH SYNOPSIS .sp -.nf -.ft C #include - -memcached_return_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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); -.ft P -.fi +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_prepend(memcached_st\fI\ *ptr\fP, const char\fI\ *key\fP, size_t\fI\ key_length\fP, const char\fI\ *value\fP, size_t\fI\ value_length\fP, time_t\fI\ expiration\fP, uint32_t\fI\ flags\fP) +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t memcached_append(memcached_st\fI\ *ptr\fP, const char\fI\ *key\fP, size_t\fI\ key_length\fP, const char\fI\ *value\fP, size_t\fI\ value_length\fP, time_t\fI\ expiration\fP, uint32_t\fI\ flags\fP) +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.INDENT 0.0 +.TP +.B memcached_return_t 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); +.UNINDENT +.sp +Compile and link with \-lmemcached .SH DESCRIPTION .sp memcached_set(), memcached_add(), and memcached_replace() are all used to diff --git a/docs/memcached_auto.rst b/docs/memcached_auto.rst index 1f35e4e7..39b4247a 100644 --- a/docs/memcached_auto.rst +++ b/docs/memcached_auto.rst @@ -1,95 +1,34 @@ -========================================================= -Incrementing and Decrementing values stored in the server -========================================================= +==================================== +Incrementing and Decrementing Values +==================================== -Manipulate counters +-------- +SYNOPSIS +-------- -******* -LIBRARY -******* -C Client Library for memcached (libmemcached, -lmemcached) +#include + +.. c:function:: memcached_return_t memcached_increment (memcached_st *ptr, const char *key, size_t key_length, unsigned int offset, uint64_t *value); +.. c:function:: memcached_return_t memcached_decrement (memcached_st *ptr, const char *key, size_t key_length, unsigned int offset, uint64_t *value); --------- -SYNOPSIS --------- +.. c:function:: memcached_return_t memcached_increment_with_initial (memcached_st *ptr, const char *key, size_t key_length, uint64_t offset, uint64_t initial, time_t expiration, uint64_t *value); +.. c:function:: memcached_return_t memcached_decrement_with_initial (memcached_st *ptr, const char *key, size_t key_length, uint64_t offset, uint64_t initial, time_t expiration, uint64_t *value); +.. c:function:: memcached_return_t memcached_increment_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char *key, size_t key_length, unsigned int offset, uint64_t *value); -.. code-block:: perl +.. c:function:: memcached_return_t memcached_decrement_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char *key, size_t key_length, unsigned int offset, uint64_t *value); - #include - - memcached_return_t - memcached_increment (memcached_st *ptr, - const char *key, size_t key_length, - unsigned int offset, - uint64_t *value); - - memcached_return_t - memcached_decrement (memcached_st *ptr, - const char *key, size_t key_length, - unsigned int offset, - uint64_t *value); - - memcached_return_t - memcached_increment_with_initial (memcached_st *ptr, - const char *key, - size_t key_length, - uint64_t offset, - uint64_t initial, - time_t expiration, - uint64_t *value); - - memcached_return_t - memcached_decrement_with_initial (memcached_st *ptr, - const char *key, - size_t key_length, - uint64_t offset, - uint64_t initial, - time_t expiration, - uint64_t *value); - - memcached_return_t - memcached_increment_by_key (memcached_st *ptr, - const char *master_key, size_t master_key_length, - const char *key, size_t key_length, - unsigned int offset, - uint64_t *value); - - memcached_return_t - memcached_decrement_by_key (memcached_st *ptr, - const char *master_key, size_t master_key_length, - const char *key, size_t key_length, - unsigned int offset, - uint64_t *value); - - memcached_return_t - memcached_increment_with_initial_by_key (memcached_st *ptr, - const char *master_key, - size_t master_key_length, - const char *key, - size_t key_length, - uint64_t offset, - uint64_t initial, - time_t expiration, - uint64_t *value); - - memcached_return_t - memcached_decrement_with_initial_by_key (memcached_st *ptr, - const char *master_key, - size_t master_key_length, - const char *key, - size_t key_length, - uint64_t offset, - uint64_t initial, - time_t expiration, - uint64_t *value); +.. c:function:: memcached_return_t memcached_increment_with_initial_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char *key, size_t key_length, uint64_t offset, uint64_t initial, time_t expiration, uint64_t *value); +.. c:function:: memcached_return_t memcached_decrement_with_initial_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char *key, size_t key_length, uint64_t offset, uint64_t initial, time_t expiration, uint64_t *value); + +Compile and link with -lmemcached ----------- @@ -97,7 +36,7 @@ DESCRIPTION ----------- -memcached(1) servers have the ability to increment and decrement keys +:manpage:`memcached(1)` servers have the ability to increment and decrement keys (overflow and underflow are not detected). This gives you the ability to use memcached to generate shared sequences of values. @@ -133,9 +72,9 @@ memcached_decrement_with_initial_by_key() are master key equivalents of the above. -****** +------ RETURN -****** +------ A value of type \ ``memcached_return_t``\ is returned. @@ -143,23 +82,15 @@ On success that value will be \ ``MEMCACHED_SUCCESS``\ . Use memcached_strerror() to translate this value to a printable string. -**** +---- HOME -**** +---- To find out more information please check: `https://launchpad.net/libmemcached `_ -****** -AUTHOR -****** - - -Brian Aker, - - -------- SEE ALSO -------- diff --git a/docs/memcached_behavior.rst b/docs/memcached_behavior.rst index 46b43e7c..e70b3d93 100644 --- a/docs/memcached_behavior.rst +++ b/docs/memcached_behavior.rst @@ -6,9 +6,9 @@ Modifying how the driver behaves Manipulate behavior -******* +------- LIBRARY -******* +------- C Client Library for memcached (libmemcached, -lmemcached) @@ -19,19 +19,11 @@ SYNOPSIS -------- - -.. code-block:: perl - - #include +#include - uint64_t - memcached_behavior_get (memcached_st *ptr, - memcached_behavior flag); - - memcached_return_t - memcached_behavior_set (memcached_st *ptr, - memcached_behavior flag, - uint64_t data); +.. c:function:: uint64_t memcached_behavior_get (memcached_st *ptr, memcached_behavior flag); + +.. c:function:: memcached_return_t memcached_behavior_set (memcached_st *ptr, memcached_behavior flag, uint64_t data); @@ -39,8 +31,7 @@ SYNOPSIS DESCRIPTION ----------- - -libmemcached(3) behavior can be modified by use memcached_behavior_set(). +:manpage:`libmemcached(3)` behavior can be modified by use memcached_behavior_set(). Default behavior is the library strives to be quick and accurate. Some behavior, while being faster, can also result in not entirely accurate behavior (for instance, memcached_set() will always respond with @@ -55,312 +46,229 @@ off options you just need to pass in a value of 1. Calls to memcached_behavior_set() will flush and reset all connections. -MEMCACHED_BEHAVIOR_USE_UDP - - Causes libmemcached(3) to use the UDP transport when communicating - with a memcached server. Not all I/O operations are testsed - when this behavior is enababled. The following operations will return - \ ``MEMCACHED_NOT_SUPPORTED``\ when executed with the MEMCACHED_BEHAVIOR_USE_UDP - enabled: memcached_version(), memcached_stat(), memcached_get(), - memcached_get_by_key(), memcached_mget(), memcached_mget_by_key(), - memcached_fetch(), memcached_fetch_result(), memcached_value_fetch(). - - All other operations are testsed but are executed in a 'fire-and-forget' - mode, in which once the client has executed the operation, no attempt - will be made to ensure the operation has been received and acted on by the - server. - - libmemcached(3) does not allow TCP and UDP servers to be shared within - the same libmemached(3) client 'instance'. An attempt to add a TCP server - when this behavior is enabled will result in a \ ``MEMCACHED_INVALID_HOST_PROTOCOL``\ , - as will attempting to add a UDP server when this behavior has not been enabled. - +.. c:var:: MEMCACHED_BEHAVIOR_USE_UDP +Causes :manpage:`libmemcached(3)` to use the UDP transport when communicating +with a memcached server. Not all I/O operations are testsed +when this behavior is enababled. The following operations will return +\ ``MEMCACHED_NOT_SUPPORTED``\ when executed with the MEMCACHED_BEHAVIOR_USE_UDP +enabled: memcached_version(), memcached_stat(), memcached_get(), +memcached_get_by_key(), memcached_mget(), memcached_mget_by_key(), +memcached_fetch(), memcached_fetch_result(), memcached_value_fetch(). -MEMCACHED_BEHAVIOR_NO_BLOCK - - Causes libmemcached(3) to use asychronous IO. This is the fastest transport - available for storage functions. - +All other operations are testsed but are executed in a 'fire-and-forget' +mode, in which once the client has executed the operation, no attempt +will be made to ensure the operation has been received and acted on by the +server. +:manpage:`libmemcached(3)` does not allow TCP and UDP servers to be shared within +the same libmemached(3) client 'instance'. An attempt to add a TCP server +when this behavior is enabled will result in a \ ``MEMCACHED_INVALID_HOST_PROTOCOL``\ , +as will attempting to add a UDP server when this behavior has not been enabled. -MEMCACHED_BEHAVIOR_SND_TIMEOUT - - This sets the microsecond behavior of the socket against the SO_SNDTIMEO flag. - In cases where you cannot use non-blocking IO this will allow you to still have - timeouts on the sending of data. - -MEMCACHED_BEHAVIOR_RCV_TIMEOUT - - This sets the microsecond behavior of the socket against the SO_RCVTIMEO flag. - In cases where you cannot use non-blocking IO this will allow you to still have - timeouts on the reading of data. - +.. c:var:: MEMCACHED_BEHAVIOR_NO_BLOCK +Causes :manpage:`libmemcached(3)` to use asychronous IO. This is the fastest transport +available for storage functions. -MEMCACHED_BEHAVIOR_TCP_NODELAY - - Turns on the no-delay feature for connecting sockets (may be faster in some - environments). - +.. c:var:: MEMCACHED_BEHAVIOR_SND_TIMEOUT -MEMCACHED_BEHAVIOR_HASH - - Makes the default hashing algorithm for keys use MD5. The value can be set - to either MEMCACHED_HASH_DEFAULT, MEMCACHED_HASH_MD5, MEMCACHED_HASH_CRC, MEMCACHED_HASH_FNV1_64, MEMCACHED_HASH_FNV1A_64, MEMCACHED_HASH_FNV1_32, MEMCACHED_HASH_FNV1A_32, MEMCACHED_HASH_JENKINS, MEMCACHED_HASH_HSIEH, and MEMCACHED_HASH_MURMUR. - Each hash has it's advantages and it's weaknesses. If you don't know or don't care, just go with the default. - Support for MEMCACHED_HASH_HSIEH is a compile time option that is disabled by default. To enable tests for this hashing algorithm, configure and build libmemcached with the --enable-hash_hsieh. - +This sets the microsecond behavior of the socket against the SO_SNDTIMEO flag. In cases where you cannot use non-blocking IO this will allow you to still have timeouts on the sending of data. -MEMCACHED_BEHAVIOR_DISTRIBUTION - - Using this you can enable different means of distributing values to servers. - The default method is MEMCACHED_DISTRIBUTION_MODULA. You can enable - consistent hashing by setting MEMCACHED_DISTRIBUTION_CONSISTENT. - Consistent hashing delivers better distribution and allows servers to be - added to the cluster with minimal cache losses. Currently - MEMCACHED_DISTRIBUTION_CONSISTENT is an alias for the value - MEMCACHED_DISTRIBUTION_CONSISTENT_KETAMA. - +.. c:var:: MEMCACHED_BEHAVIOR_RCV_TIMEOUT +This sets the microsecond behavior of the socket against the SO_RCVTIMEO flag. -MEMCACHED_BEHAVIOR_CACHE_LOOKUPS - - Memcached can cache named lookups so that DNS lookups are made only once. - +In cases where you cannot use non-blocking IO this will allow you to still have timeouts on the reading of data. -MEMCACHED_BEHAVIOR_SUPPORT_CAS - - Support CAS operations (this is not enabled by default at this point in the server since it imposes a slight performance penalty). - +.. c:var:: MEMCACHED_BEHAVIOR_TCP_NODELAY -MEMCACHED_BEHAVIOR_KETAMA - - Sets the default distribution to MEMCACHED_DISTRIBUTION_CONSISTENT_KETAMA - and the hash to MEMCACHED_HASH_MD5. - +Turns on the no-delay feature for connecting sockets (may be faster in some +environments). -MEMCACHED_BEHAVIOR_KETAMA_WEIGHTED - - Sets the default distribution to MEMCACHED_DISTRIBUTION_CONSISTENT_KETAMA with the weighted tests. - and the hash to MEMCACHED_HASH_MD5. - +.. c:var:: MEMCACHED_BEHAVIOR_HASH -MEMCACHED_BEHAVIOR_KETAMA_HASH - - Sets the hashing algorithm for host mapping on continuum. The value can be set - to either MEMCACHED_HASH_DEFAULT, MEMCACHED_HASH_MD5, MEMCACHED_HASH_CRC, MEMCACHED_HASH_FNV1_64, MEMCACHED_HASH_FNV1A_64, MEMCACHED_HASH_FNV1_32, and MEMCACHED_HASH_FNV1A_32. - +Makes the default hashing algorithm for keys use MD5. The value can be set to either MEMCACHED_HASH_DEFAULT, MEMCACHED_HASH_MD5, MEMCACHED_HASH_CRC, MEMCACHED_HASH_FNV1_64, MEMCACHED_HASH_FNV1A_64, MEMCACHED_HASH_FNV1_32, MEMCACHED_HASH_FNV1A_32, MEMCACHED_HASH_JENKINS, MEMCACHED_HASH_HSIEH, and MEMCACHED_HASH_MURMUR. +Each hash has it's advantages and it's weaknesses. If you don't know or don't care, just go with the default. -MEMCACHED_BEHAVIOR_KETAMA_COMPAT - - 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. - +Support for MEMCACHED_HASH_HSIEH is a compile time option that is disabled by default. To enable tests for this hashing algorithm, configure and build libmemcached with the --enable-hash_hsieh. -MEMCACHED_BEHAVIOR_POLL_TIMEOUT - - Modify the timeout value that is used by poll(). The default value is -1. An signed int pointer must be passed to memcached_behavior_set() to change this value. For memcached_behavior_get() a signed int value will be cast and returned as the unsigned long long. - +.. c:var:: MEMCACHED_BEHAVIOR_DISTRIBUTION -MEMCACHED_BEHAVIOR_USER_DATA - - This allows you to store a pointer to a specifc piece of data. This can be - retrieved from inside of memcached_fetch_execute(). Cloning a memcached_st - - will copy the pointer to the clone. This was deprecated in 0.14 in favor - of memcached_callback_set(3). This will be removed in 0.15. - +Using this you can enable different means of distributing values to servers. +The default method is MEMCACHED_DISTRIBUTION_MODULA. You can enable consistent hashing by setting MEMCACHED_DISTRIBUTION_CONSISTENT. Consistent hashing delivers better distribution and allows servers to be added to the cluster with minimal cache losses. Currently MEMCACHED_DISTRIBUTION_CONSISTENT is an alias for the value MEMCACHED_DISTRIBUTION_CONSISTENT_KETAMA. -MEMCACHED_BEHAVIOR_BUFFER_REQUESTS - - 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. - +.. c:var:: MEMCACHED_BEHAVIOR_CACHE_LOOKUPS +DEPRECATED. Memcached can cache named lookups so that DNS lookups are made only once. -MEMCACHED_BEHAVIOR_VERIFY_KEY - - Enabling this will cause libmemcached(3) to test all keys to verify that they - are valid keys. - +.. c:var:: MEMCACHED_BEHAVIOR_SUPPORT_CAS +Support CAS operations (this is not enabled by default at this point in the server since it imposes a slight performance penalty). -MEMCACHED_BEHAVIOR_SORT_HOSTS - - Enabling this will cause hosts that are added to be placed in the host list in - sorted order. This will defeat consisten hashing. - +.. c:var:: MEMCACHED_BEHAVIOR_KETAMA -MEMCACHED_BEHAVIOR_CONNECT_TIMEOUT - - In non-blocking mode this changes the value of the timeout during socket - connection. - +Sets the default distribution to MEMCACHED_DISTRIBUTION_CONSISTENT_KETAMA and the hash to MEMCACHED_HASH_MD5. -MEMCACHED_BEHAVIOR_BINARY_PROTOCOL - - Enable the use of the binary protocol. Please note that you cannot toggle - this flag on an open connection. - +.. c:var:: MEMCACHED_BEHAVIOR_KETAMA_WEIGHTED +Sets the default distribution to MEMCACHED_DISTRIBUTION_CONSISTENT_KETAMA with the weighted tests. and the hash to MEMCACHED_HASH_MD5. -MEMCACHED_BEHAVIOR_SERVER_FAILURE_LIMIT - - Set this value to enable the server be removed after continuous MEMCACHED_BEHAVIOR_SERVER_FAILURE_LIMIT - times connection failure. - +.. c:var:: MEMCACHED_BEHAVIOR_KETAMA_HASH +Sets the hashing algorithm for host mapping on continuum. The value can be set to either MEMCACHED_HASH_DEFAULT, MEMCACHED_HASH_MD5, MEMCACHED_HASH_CRC, MEMCACHED_HASH_FNV1_64, MEMCACHED_HASH_FNV1A_64, MEMCACHED_HASH_FNV1_32, and MEMCACHED_HASH_FNV1A_32. -MEMCACHED_BEHAVIOR_IO_MSG_WATERMARK - - 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). - +.. c:var:: MEMCACHED_BEHAVIOR_KETAMA_COMPAT +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. -MEMCACHED_BEHAVIOR_IO_BYTES_WATERMARK - - 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). - +.. c:var:: MEMCACHED_BEHAVIOR_POLL_TIMEOUT +Modify the timeout value that is used by poll(). The default value is -1. An signed int pointer must be passed to memcached_behavior_set() to change this value. For memcached_behavior_get() a signed int value will be cast and returned as the unsigned long long. -MEMCACHED_BEHAVIOR_IO_KEY_PREFETCH - - 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. - +.. c:var:: MEMCACHED_BEHAVIOR_USER_DATA +DEPRECATED -MEMCACHED_BEHAVIOR_NOREPLY - - Set this value to specify that you really don't care about the result - from your storage commands (set, add, replace, append, prepend). - +.. c:var:: MEMCACHED_BEHAVIOR_BUFFER_REQUESTS +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. -MEMCACHED_BEHAVIOR_NUMBER_OF_REPLICAS - - 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). - +.. c:var:: MEMCACHED_BEHAVIOR_VERIFY_KEY -MEMCACHED_BEHAVIOR_RANDOMIZE_REPLICA_READ - - 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. - +Enabling this will cause :manpage:`libmemcached(3)` to test all keys to verify that they are valid keys. -MEMCACHED_BEHAVIOR_CORK - - Enable TCP_CORK behavior. This is only available as an option Linux. - MEMCACHED_NO_SERVERS is returned if no servers are available to test with. - MEMCACHED_NOT_SUPPORTED is returned if we were not able to determine - if tests was available. All other responses then MEMCACHED_SUCCESS - report an error of some sort. This behavior also enables - MEMCACHED_BEHAVIOR_TCP_NODELAY when set. - +.. c:var:: MEMCACHED_BEHAVIOR_SORT_HOSTS -MEMCACHED_BEHAVIOR_KEEPALIVE - - Enable TCP_KEEPALIVE behavior. - +Enabling this will cause hosts that are added to be placed in the host list in sorted order. This will defeat consisten hashing. -MEMCACHED_BEHAVIOR_KEEPALIVE_IDLE - - Specify time, in seconds, to mark a connection as idle. This is only available as an option Linux. - +.. c:var:: MEMCACHED_BEHAVIOR_CONNECT_TIMEOUT -MEMCACHED_BEHAVIOR_SOCKET_SEND_SIZE - - Find the current size of SO_SNDBUF. A value of 0 means either an error - occured 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. - +In non-blocking mode this changes the value of the timeout during socket connection. -MEMCACHED_BEHAVIOR_SOCKET_RECV_SIZE - - Find the current size of SO_RCVBUF. A value of 0 means either an error - occured 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. + +.. c:var:: MEMCACHED_BEHAVIOR_BINARY_PROTOCOL + +Enable the use of the binary protocol. Please note that you cannot toggle this flag on an open connection. + + + +.. c:var:: MEMCACHED_BEHAVIOR_SERVER_FAILURE_LIMIT + +Set this value to enable the server be removed after continuous MEMCACHED_BEHAVIOR_SERVER_FAILURE_LIMIT times connection failure. + + + +.. c:var:: MEMCACHED_BEHAVIOR_IO_MSG_WATERMARK + +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). + + + +.. c:var:: MEMCACHED_BEHAVIOR_IO_BYTES_WATERMARK + +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). + + + +.. c:var:: MEMCACHED_BEHAVIOR_IO_KEY_PREFETCH + +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. + + + +.. c:var:: MEMCACHED_BEHAVIOR_NOREPLY + +Set this value to specify that you really don't care about the result from your storage commands (set, add, replace, append, prepend). + + + +.. c:var:: MEMCACHED_BEHAVIOR_NUMBER_OF_REPLICAS + +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). + + + +.. c:var:: MEMCACHED_BEHAVIOR_RANDOMIZE_REPLICA_READ + +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. + + + +.. c:var:: MEMCACHED_BEHAVIOR_CORK + +This open has been deprecated with the behavior now built and used appropriately on selected platforms. + + +.. c:var:: MEMCACHED_BEHAVIOR_KEEPALIVE + +Enable TCP_KEEPALIVE behavior. -MEMCACHED_BEHAVIOR_SERVER_FAILURE_LIMIT +.. c:var:: MEMCACHED_BEHAVIOR_KEEPALIVE_IDLE - This number of times a host can have an error before it is disabled. +Specify time, in seconds, to mark a connection as idle. This is only available as an option Linux. +.. c:var:: MEMCACHED_BEHAVIOR_SOCKET_SEND_SIZE + +Find the current size of SO_SNDBUF. A value of 0 means either an error occured 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. + -MEMCACHED_BEHAVIOR_AUTO_EJECT_HOSTS +.. c:var:: MEMCACHED_BEHAVIOR_SOCKET_RECV_SIZE - 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. +Find the current size of SO_RCVBUF. A value of 0 means either an error occured 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. +.. c:var:: MEMCACHED_BEHAVIOR_SERVER_FAILURE_LIMIT + +DEPRECATED, please see MEMCACHED_BEHAVIOR_REMOVE_FAILED_SERVERS. This number of times a host can have an error before it is disabled. + -MEMCACHED_BEHAVIOR_RETRY_TIMEOUT +.. c:var:: MEMCACHED_BEHAVIOR_AUTO_EJECT_HOSTS - When enabled a host which is problematic will only be checked for usage - based on the amount of time set by this behavior. +DEPRECATED, please see MEMCACHED_BEHAVIOR_REMOVE_FAILED_SERVERS. 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. + +.. c:var:: MEMCACHED_BEHAVIOR_REMOVE_FAILED_SERVERS + +If enabled any hosts which have been flagged as disabled will be removed from the list of servers in the memcached_st structure. + +.. c:var:: MEMCACHED_BEHAVIOR_RETRY_TIMEOUT +When enabled a host which is problematic will only be checked for usage based on the amount of time set by this behavior. -MEMCACHED_BEHAVIOR_HASH_WITH_PREFIX_KEY +.. c:var:: MEMCACHED_BEHAVIOR_HASH_WITH_PREFIX_KEY - When enabled the prefix key will be added to the key when determining - server by hash. +When enabled the prefix key will be added to the key when determining server by hash. -****** +------ RETURN -****** +------ memcached_behavior_get() returns either the current value of the get, or 0 @@ -368,31 +276,24 @@ or 1 on simple flag behaviors (1 being enabled). memcached_behavior_set() returns failure or success. -***** +----- NOTES -***** +----- memcached_behavior_set() in version .17 was changed from taking a pointer to data value, to taking a uin64_t. -**** +---- HOME -**** +---- To find out more information please check: `https://launchpad.net/libmemcached `_ -****** -AUTHOR -****** - - -Brian Aker, - -------- SEE ALSO diff --git a/docs/memcached_create.rst b/docs/memcached_create.rst index c63bd761..228dd570 100644 --- a/docs/memcached_create.rst +++ b/docs/memcached_create.rst @@ -6,14 +6,6 @@ Creating and destroying a memcached_st Create a memcached_st structure -------- -LIBRARY -------- - - -C Client Library for memcached (libmemcached, -lmemcached) - - -------- SYNOPSIS -------- @@ -28,7 +20,7 @@ SYNOPSIS .. c:function:: void memcached_servers_reset(memcached_st); - +Compile and link with -lmemcached ----------- DESCRIPTION diff --git a/docs/memcached_delete.rst b/docs/memcached_delete.rst index 1c8acaf9..85ecef7e 100644 --- a/docs/memcached_delete.rst +++ b/docs/memcached_delete.rst @@ -2,33 +2,18 @@ Deleting data from a server =========================== - -Delete a key - - -------- -LIBRARY -------- - - -C Client Library for memcached (libmemcached, -lmemcached) - - -------- SYNOPSIS -------- - -.. code-block:: perl - - #include - - memcached_return_t memcached_delete (memcached_st *ptr, const char *key, size_t key_length, time_t expiration); +#include - memcached_return_t memcached_delete_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char *key, size_t key_length, time_t expiration); +.. c:function:: memcached_return_t memcached_delete (memcached_st *ptr, const char *key, size_t key_length, time_t expiration); +.. c:function:: memcached_return_t memcached_delete_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char *key, size_t key_length, time_t expiration); +Compile and link with -lmemcached ----------- DESCRIPTION diff --git a/docs/memcached_flush.rst b/docs/memcached_flush.rst index 3852366e..a1886660 100644 --- a/docs/memcached_flush.rst +++ b/docs/memcached_flush.rst @@ -6,28 +6,16 @@ Wiping clean the contents of a server Wipe contents of memcached servers -------- -LIBRARY -------- - - -C Client Library for memcached (libmemcached, -lmemcached) - - -------- SYNOPSIS -------- - -.. code-block:: perl - - #include +#include - memcached_return_t - memcached_flush (memcached_st *ptr, - time_t expiration); +.. c:function:: memcached_return_t memcached_flush (memcached_st *ptr, time_t expiration); +Compile and link with -lmemcached ----------- diff --git a/docs/memcached_generate_hash_value.rst b/docs/memcached_generate_hash_value.rst index eb213c9b..116bfd2b 100644 --- a/docs/memcached_generate_hash_value.rst +++ b/docs/memcached_generate_hash_value.rst @@ -6,34 +6,18 @@ Generating hash values directly Hash a key value -------- -LIBRARY -------- - - -C Client Library for memcached (libmemcached, -lmemcached) - - --------- -SYNOPSIS +-------- +SYNOPSIS -------- - -.. code-block:: perl - - #include +#include - uint32_t - memcached_generate_hash_value (const char *key, - size_t key_length, - memcached_hash_t hash_algorithm); - - uint32_t - memcached_generate_hash (memcached_st *ptr, - const char *key, - size_t key_length); +.. c:function:: uint32_t memcached_generate_hash_value (const char *key, size_t key_length, memcached_hash_t hash_algorithm); + +.. c:function:: uint32_t memcached_generate_hash (memcached_st *ptr, const char *key, size_t key_length); +Compile and link with -lmemcachedutil -lmemcached ----------- diff --git a/docs/memcached_get.rst b/docs/memcached_get.rst index 5f62532c..ea0c6355 100644 --- a/docs/memcached_get.rst +++ b/docs/memcached_get.rst @@ -3,93 +3,32 @@ Retrieving data from the server =============================== -Get a value +-------- +SYNOPSIS +-------- -******* -LIBRARY -******* +#include + +.. c:function:: memcached_result_st * memcached_fetch_result (memcached_st *ptr, memcached_result_st *result, memcached_return_t *error); +.. c:function:: char * memcached_get (memcached_st *ptr, const char *key, size_t key_length, size_t *value_length, uint32_t *flags, memcached_return_t *error); -C Client Library for memcached (libmemcached, -lmemcached) +.. c:function:: memcached_return_t memcached_mget (memcached_st *ptr, const char * const *keys, const size_t *key_length, size_t number_of_keys); +.. c:function:: char * memcached_get_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char *key, size_t key_length, size_t *value_length, uint32_t *flags, memcached_return_t *error); --------- -SYNOPSIS --------- +.. c:function:: memcached_return_t memcached_mget_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char * const *keys, const size_t *key_length, size_t number_of_keys); +.. c:function:: char * memcached_fetch (memcached_st *ptr, char *key, size_t *key_length, size_t *value_length, uint32_t *flags, memcached_return_t *error); +.. c:function:: memcached_return_t memcached_fetch_execute (memcached_st *ptr, memcached_execute_fn *callback, void *context, uint32_t number_of_callbacks); -.. code-block:: perl +.. c:function:: memcached_return_t memcached_mget_execute (memcached_st *ptr, const char * const *keys, const size_t *key_length, size_t number_of_keys, memcached_execute_fn *callback, void *context, uint32_t number_of_callbacks); - #include - - memcached_result_st * - memcached_fetch_result (memcached_st *ptr, - memcached_result_st *result, - memcached_return_t *error); - - char * - memcached_get (memcached_st *ptr, - const char *key, size_t key_length, - size_t *value_length, - uint32_t *flags, - memcached_return_t *error); - - memcached_return_t - memcached_mget (memcached_st *ptr, - const char * const *keys, - const size_t *key_length, - size_t number_of_keys); - char * - memcached_get_by_key (memcached_st *ptr, - const char *master_key, size_t master_key_length, - const char *key, size_t key_length, - size_t *value_length, - uint32_t *flags, - memcached_return_t *error); - - memcached_return_t - memcached_mget_by_key (memcached_st *ptr, - const char *master_key, size_t master_key_length, - const char * const *keys, - const size_t *key_length, - size_t number_of_keys); - - char * - memcached_fetch (memcached_st *ptr, - char *key, size_t *key_length, - size_t *value_length, - uint32_t *flags, - memcached_return_t *error); - - memcached_return_t - memcached_fetch_execute (memcached_st *ptr, - memcached_execute_fn *callback, - void *context, - uint32_t number_of_callbacks); - - - memcached_return_t - memcached_mget_execute (memcached_st *ptr, - const char * const *keys, - const size_t *key_length, - size_t number_of_keys, - memcached_execute_fn *callback, - void *context, - uint32_t number_of_callbacks); - - memcached_return_t - memcached_mget_execute_by_key (memcached_st *ptr, - const char *master_key, - size_t master_key_length, - const char * const *keys, - const size_t *key_length, - size_t number_of_keys, - memcached_execute_fn *callback, - void *context, - uint32_t number_of_callbacks); +.. c:function:: memcached_return_t memcached_mget_execute_by_key (memcached_st *ptr, const char *master_key, size_t master_key_length, const char * const *keys, const size_t *key_length, size_t number_of_keys, memcached_execute_fn *callback, void *context, uint32_t number_of_callbacks); +Compile and link with -lmemcached ----------- @@ -168,9 +107,9 @@ a \ ``memcached_return_t``\ , the error function parameter will be set to \ ``MEMCACHED_NOT_SUPPORTED``\ . -****** +------ RETURN -****** +------ All objects returned must be freed by the calling application. @@ -182,22 +121,15 @@ and the key was set larger then MEMCACHED_MAX_KEY, which was the largest key allowed for the original memcached ascii server. -**** +---- HOME -**** +---- To find out more information please check: `https://launchpad.net/libmemcached `_ -****** -AUTHOR -****** - - -Brian Aker, - -------- SEE ALSO diff --git a/docs/memcached_quit.rst b/docs/memcached_quit.rst index 5048f456..58c9f8eb 100644 --- a/docs/memcached_quit.rst +++ b/docs/memcached_quit.rst @@ -3,30 +3,15 @@ Disconnecting a client from a server ==================================== -Disconnect from all servers - - -------- -LIBRARY -------- - - -C Client Library for memcached (libmemcached, -lmemcached) - - -------- SYNOPSIS -------- - - -.. code-block:: perl - - #include +#include - void memcached_quit (memcached_st *ptr); - +.. c:function:: void memcached_quit (memcached_st *ptr); +Compile and link with -lmemcached ----------- DESCRIPTION diff --git a/docs/memcached_set.rst b/docs/memcached_set.rst index 099d1559..2d026fa7 100644 --- a/docs/memcached_set.rst +++ b/docs/memcached_set.rst @@ -6,115 +6,39 @@ Storing and Replacing Data Store value on server -------- -LIBRARY -------- +-------- +SYNOPSIS +-------- -C Client Library for memcached (libmemcached, -lmemcached) +#include + +.. c:function:: memcached_return_t 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); --------- -SYNOPSIS --------- +.. c:function:: memcached_return_t 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); +.. c:function:: memcached_return_t 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); +.. c:function:: memcached_return_t 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) -.. code-block:: perl +.. c:function:: memcached_return_t 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) - #include - - memcached_return_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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_t - 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); +.. c:function:: memcached_return_t 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); + +.. c:function:: memcached_return_t 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); + +.. c:function:: memcached_return_t 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); + +.. c:function:: memcached_return_t 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); + +.. c:function:: memcached_return_t 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); + +.. c:function:: memcached_return_t 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); + +.. c:function:: memcached_return_t 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); +Compile and link with -lmemcached ----------- diff --git a/libmemcached/behavior.c b/libmemcached/behavior.c index 1480fdf5..91e33a0b 100644 --- a/libmemcached/behavior.c +++ b/libmemcached/behavior.c @@ -51,9 +51,13 @@ memcached_return_t memcached_behavior_set(memcached_st *ptr, case MEMCACHED_BEHAVIOR_RCV_TIMEOUT: ptr->rcv_timeout= (int32_t)data; break; + + case MEMCACHED_BEHAVIOR_REMOVE_FAILED_SERVERS: + ptr->flags.auto_eject_hosts= set_flag(data); case MEMCACHED_BEHAVIOR_SERVER_FAILURE_LIMIT: ptr->server_failure_limit= (uint32_t)data; break; + case MEMCACHED_BEHAVIOR_BINARY_PROTOCOL: send_quit(ptr); // We need t shutdown all of the connections to make sure we do the correct protocol if (data) @@ -236,6 +240,7 @@ uint64_t memcached_behavior_get(memcached_st *ptr, return hashkit_get_function(&ptr->hashkit); case MEMCACHED_BEHAVIOR_KETAMA_HASH: return hashkit_get_function(&ptr->distribution_hashkit); + case MEMCACHED_BEHAVIOR_REMOVE_FAILED_SERVERS: case MEMCACHED_BEHAVIOR_SERVER_FAILURE_LIMIT: return ptr->server_failure_limit; case MEMCACHED_BEHAVIOR_SORT_HOSTS: @@ -443,6 +448,7 @@ const char *libmemcached_string_behavior(const memcached_behavior_t flag) case MEMCACHED_BEHAVIOR_NOREPLY: return "MEMCACHED_BEHAVIOR_NOREPLY"; case MEMCACHED_BEHAVIOR_USE_UDP: return "MEMCACHED_BEHAVIOR_USE_UDP"; case MEMCACHED_BEHAVIOR_AUTO_EJECT_HOSTS: return "MEMCACHED_BEHAVIOR_AUTO_EJECT_HOSTS"; + case MEMCACHED_BEHAVIOR_REMOVE_FAILED_SERVERS: return "MEMCACHED_BEHAVIOR_REMOVE_FAILED_SERVERS"; case MEMCACHED_BEHAVIOR_NUMBER_OF_REPLICAS: return "MEMCACHED_BEHAVIOR_NUMBER_OF_REPLICAS"; case MEMCACHED_BEHAVIOR_RANDOMIZE_REPLICA_READ: return "MEMCACHED_BEHAVIOR_RANDOMIZE_REPLICA_READ"; case MEMCACHED_BEHAVIOR_CORK: return "MEMCACHED_BEHAVIOR_CORK"; diff --git a/libmemcached/constants.h b/libmemcached/constants.h index 516e50ee..b4a87257 100644 --- a/libmemcached/constants.h +++ b/libmemcached/constants.h @@ -136,6 +136,7 @@ typedef enum { MEMCACHED_BEHAVIOR_TCP_KEEPALIVE, MEMCACHED_BEHAVIOR_TCP_KEEPIDLE, MEMCACHED_BEHAVIOR_LOAD_FROM_FILE, + MEMCACHED_BEHAVIOR_REMOVE_FAILED_SERVERS, MEMCACHED_BEHAVIOR_MAX } memcached_behavior_t; diff --git a/libmemcached/options/parser.cc b/libmemcached/options/parser.cc index c6017e3e..14754f92 100644 --- a/libmemcached/options/parser.cc +++ b/libmemcached/options/parser.cc @@ -144,60 +144,59 @@ inline void config_error(Context *context, yyscan_t *scanner, const char *error) SERVERS_OPTION = 268, UNKNOWN_OPTION = 269, UNKNOWN = 270, - AUTO_EJECT_HOSTS = 271, - BINARY_PROTOCOL = 272, - BUFFER_REQUESTS = 273, - CONNECT_TIMEOUT = 274, - DISTRIBUTION = 275, - HASH = 276, - HASH_WITH_PREFIX_KEY = 277, - IO_BYTES_WATERMARK = 278, - IO_KEY_PREFETCH = 279, - IO_MSG_WATERMARK = 280, - KETAMA_HASH = 281, - KETAMA_WEIGHTED = 282, - NOREPLY = 283, - NUMBER_OF_REPLICAS = 284, - POLL_TIMEOUT = 285, - RANDOMIZE_REPLICA_READ = 286, - RCV_TIMEOUT = 287, + BINARY_PROTOCOL = 271, + BUFFER_REQUESTS = 272, + CONNECT_TIMEOUT = 273, + DISTRIBUTION = 274, + HASH = 275, + HASH_WITH_PREFIX_KEY = 276, + IO_BYTES_WATERMARK = 277, + IO_KEY_PREFETCH = 278, + IO_MSG_WATERMARK = 279, + KETAMA_HASH = 280, + KETAMA_WEIGHTED = 281, + NOREPLY = 282, + NUMBER_OF_REPLICAS = 283, + POLL_TIMEOUT = 284, + RANDOMIZE_REPLICA_READ = 285, + RCV_TIMEOUT = 286, + REMOVE_FAILED_SERVERS = 287, RETRY_TIMEOUT = 288, - SERVER_FAILURE_LIMIT = 289, - SND_TIMEOUT = 290, - SOCKET_RECV_SIZE = 291, - SOCKET_SEND_SIZE = 292, - SORT_HOSTS = 293, - SUPPORT_CAS = 294, - _TCP_NODELAY = 295, - _TCP_KEEPALIVE = 296, - _TCP_KEEPIDLE = 297, - USER_DATA = 298, - USE_UDP = 299, - VERIFY_KEY = 300, - PREFIX_KEY = 301, - MD5 = 302, - CRC = 303, - FNV1_64 = 304, - FNV1A_64 = 305, - FNV1_32 = 306, - FNV1A_32 = 307, - HSIEH = 308, - MURMUR = 309, - JENKINS = 310, - CONSISTENT = 311, - MODULA = 312, - RANDOM = 313, - TRUE = 314, - FALSE = 315, - FLOAT = 316, - NUMBER = 317, - PORT = 318, - WEIGHT_START = 319, - IPADDRESS = 320, - HOSTNAME = 321, - STRING = 322, - QUOTED_STRING = 323, - FILE_PATH = 324 + SND_TIMEOUT = 289, + SOCKET_RECV_SIZE = 290, + SOCKET_SEND_SIZE = 291, + SORT_HOSTS = 292, + SUPPORT_CAS = 293, + USER_DATA = 294, + USE_UDP = 295, + VERIFY_KEY = 296, + _TCP_KEEPALIVE = 297, + _TCP_KEEPIDLE = 298, + _TCP_NODELAY = 299, + PREFIX_KEY = 300, + MD5 = 301, + CRC = 302, + FNV1_64 = 303, + FNV1A_64 = 304, + FNV1_32 = 305, + FNV1A_32 = 306, + HSIEH = 307, + MURMUR = 308, + JENKINS = 309, + CONSISTENT = 310, + MODULA = 311, + RANDOM = 312, + TRUE = 313, + FALSE = 314, + FLOAT = 315, + NUMBER = 316, + PORT = 317, + WEIGHT_START = 318, + IPADDRESS = 319, + HOSTNAME = 320, + STRING = 321, + QUOTED_STRING = 322, + FILE_PATH = 323 }; #endif @@ -214,7 +213,7 @@ inline void config_error(Context *context, yyscan_t *scanner, const char *error) /* Line 264 of yacc.c */ -#line 218 "libmemcached/options/parser.cc" +#line 217 "libmemcached/options/parser.cc" #ifdef short # undef short @@ -427,22 +426,22 @@ union yyalloc #endif /* YYFINAL -- State number of the termination state. */ -#define YYFINAL 66 +#define YYFINAL 65 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 72 +#define YYLAST 71 /* YYNTOKENS -- Number of terminals. */ -#define YYNTOKENS 73 +#define YYNTOKENS 72 /* YYNNTS -- Number of nonterminals. */ #define YYNNTS 12 /* YYNRULES -- Number of rules. */ -#define YYNRULES 65 +#define YYNRULES 64 /* YYNRULES -- Number of states. */ -#define YYNSTATES 79 +#define YYNSTATES 78 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ #define YYUNDEFTOK 2 -#define YYMAXUTOK 324 +#define YYMAXUTOK 323 #define YYTRANSLATE(YYX) \ ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) @@ -453,10 +452,10 @@ static const yytype_uint8 yytranslate[] = 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 72, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 61, 2, 2, 2, 2, 2, + 2, 2, 71, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 60, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 62, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 61, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, @@ -481,8 +480,8 @@ static const yytype_uint8 yytranslate[] = 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 63, 64, 65, 66, - 67, 68, 69, 70, 71 + 55, 56, 57, 58, 59, 62, 63, 64, 65, 66, + 67, 68, 69, 70 }; #if YYDEBUG @@ -494,41 +493,41 @@ static const yytype_uint8 yyprhs[] = 21, 23, 27, 32, 37, 40, 42, 45, 48, 53, 56, 59, 61, 63, 65, 67, 69, 71, 73, 75, 77, 79, 81, 83, 85, 87, 89, 91, 93, 95, - 97, 99, 101, 103, 105, 107, 109, 111, 113, 114, - 116, 117, 119, 121, 123, 125, 127, 129, 131, 133, - 135, 137, 139, 141, 143, 145 + 97, 99, 101, 103, 105, 107, 109, 111, 112, 114, + 115, 117, 119, 121, 123, 125, 127, 129, 131, 133, + 135, 137, 139, 141, 143 }; /* YYRHS -- A `-1'-separated list of the rules' RHS. */ static const yytype_int8 yyrhs[] = { - 74, 0, -1, 75, -1, 74, 72, 75, -1, 76, + 73, 0, -1, 74, -1, 73, 71, 74, -1, 75, -1, 3, -1, 10, -1, 4, -1, 5, -1, 6, - -1, 7, -1, 8, 72, 83, -1, 11, 68, 80, - 81, -1, 11, 67, 80, 81, -1, 9, 83, -1, - 77, -1, 46, 83, -1, 20, 84, -1, 20, 84, - 61, 82, -1, 21, 82, -1, 78, 64, -1, 79, - -1, 43, -1, 19, -1, 25, -1, 23, -1, 24, - -1, 29, -1, 30, -1, 32, -1, 33, -1, 34, - -1, 35, -1, 36, -1, 37, -1, 16, -1, 17, - -1, 18, -1, 22, -1, 28, -1, 31, -1, 38, - -1, 39, -1, 40, -1, 41, -1, 42, -1, 44, - -1, 45, -1, -1, 65, -1, -1, 66, -1, 47, + -1, 7, -1, 8, 71, 82, -1, 11, 67, 79, + 80, -1, 11, 66, 79, 80, -1, 9, 82, -1, + 76, -1, 45, 82, -1, 19, 83, -1, 19, 83, + 60, 81, -1, 20, 81, -1, 77, 63, -1, 78, + -1, 39, -1, 32, -1, 18, -1, 24, -1, 22, + -1, 23, -1, 28, -1, 29, -1, 31, -1, 33, + -1, 34, -1, 35, -1, 36, -1, 16, -1, 17, + -1, 21, -1, 27, -1, 30, -1, 37, -1, 38, + -1, 44, -1, 42, -1, 43, -1, 40, -1, 41, + -1, -1, 64, -1, -1, 65, -1, 46, -1, 47, -1, 48, -1, 49, -1, 50, -1, 51, -1, 52, - -1, 53, -1, 54, -1, 55, -1, 69, -1, 70, - -1, 56, -1, 57, -1, 58, -1 + -1, 53, -1, 54, -1, 68, -1, 69, -1, 55, + -1, 56, -1, 57, -1 }; /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ static const yytype_uint16 yyrline[] = { - 0, 154, 154, 155, 159, 161, 163, 165, 170, 175, - 179, 183, 194, 202, 210, 214, 218, 225, 232, 243, - 250, 257, 264, 270, 274, 278, 282, 286, 290, 294, - 298, 302, 306, 310, 314, 321, 325, 329, 333, 337, - 341, 345, 349, 353, 357, 361, 365, 369, 376, 377, - 382, 383, 388, 392, 396, 400, 404, 408, 412, 416, - 420, 427, 431, 439, 443, 447 + 0, 153, 153, 154, 158, 160, 162, 164, 169, 174, + 178, 182, 193, 201, 209, 213, 217, 224, 231, 242, + 249, 256, 263, 269, 273, 277, 281, 285, 289, 293, + 297, 301, 305, 309, 313, 320, 324, 328, 332, 336, + 340, 344, 348, 352, 356, 360, 364, 371, 372, 377, + 378, 383, 387, 391, 395, 399, 403, 407, 411, 415, + 422, 426, 434, 438, 442 }; #endif @@ -540,21 +539,20 @@ static const char *const yytname[] = "$end", "error", "$undefined", "COMMENT", "END", "ERROR", "RESET", "PARSER_DEBUG", "INCLUDE", "CONFIGURE_FILE", "EMPTY_LINE", "SERVER", "SERVERS", "SERVERS_OPTION", "UNKNOWN_OPTION", "UNKNOWN", - "AUTO_EJECT_HOSTS", "BINARY_PROTOCOL", "BUFFER_REQUESTS", - "CONNECT_TIMEOUT", "DISTRIBUTION", "HASH", "HASH_WITH_PREFIX_KEY", - "IO_BYTES_WATERMARK", "IO_KEY_PREFETCH", "IO_MSG_WATERMARK", - "KETAMA_HASH", "KETAMA_WEIGHTED", "NOREPLY", "NUMBER_OF_REPLICAS", - "POLL_TIMEOUT", "RANDOMIZE_REPLICA_READ", "RCV_TIMEOUT", "RETRY_TIMEOUT", - "SERVER_FAILURE_LIMIT", "SND_TIMEOUT", "SOCKET_RECV_SIZE", - "SOCKET_SEND_SIZE", "SORT_HOSTS", "SUPPORT_CAS", "_TCP_NODELAY", - "_TCP_KEEPALIVE", "_TCP_KEEPIDLE", "USER_DATA", "USE_UDP", "VERIFY_KEY", - "PREFIX_KEY", "MD5", "CRC", "FNV1_64", "FNV1A_64", "FNV1_32", "FNV1A_32", - "HSIEH", "MURMUR", "JENKINS", "CONSISTENT", "MODULA", "RANDOM", "TRUE", - "FALSE", "','", "'='", "FLOAT", "NUMBER", "PORT", "WEIGHT_START", - "IPADDRESS", "HOSTNAME", "STRING", "QUOTED_STRING", "FILE_PATH", "' '", - "$accept", "begin", "statement", "expression", "behaviors", - "behavior_number", "behavior_boolean", "optional_port", - "optional_weight", "hash", "string", "distribution", 0 + "BINARY_PROTOCOL", "BUFFER_REQUESTS", "CONNECT_TIMEOUT", "DISTRIBUTION", + "HASH", "HASH_WITH_PREFIX_KEY", "IO_BYTES_WATERMARK", "IO_KEY_PREFETCH", + "IO_MSG_WATERMARK", "KETAMA_HASH", "KETAMA_WEIGHTED", "NOREPLY", + "NUMBER_OF_REPLICAS", "POLL_TIMEOUT", "RANDOMIZE_REPLICA_READ", + "RCV_TIMEOUT", "REMOVE_FAILED_SERVERS", "RETRY_TIMEOUT", "SND_TIMEOUT", + "SOCKET_RECV_SIZE", "SOCKET_SEND_SIZE", "SORT_HOSTS", "SUPPORT_CAS", + "USER_DATA", "USE_UDP", "VERIFY_KEY", "_TCP_KEEPALIVE", "_TCP_KEEPIDLE", + "_TCP_NODELAY", "PREFIX_KEY", "MD5", "CRC", "FNV1_64", "FNV1A_64", + "FNV1_32", "FNV1A_32", "HSIEH", "MURMUR", "JENKINS", "CONSISTENT", + "MODULA", "RANDOM", "TRUE", "FALSE", "','", "'='", "FLOAT", "NUMBER", + "PORT", "WEIGHT_START", "IPADDRESS", "HOSTNAME", "STRING", + "QUOTED_STRING", "FILE_PATH", "' '", "$accept", "begin", "statement", + "expression", "behaviors", "behavior_number", "behavior_boolean", + "optional_port", "optional_weight", "hash", "string", "distribution", 0 }; #endif @@ -569,21 +567,21 @@ static const yytype_uint16 yytoknum[] = 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, - 315, 44, 61, 316, 317, 318, 319, 320, 321, 322, - 323, 324, 32 + 44, 61, 315, 316, 317, 318, 319, 320, 321, 322, + 323, 32 }; # endif /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ static const yytype_uint8 yyr1[] = { - 0, 73, 74, 74, 75, 75, 75, 75, 75, 75, - 75, 75, 76, 76, 76, 76, 77, 77, 77, 77, - 77, 77, 77, 78, 78, 78, 78, 78, 78, 78, - 78, 78, 78, 78, 78, 79, 79, 79, 79, 79, - 79, 79, 79, 79, 79, 79, 79, 79, 80, 80, - 81, 81, 82, 82, 82, 82, 82, 82, 82, 82, - 82, 83, 83, 84, 84, 84 + 0, 72, 73, 73, 74, 74, 74, 74, 74, 74, + 74, 74, 75, 75, 75, 75, 76, 76, 76, 76, + 76, 76, 76, 77, 77, 77, 77, 77, 77, 77, + 77, 77, 77, 77, 77, 78, 78, 78, 78, 78, + 78, 78, 78, 78, 78, 78, 78, 79, 79, 80, + 80, 81, 81, 81, 81, 81, 81, 81, 81, 81, + 82, 82, 83, 83, 83 }; /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ @@ -593,9 +591,9 @@ static const yytype_uint8 yyr2[] = 1, 3, 4, 4, 2, 1, 2, 2, 4, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, - 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1 + 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1 }; /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state @@ -604,42 +602,42 @@ static const yytype_uint8 yyr2[] = static const yytype_uint8 yydefact[] = { 0, 5, 7, 8, 9, 10, 0, 0, 6, 0, - 35, 36, 37, 23, 0, 0, 38, 25, 26, 24, - 39, 27, 28, 40, 29, 30, 31, 32, 33, 34, - 41, 42, 43, 44, 45, 22, 46, 47, 0, 0, - 2, 4, 15, 0, 21, 0, 61, 62, 14, 48, - 48, 63, 64, 65, 17, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 19, 16, 1, 0, 20, 11, - 49, 50, 50, 0, 3, 51, 13, 12, 18 + 35, 36, 24, 0, 0, 37, 26, 27, 25, 38, + 28, 29, 39, 30, 23, 31, 32, 33, 34, 40, + 41, 22, 45, 46, 43, 44, 42, 0, 0, 2, + 4, 15, 0, 21, 0, 60, 61, 14, 47, 47, + 62, 63, 64, 17, 51, 52, 53, 54, 55, 56, + 57, 58, 59, 19, 16, 1, 0, 20, 11, 48, + 49, 49, 0, 3, 50, 13, 12, 18 }; /* YYDEFGOTO[NTERM-NUM]. */ static const yytype_int8 yydefgoto[] = { - -1, 39, 40, 41, 42, 43, 44, 71, 76, 64, - 48, 54 + -1, 38, 39, 40, 41, 42, 43, 70, 75, 63, + 47, 53 }; /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing STATE-NUM. */ -#define YYPACT_NINF -60 +#define YYPACT_NINF -59 static const yytype_int8 yypact[] = { - -2, -60, -60, -60, -60, -60, -59, -45, -60, -11, - -60, -60, -60, -60, -46, -1, -60, -60, -60, -60, - -60, -60, -60, -60, -60, -60, -60, -60, -60, -60, - -60, -60, -60, -60, -60, -60, -60, -60, -45, 0, - -60, -60, -60, -19, -60, -45, -60, -60, -60, -7, - -7, -60, -60, -60, 2, -60, -60, -60, -60, -60, - -60, -60, -60, -60, -60, -60, -60, -2, -60, -60, - -60, -6, -6, -1, -60, -60, -60, -60, -60 + -2, -59, -59, -59, -59, -59, -58, -13, -59, -43, + -59, -59, -59, -45, -1, -59, -59, -59, -59, -59, + -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, + -59, -59, -59, -59, -59, -59, -59, -13, 0, -59, + -59, -59, -19, -59, -13, -59, -59, -59, -7, -7, + -59, -59, -59, 2, -59, -59, -59, -59, -59, -59, + -59, -59, -59, -59, -59, -59, -2, -59, -59, -59, + -6, -6, -1, -59, -59, -59, -59, -59 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int8 yypgoto[] = { - -60, -60, -8, -60, -60, -60, -60, 11, -5, -9, - 17, -60 + -59, -59, -8, -59, -59, -59, -59, 11, -5, -9, + 17, -59 }; /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If @@ -649,26 +647,26 @@ static const yytype_int8 yypgoto[] = #define YYTABLE_NINF -1 static const yytype_uint8 yytable[] = { - 66, 1, 2, 3, 4, 5, 6, 7, 8, 9, - 51, 52, 53, 45, 10, 11, 12, 13, 14, 15, - 16, 17, 18, 19, 46, 47, 20, 21, 22, 23, + 65, 1, 2, 3, 4, 5, 6, 7, 8, 9, + 50, 51, 52, 44, 10, 11, 12, 13, 14, 15, + 16, 17, 18, 48, 49, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, - 34, 35, 36, 37, 38, 68, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 65, 49, 50, 70, 74, - 75, 72, 69, 73, 78, 0, 0, 77, 0, 0, - 0, 0, 67 + 34, 35, 36, 37, 67, 54, 55, 56, 57, 58, + 59, 60, 61, 62, 64, 45, 46, 69, 73, 74, + 71, 68, 72, 77, 0, 0, 76, 0, 0, 0, + 0, 66 }; static const yytype_int8 yycheck[] = { 0, 3, 4, 5, 6, 7, 8, 9, 10, 11, - 56, 57, 58, 72, 16, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 69, 70, 28, 29, 30, 31, + 55, 56, 57, 71, 16, 17, 18, 19, 20, 21, + 22, 23, 24, 66, 67, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 64, 47, 48, 49, 50, - 51, 52, 53, 54, 55, 38, 67, 68, 65, 67, - 66, 50, 45, 61, 73, -1, -1, 72, -1, -1, - -1, -1, 72 + 42, 43, 44, 45, 63, 46, 47, 48, 49, 50, + 51, 52, 53, 54, 37, 68, 69, 64, 66, 65, + 49, 44, 60, 72, -1, -1, 71, -1, -1, -1, + -1, 71 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing @@ -676,13 +674,13 @@ static const yytype_int8 yycheck[] = static const yytype_uint8 yystos[] = { 0, 3, 4, 5, 6, 7, 8, 9, 10, 11, - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, + 16, 17, 18, 19, 20, 21, 22, 23, 24, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, - 38, 39, 40, 41, 42, 43, 44, 45, 46, 74, - 75, 76, 77, 78, 79, 72, 69, 70, 83, 67, - 68, 56, 57, 58, 84, 47, 48, 49, 50, 51, - 52, 53, 54, 55, 82, 83, 0, 72, 64, 83, - 65, 80, 80, 61, 75, 66, 81, 81, 82 + 38, 39, 40, 41, 42, 43, 44, 45, 73, 74, + 75, 76, 77, 78, 71, 68, 69, 82, 66, 67, + 55, 56, 57, 83, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 81, 82, 0, 71, 63, 82, 64, + 79, 79, 60, 74, 65, 80, 80, 81 }; #define yyerrok (yyerrstatus = 0) @@ -1517,28 +1515,28 @@ yyreduce: case 4: /* Line 1464 of yacc.c */ -#line 160 "libmemcached/options/parser.yy" +#line 159 "libmemcached/options/parser.yy" { ;} break; case 5: /* Line 1464 of yacc.c */ -#line 162 "libmemcached/options/parser.yy" +#line 161 "libmemcached/options/parser.yy" { ;} break; case 6: /* Line 1464 of yacc.c */ -#line 164 "libmemcached/options/parser.yy" +#line 163 "libmemcached/options/parser.yy" { ;} break; case 7: /* Line 1464 of yacc.c */ -#line 166 "libmemcached/options/parser.yy" +#line 165 "libmemcached/options/parser.yy" { context->set_end(); YYACCEPT; @@ -1548,7 +1546,7 @@ yyreduce: case 8: /* Line 1464 of yacc.c */ -#line 171 "libmemcached/options/parser.yy" +#line 170 "libmemcached/options/parser.yy" { context->rc= MEMCACHED_PARSE_USER_ERROR; parser_abort(context, NULL); @@ -1558,7 +1556,7 @@ yyreduce: case 9: /* Line 1464 of yacc.c */ -#line 176 "libmemcached/options/parser.yy" +#line 175 "libmemcached/options/parser.yy" { memcached_reset(context->memc); ;} @@ -1567,7 +1565,7 @@ yyreduce: case 10: /* Line 1464 of yacc.c */ -#line 180 "libmemcached/options/parser.yy" +#line 179 "libmemcached/options/parser.yy" { yydebug= 1; ;} @@ -1576,7 +1574,7 @@ yyreduce: case 11: /* Line 1464 of yacc.c */ -#line 184 "libmemcached/options/parser.yy" +#line 183 "libmemcached/options/parser.yy" { if ((context->rc= memcached_parse_configure_file(context->memc, (yyvsp[(3) - (3)].string).c_str, (yyvsp[(3) - (3)].string).length)) != MEMCACHED_SUCCESS) { @@ -1588,7 +1586,7 @@ yyreduce: case 12: /* Line 1464 of yacc.c */ -#line 195 "libmemcached/options/parser.yy" +#line 194 "libmemcached/options/parser.yy" { if ((context->rc= memcached_server_add_with_weight(context->memc, (yyvsp[(2) - (4)].server).c_str, (yyvsp[(2) - (4)].server).port, (yyvsp[(2) - (4)].server).weight)) != MEMCACHED_SUCCESS) { @@ -1601,7 +1599,7 @@ yyreduce: case 13: /* Line 1464 of yacc.c */ -#line 203 "libmemcached/options/parser.yy" +#line 202 "libmemcached/options/parser.yy" { if ((context->rc= memcached_server_add_with_weight(context->memc, (yyvsp[(2) - (4)].server).c_str, (yyvsp[(2) - (4)].server).port, (yyvsp[(2) - (4)].server).weight)) != MEMCACHED_SUCCESS) { @@ -1614,7 +1612,7 @@ yyreduce: case 14: /* Line 1464 of yacc.c */ -#line 211 "libmemcached/options/parser.yy" +#line 210 "libmemcached/options/parser.yy" { memcached_set_configuration_file(context->memc, (yyvsp[(2) - (2)].string).c_str, (yyvsp[(2) - (2)].string).length); ;} @@ -1623,7 +1621,7 @@ yyreduce: case 16: /* Line 1464 of yacc.c */ -#line 219 "libmemcached/options/parser.yy" +#line 218 "libmemcached/options/parser.yy" { if ((context->rc= memcached_set_prefix_key(context->memc, (yyvsp[(2) - (2)].string).c_str, (yyvsp[(2) - (2)].string).length)) != MEMCACHED_SUCCESS) { @@ -1635,7 +1633,7 @@ yyreduce: case 17: /* Line 1464 of yacc.c */ -#line 226 "libmemcached/options/parser.yy" +#line 225 "libmemcached/options/parser.yy" { if ((context->rc= memcached_behavior_set(context->memc, MEMCACHED_BEHAVIOR_DISTRIBUTION, (yyvsp[(2) - (2)].distribution))) != MEMCACHED_SUCCESS) { @@ -1647,7 +1645,7 @@ yyreduce: case 18: /* Line 1464 of yacc.c */ -#line 233 "libmemcached/options/parser.yy" +#line 232 "libmemcached/options/parser.yy" { if ((context->rc= memcached_behavior_set(context->memc, MEMCACHED_BEHAVIOR_DISTRIBUTION, (yyvsp[(2) - (4)].distribution))) != MEMCACHED_SUCCESS) { @@ -1663,7 +1661,7 @@ yyreduce: case 19: /* Line 1464 of yacc.c */ -#line 244 "libmemcached/options/parser.yy" +#line 243 "libmemcached/options/parser.yy" { if ((context->rc= memcached_behavior_set(context->memc, MEMCACHED_BEHAVIOR_HASH, (yyvsp[(2) - (2)].hash))) != MEMCACHED_SUCCESS) { @@ -1675,7 +1673,7 @@ yyreduce: case 20: /* Line 1464 of yacc.c */ -#line 251 "libmemcached/options/parser.yy" +#line 250 "libmemcached/options/parser.yy" { if ((context->rc= memcached_behavior_set(context->memc, (yyvsp[(1) - (2)].behavior), (yyvsp[(2) - (2)].number))) != MEMCACHED_SUCCESS) { @@ -1687,7 +1685,7 @@ yyreduce: case 21: /* Line 1464 of yacc.c */ -#line 258 "libmemcached/options/parser.yy" +#line 257 "libmemcached/options/parser.yy" { if ((context->rc= memcached_behavior_set(context->memc, (yyvsp[(1) - (1)].behavior), true)) != MEMCACHED_SUCCESS) { @@ -1699,7 +1697,7 @@ yyreduce: case 22: /* Line 1464 of yacc.c */ -#line 265 "libmemcached/options/parser.yy" +#line 264 "libmemcached/options/parser.yy" { ;} break; @@ -1707,88 +1705,88 @@ yyreduce: case 23: /* Line 1464 of yacc.c */ -#line 271 "libmemcached/options/parser.yy" +#line 270 "libmemcached/options/parser.yy" { - (yyval.behavior)= MEMCACHED_BEHAVIOR_CONNECT_TIMEOUT; + (yyval.behavior)= MEMCACHED_BEHAVIOR_REMOVE_FAILED_SERVERS; ;} break; case 24: /* Line 1464 of yacc.c */ -#line 275 "libmemcached/options/parser.yy" +#line 274 "libmemcached/options/parser.yy" { - (yyval.behavior)= MEMCACHED_BEHAVIOR_IO_MSG_WATERMARK; + (yyval.behavior)= MEMCACHED_BEHAVIOR_CONNECT_TIMEOUT; ;} break; case 25: /* Line 1464 of yacc.c */ -#line 279 "libmemcached/options/parser.yy" +#line 278 "libmemcached/options/parser.yy" { - (yyval.behavior)= MEMCACHED_BEHAVIOR_IO_BYTES_WATERMARK; + (yyval.behavior)= MEMCACHED_BEHAVIOR_IO_MSG_WATERMARK; ;} break; case 26: /* Line 1464 of yacc.c */ -#line 283 "libmemcached/options/parser.yy" +#line 282 "libmemcached/options/parser.yy" { - (yyval.behavior)= MEMCACHED_BEHAVIOR_IO_KEY_PREFETCH; + (yyval.behavior)= MEMCACHED_BEHAVIOR_IO_BYTES_WATERMARK; ;} break; case 27: /* Line 1464 of yacc.c */ -#line 287 "libmemcached/options/parser.yy" +#line 286 "libmemcached/options/parser.yy" { - (yyval.behavior)= MEMCACHED_BEHAVIOR_NUMBER_OF_REPLICAS; + (yyval.behavior)= MEMCACHED_BEHAVIOR_IO_KEY_PREFETCH; ;} break; case 28: /* Line 1464 of yacc.c */ -#line 291 "libmemcached/options/parser.yy" +#line 290 "libmemcached/options/parser.yy" { - (yyval.behavior)= MEMCACHED_BEHAVIOR_POLL_TIMEOUT; + (yyval.behavior)= MEMCACHED_BEHAVIOR_NUMBER_OF_REPLICAS; ;} break; case 29: /* Line 1464 of yacc.c */ -#line 295 "libmemcached/options/parser.yy" +#line 294 "libmemcached/options/parser.yy" { - (yyval.behavior)= MEMCACHED_BEHAVIOR_RCV_TIMEOUT; + (yyval.behavior)= MEMCACHED_BEHAVIOR_POLL_TIMEOUT; ;} break; case 30: /* Line 1464 of yacc.c */ -#line 299 "libmemcached/options/parser.yy" +#line 298 "libmemcached/options/parser.yy" { - (yyval.behavior)= MEMCACHED_BEHAVIOR_RETRY_TIMEOUT; + (yyval.behavior)= MEMCACHED_BEHAVIOR_RCV_TIMEOUT; ;} break; case 31: /* Line 1464 of yacc.c */ -#line 303 "libmemcached/options/parser.yy" +#line 302 "libmemcached/options/parser.yy" { - (yyval.behavior)= MEMCACHED_BEHAVIOR_SERVER_FAILURE_LIMIT; + (yyval.behavior)= MEMCACHED_BEHAVIOR_RETRY_TIMEOUT; ;} break; case 32: /* Line 1464 of yacc.c */ -#line 307 "libmemcached/options/parser.yy" +#line 306 "libmemcached/options/parser.yy" { (yyval.behavior)= MEMCACHED_BEHAVIOR_SND_TIMEOUT; ;} @@ -1797,7 +1795,7 @@ yyreduce: case 33: /* Line 1464 of yacc.c */ -#line 311 "libmemcached/options/parser.yy" +#line 310 "libmemcached/options/parser.yy" { (yyval.behavior)= MEMCACHED_BEHAVIOR_SOCKET_RECV_SIZE; ;} @@ -1806,7 +1804,7 @@ yyreduce: case 34: /* Line 1464 of yacc.c */ -#line 315 "libmemcached/options/parser.yy" +#line 314 "libmemcached/options/parser.yy" { (yyval.behavior)= MEMCACHED_BEHAVIOR_SOCKET_SEND_SIZE; ;} @@ -1815,138 +1813,136 @@ yyreduce: case 35: /* Line 1464 of yacc.c */ -#line 322 "libmemcached/options/parser.yy" +#line 321 "libmemcached/options/parser.yy" { - (yyval.behavior)= MEMCACHED_BEHAVIOR_AUTO_EJECT_HOSTS; + (yyval.behavior)= MEMCACHED_BEHAVIOR_BINARY_PROTOCOL; ;} break; case 36: /* Line 1464 of yacc.c */ -#line 326 "libmemcached/options/parser.yy" +#line 325 "libmemcached/options/parser.yy" { - (yyval.behavior)= MEMCACHED_BEHAVIOR_BINARY_PROTOCOL; + (yyval.behavior)= MEMCACHED_BEHAVIOR_BUFFER_REQUESTS; ;} break; case 37: /* Line 1464 of yacc.c */ -#line 330 "libmemcached/options/parser.yy" +#line 329 "libmemcached/options/parser.yy" { - (yyval.behavior)= MEMCACHED_BEHAVIOR_BUFFER_REQUESTS; + (yyval.behavior)= MEMCACHED_BEHAVIOR_HASH_WITH_PREFIX_KEY; ;} break; case 38: /* Line 1464 of yacc.c */ -#line 334 "libmemcached/options/parser.yy" +#line 333 "libmemcached/options/parser.yy" { - (yyval.behavior)= MEMCACHED_BEHAVIOR_HASH_WITH_PREFIX_KEY; + (yyval.behavior)= MEMCACHED_BEHAVIOR_NOREPLY; ;} break; case 39: /* Line 1464 of yacc.c */ -#line 338 "libmemcached/options/parser.yy" +#line 337 "libmemcached/options/parser.yy" { - (yyval.behavior)= MEMCACHED_BEHAVIOR_NOREPLY; + (yyval.behavior)= MEMCACHED_BEHAVIOR_RANDOMIZE_REPLICA_READ; ;} break; case 40: /* Line 1464 of yacc.c */ -#line 342 "libmemcached/options/parser.yy" +#line 341 "libmemcached/options/parser.yy" { - (yyval.behavior)= MEMCACHED_BEHAVIOR_RANDOMIZE_REPLICA_READ; + (yyval.behavior)= MEMCACHED_BEHAVIOR_SORT_HOSTS; ;} break; case 41: /* Line 1464 of yacc.c */ -#line 346 "libmemcached/options/parser.yy" +#line 345 "libmemcached/options/parser.yy" { - (yyval.behavior)= MEMCACHED_BEHAVIOR_SORT_HOSTS; + (yyval.behavior)= MEMCACHED_BEHAVIOR_SUPPORT_CAS; ;} break; case 42: /* Line 1464 of yacc.c */ -#line 350 "libmemcached/options/parser.yy" +#line 349 "libmemcached/options/parser.yy" { - (yyval.behavior)= MEMCACHED_BEHAVIOR_SUPPORT_CAS; + (yyval.behavior)= MEMCACHED_BEHAVIOR_TCP_NODELAY; ;} break; case 43: /* Line 1464 of yacc.c */ -#line 354 "libmemcached/options/parser.yy" +#line 353 "libmemcached/options/parser.yy" { - (yyval.behavior)= MEMCACHED_BEHAVIOR_TCP_NODELAY; + (yyval.behavior)= MEMCACHED_BEHAVIOR_TCP_KEEPALIVE; ;} break; case 44: /* Line 1464 of yacc.c */ -#line 358 "libmemcached/options/parser.yy" +#line 357 "libmemcached/options/parser.yy" { - (yyval.behavior)= MEMCACHED_BEHAVIOR_TCP_KEEPALIVE; + (yyval.behavior)= MEMCACHED_BEHAVIOR_TCP_KEEPIDLE; ;} break; case 45: /* Line 1464 of yacc.c */ -#line 362 "libmemcached/options/parser.yy" +#line 361 "libmemcached/options/parser.yy" { - (yyval.behavior)= MEMCACHED_BEHAVIOR_TCP_KEEPIDLE; + (yyval.behavior)= MEMCACHED_BEHAVIOR_USE_UDP; ;} break; case 46: /* Line 1464 of yacc.c */ -#line 366 "libmemcached/options/parser.yy" +#line 365 "libmemcached/options/parser.yy" { - (yyval.behavior)= MEMCACHED_BEHAVIOR_USE_UDP; + (yyval.behavior)= MEMCACHED_BEHAVIOR_VERIFY_KEY; ;} break; case 47: /* Line 1464 of yacc.c */ -#line 370 "libmemcached/options/parser.yy" - { - (yyval.behavior)= MEMCACHED_BEHAVIOR_VERIFY_KEY; - ;} +#line 371 "libmemcached/options/parser.yy" + { ;} break; case 48: /* Line 1464 of yacc.c */ -#line 376 "libmemcached/options/parser.yy" +#line 373 "libmemcached/options/parser.yy" { ;} break; case 49: /* Line 1464 of yacc.c */ -#line 378 "libmemcached/options/parser.yy" +#line 377 "libmemcached/options/parser.yy" { ;} break; case 50: /* Line 1464 of yacc.c */ -#line 382 "libmemcached/options/parser.yy" +#line 379 "libmemcached/options/parser.yy" { ;} break; @@ -1954,131 +1950,124 @@ yyreduce: /* Line 1464 of yacc.c */ #line 384 "libmemcached/options/parser.yy" - { ;} - break; - - case 52: - -/* Line 1464 of yacc.c */ -#line 389 "libmemcached/options/parser.yy" { (yyval.hash)= MEMCACHED_HASH_MD5; ;} break; - case 53: + case 52: /* Line 1464 of yacc.c */ -#line 393 "libmemcached/options/parser.yy" +#line 388 "libmemcached/options/parser.yy" { (yyval.hash)= MEMCACHED_HASH_CRC; ;} break; - case 54: + case 53: /* Line 1464 of yacc.c */ -#line 397 "libmemcached/options/parser.yy" +#line 392 "libmemcached/options/parser.yy" { (yyval.hash)= MEMCACHED_HASH_FNV1_64; ;} break; - case 55: + case 54: /* Line 1464 of yacc.c */ -#line 401 "libmemcached/options/parser.yy" +#line 396 "libmemcached/options/parser.yy" { (yyval.hash)= MEMCACHED_HASH_FNV1A_64; ;} break; - case 56: + case 55: /* Line 1464 of yacc.c */ -#line 405 "libmemcached/options/parser.yy" +#line 400 "libmemcached/options/parser.yy" { (yyval.hash)= MEMCACHED_HASH_FNV1_32; ;} break; - case 57: + case 56: /* Line 1464 of yacc.c */ -#line 409 "libmemcached/options/parser.yy" +#line 404 "libmemcached/options/parser.yy" { (yyval.hash)= MEMCACHED_HASH_FNV1A_32; ;} break; - case 58: + case 57: /* Line 1464 of yacc.c */ -#line 413 "libmemcached/options/parser.yy" +#line 408 "libmemcached/options/parser.yy" { (yyval.hash)= MEMCACHED_HASH_HSIEH; ;} break; - case 59: + case 58: /* Line 1464 of yacc.c */ -#line 417 "libmemcached/options/parser.yy" +#line 412 "libmemcached/options/parser.yy" { (yyval.hash)= MEMCACHED_HASH_MURMUR; ;} break; - case 60: + case 59: /* Line 1464 of yacc.c */ -#line 421 "libmemcached/options/parser.yy" +#line 416 "libmemcached/options/parser.yy" { (yyval.hash)= MEMCACHED_HASH_JENKINS; ;} break; - case 61: + case 60: /* Line 1464 of yacc.c */ -#line 428 "libmemcached/options/parser.yy" +#line 423 "libmemcached/options/parser.yy" { (yyval.string)= (yyvsp[(1) - (1)].string); ;} break; - case 62: + case 61: /* Line 1464 of yacc.c */ -#line 432 "libmemcached/options/parser.yy" +#line 427 "libmemcached/options/parser.yy" { (yyval.string).c_str= (yyvsp[(1) - (1)].string).c_str +1; // +1 to move use passed the initial quote (yyval.string).length= (yyvsp[(1) - (1)].string).length -1; // -1 removes the end quote ;} break; - case 63: + case 62: /* Line 1464 of yacc.c */ -#line 440 "libmemcached/options/parser.yy" +#line 435 "libmemcached/options/parser.yy" { (yyval.distribution)= MEMCACHED_DISTRIBUTION_CONSISTENT; ;} break; - case 64: + case 63: /* Line 1464 of yacc.c */ -#line 444 "libmemcached/options/parser.yy" +#line 439 "libmemcached/options/parser.yy" { (yyval.distribution)= MEMCACHED_DISTRIBUTION_MODULA; ;} break; - case 65: + case 64: /* Line 1464 of yacc.c */ -#line 448 "libmemcached/options/parser.yy" +#line 443 "libmemcached/options/parser.yy" { (yyval.distribution)= MEMCACHED_DISTRIBUTION_RANDOM; ;} @@ -2087,7 +2076,7 @@ yyreduce: /* Line 1464 of yacc.c */ -#line 2091 "libmemcached/options/parser.cc" +#line 2080 "libmemcached/options/parser.cc" default: break; } YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); @@ -2299,7 +2288,7 @@ yyreturn: /* Line 1684 of yacc.c */ -#line 453 "libmemcached/options/parser.yy" +#line 448 "libmemcached/options/parser.yy" void Context::start() diff --git a/libmemcached/options/parser.h b/libmemcached/options/parser.h index f25789af..09abf9c8 100644 --- a/libmemcached/options/parser.h +++ b/libmemcached/options/parser.h @@ -51,60 +51,59 @@ SERVERS_OPTION = 268, UNKNOWN_OPTION = 269, UNKNOWN = 270, - AUTO_EJECT_HOSTS = 271, - BINARY_PROTOCOL = 272, - BUFFER_REQUESTS = 273, - CONNECT_TIMEOUT = 274, - DISTRIBUTION = 275, - HASH = 276, - HASH_WITH_PREFIX_KEY = 277, - IO_BYTES_WATERMARK = 278, - IO_KEY_PREFETCH = 279, - IO_MSG_WATERMARK = 280, - KETAMA_HASH = 281, - KETAMA_WEIGHTED = 282, - NOREPLY = 283, - NUMBER_OF_REPLICAS = 284, - POLL_TIMEOUT = 285, - RANDOMIZE_REPLICA_READ = 286, - RCV_TIMEOUT = 287, + BINARY_PROTOCOL = 271, + BUFFER_REQUESTS = 272, + CONNECT_TIMEOUT = 273, + DISTRIBUTION = 274, + HASH = 275, + HASH_WITH_PREFIX_KEY = 276, + IO_BYTES_WATERMARK = 277, + IO_KEY_PREFETCH = 278, + IO_MSG_WATERMARK = 279, + KETAMA_HASH = 280, + KETAMA_WEIGHTED = 281, + NOREPLY = 282, + NUMBER_OF_REPLICAS = 283, + POLL_TIMEOUT = 284, + RANDOMIZE_REPLICA_READ = 285, + RCV_TIMEOUT = 286, + REMOVE_FAILED_SERVERS = 287, RETRY_TIMEOUT = 288, - SERVER_FAILURE_LIMIT = 289, - SND_TIMEOUT = 290, - SOCKET_RECV_SIZE = 291, - SOCKET_SEND_SIZE = 292, - SORT_HOSTS = 293, - SUPPORT_CAS = 294, - _TCP_NODELAY = 295, - _TCP_KEEPALIVE = 296, - _TCP_KEEPIDLE = 297, - USER_DATA = 298, - USE_UDP = 299, - VERIFY_KEY = 300, - PREFIX_KEY = 301, - MD5 = 302, - CRC = 303, - FNV1_64 = 304, - FNV1A_64 = 305, - FNV1_32 = 306, - FNV1A_32 = 307, - HSIEH = 308, - MURMUR = 309, - JENKINS = 310, - CONSISTENT = 311, - MODULA = 312, - RANDOM = 313, - TRUE = 314, - FALSE = 315, - FLOAT = 316, - NUMBER = 317, - PORT = 318, - WEIGHT_START = 319, - IPADDRESS = 320, - HOSTNAME = 321, - STRING = 322, - QUOTED_STRING = 323, - FILE_PATH = 324 + SND_TIMEOUT = 289, + SOCKET_RECV_SIZE = 290, + SOCKET_SEND_SIZE = 291, + SORT_HOSTS = 292, + SUPPORT_CAS = 293, + USER_DATA = 294, + USE_UDP = 295, + VERIFY_KEY = 296, + _TCP_KEEPALIVE = 297, + _TCP_KEEPIDLE = 298, + _TCP_NODELAY = 299, + PREFIX_KEY = 300, + MD5 = 301, + CRC = 302, + FNV1_64 = 303, + FNV1A_64 = 304, + FNV1_32 = 305, + FNV1A_32 = 306, + HSIEH = 307, + MURMUR = 308, + JENKINS = 309, + CONSISTENT = 310, + MODULA = 311, + RANDOM = 312, + TRUE = 313, + FALSE = 314, + FLOAT = 315, + NUMBER = 316, + PORT = 317, + WEIGHT_START = 318, + IPADDRESS = 319, + HOSTNAME = 320, + STRING = 321, + QUOTED_STRING = 322, + FILE_PATH = 323 }; #endif diff --git a/libmemcached/options/parser.yy b/libmemcached/options/parser.yy index d309c227..a628ac22 100644 --- a/libmemcached/options/parser.yy +++ b/libmemcached/options/parser.yy @@ -75,7 +75,6 @@ inline void config_error(Context *context, yyscan_t *scanner, const char *error) %token UNKNOWN /* All behavior options */ -%token AUTO_EJECT_HOSTS %token BINARY_PROTOCOL %token BUFFER_REQUESTS %token CONNECT_TIMEOUT @@ -92,19 +91,19 @@ inline void config_error(Context *context, yyscan_t *scanner, const char *error) %token POLL_TIMEOUT %token RANDOMIZE_REPLICA_READ %token RCV_TIMEOUT +%token REMOVE_FAILED_SERVERS %token RETRY_TIMEOUT -%token SERVER_FAILURE_LIMIT %token SND_TIMEOUT %token SOCKET_RECV_SIZE %token SOCKET_SEND_SIZE %token SORT_HOSTS %token SUPPORT_CAS -%token _TCP_NODELAY -%token _TCP_KEEPALIVE -%token _TCP_KEEPIDLE %token USER_DATA %token USE_UDP %token VERIFY_KEY +%token _TCP_KEEPALIVE +%token _TCP_KEEPIDLE +%token _TCP_NODELAY /* Callbacks */ %token PREFIX_KEY @@ -267,7 +266,11 @@ behaviors: ; behavior_number: - CONNECT_TIMEOUT + REMOVE_FAILED_SERVERS + { + $$= MEMCACHED_BEHAVIOR_REMOVE_FAILED_SERVERS; + } + | CONNECT_TIMEOUT { $$= MEMCACHED_BEHAVIOR_CONNECT_TIMEOUT; } @@ -299,10 +302,6 @@ behavior_number: { $$= MEMCACHED_BEHAVIOR_RETRY_TIMEOUT; } - | SERVER_FAILURE_LIMIT - { - $$= MEMCACHED_BEHAVIOR_SERVER_FAILURE_LIMIT; - } | SND_TIMEOUT { $$= MEMCACHED_BEHAVIOR_SND_TIMEOUT; @@ -318,11 +317,7 @@ behavior_number: ; behavior_boolean: - AUTO_EJECT_HOSTS - { - $$= MEMCACHED_BEHAVIOR_AUTO_EJECT_HOSTS; - } - | BINARY_PROTOCOL + BINARY_PROTOCOL { $$= MEMCACHED_BEHAVIOR_BINARY_PROTOCOL; } diff --git a/libmemcached/options/scanner.cc b/libmemcached/options/scanner.cc index cf32ffca..9edffe13 100644 --- a/libmemcached/options/scanner.cc +++ b/libmemcached/options/scanner.cc @@ -449,8 +449,8 @@ static void yy_fatal_error (yyconst char msg[] ,yyscan_t yyscanner ); yyg->yy_c_buf_p = yy_cp; /* %% [4.0] data tables for the DFA and the user's section 1 definitions go here */ -#define YY_NUM_RULES 90 -#define YY_END_OF_BUFFER 91 +#define YY_NUM_RULES 88 +#define YY_END_OF_BUFFER 89 /* This struct is not used in this scanner, but its presence is necessary. */ struct yy_trans_info @@ -458,92 +458,90 @@ struct yy_trans_info flex_int32_t yy_verify; flex_int32_t yy_nxt; }; -static yyconst flex_int16_t yy_accept[769] = +static yyconst flex_int16_t yy_accept[747] = { 0, - 0, 0, 91, 89, 5, 5, 1, 89, 89, 89, - 2, 89, 89, 89, 89, 89, 89, 89, 89, 89, - 89, 89, 89, 89, 89, 0, 88, 73, 0, 0, + 0, 0, 89, 87, 5, 5, 1, 87, 87, 87, + 2, 87, 87, 87, 87, 87, 87, 87, 87, 87, + 87, 87, 87, 87, 87, 0, 86, 71, 0, 0, 0, 2, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 6, 73, 73, 73, 73, 73, 73, 73, 73, - 73, 73, 73, 73, 73, 73, 4, 87, 87, 2, - 3, 87, 78, 87, 69, 87, 87, 87, 87, 87, - 87, 77, 87, 87, 87, 87, 87, 87, 73, 73, - 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, - - 73, 73, 73, 73, 73, 73, 73, 73, 73, 4, - 0, 87, 2, 3, 87, 87, 87, 87, 87, 87, - 87, 87, 87, 87, 87, 87, 87, 71, 73, 73, - 73, 73, 73, 73, 0, 0, 73, 73, 73, 73, - 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, - 73, 4, 87, 87, 3, 87, 67, 70, 72, 87, - 0, 83, 87, 87, 87, 87, 87, 66, 87, 73, - 73, 73, 73, 73, 73, 73, 0, 0, 0, 0, - 0, 0, 73, 73, 73, 73, 73, 0, 0, 73, - 73, 0, 0, 73, 73, 73, 0, 0, 0, 73, - - 0, 73, 4, 0, 87, 3, 87, 0, 87, 87, - 87, 87, 75, 84, 76, 87, 0, 0, 73, 73, - 73, 73, 73, 0, 21, 0, 0, 0, 0, 0, - 0, 0, 73, 73, 0, 0, 73, 73, 0, 0, - 73, 73, 0, 0, 73, 0, 0, 73, 0, 0, - 0, 0, 0, 0, 0, 0, 73, 4, 86, 87, - 87, 87, 87, 81, 79, 65, 85, 68, 0, 0, - 73, 73, 73, 73, 73, 0, 0, 0, 0, 0, - 0, 0, 0, 73, 73, 0, 0, 73, 73, 0, - 0, 0, 0, 73, 0, 0, 73, 0, 0, 73, - - 0, 0, 0, 0, 0, 0, 0, 0, 73, 86, - 87, 82, 80, 0, 0, 0, 0, 0, 0, 73, - 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, - 30, 0, 0, 0, 0, 0, 0, 73, 0, 0, - 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, - 0, 73, 0, 0, 0, 0, 62, 0, 0, 61, - 0, 0, 86, 87, 0, 0, 0, 0, 0, 0, - 73, 0, 0, 73, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 73, 0, + 0, 6, 71, 71, 71, 71, 71, 71, 71, 71, + 71, 71, 71, 71, 71, 4, 85, 85, 2, 3, + 85, 76, 85, 67, 85, 85, 85, 85, 85, 85, + 75, 85, 85, 85, 85, 85, 85, 71, 71, 71, + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, + + 71, 71, 71, 71, 71, 71, 71, 4, 0, 85, + 2, 3, 85, 85, 85, 85, 85, 85, 85, 85, + 85, 85, 85, 85, 85, 69, 71, 71, 71, 71, + 71, 0, 0, 71, 71, 71, 71, 71, 71, 71, + 71, 71, 71, 71, 71, 71, 71, 71, 71, 4, + 85, 85, 3, 85, 65, 68, 70, 85, 0, 81, + 85, 85, 85, 85, 85, 64, 85, 71, 71, 71, + 71, 71, 71, 0, 0, 0, 0, 0, 0, 71, + 71, 71, 71, 71, 0, 0, 71, 71, 71, 0, + 0, 71, 71, 71, 0, 0, 0, 71, 0, 71, + + 4, 0, 85, 3, 85, 0, 85, 85, 85, 85, + 73, 82, 74, 85, 71, 71, 71, 71, 71, 0, + 19, 0, 0, 0, 0, 0, 0, 0, 71, 71, + 0, 0, 71, 71, 0, 0, 71, 71, 71, 0, + 0, 71, 0, 0, 71, 0, 0, 0, 0, 0, + 0, 0, 0, 71, 4, 84, 85, 85, 85, 85, + 79, 77, 63, 83, 66, 71, 71, 71, 71, 71, + 0, 0, 0, 0, 0, 0, 0, 0, 71, 71, + 0, 0, 71, 71, 0, 0, 71, 0, 0, 71, + 0, 0, 71, 0, 0, 71, 0, 0, 0, 0, + + 0, 0, 0, 0, 71, 84, 85, 80, 78, 0, + 0, 0, 0, 71, 71, 71, 0, 0, 0, 0, + 0, 0, 0, 0, 28, 0, 0, 0, 0, 0, + 0, 71, 0, 0, 0, 0, 0, 0, 7, 0, + 0, 0, 0, 0, 0, 71, 0, 0, 0, 0, + 60, 0, 0, 59, 0, 0, 84, 85, 0, 0, + 0, 0, 71, 0, 0, 71, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - + 71, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 74, 0, 0, 0, 0, 0, 0, - 73, 0, 0, 73, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 73, 0, + + 0, 0, 0, 0, 0, 72, 0, 0, 0, 0, + 71, 0, 0, 71, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 71, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 60, 59, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 73, 0, 0, 0, 0, + 0, 58, 57, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 71, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 48, 47, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 50, 49, 0, 0, 0, 0, - 0, 0, 0, 0, 9, 8, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 73, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 63, - 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 52, 51, 0, 0, 54, - 0, 0, 53, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 73, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 38, 37, - 0, 0, 0, 0, 44, 43, 0, 0, 0, 0, - - 0, 58, 0, 57, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 20, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 34, 33, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 56, 55, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 9, 8, 0, 0, 0, 0, 0, 0, + 0, 0, 71, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 61, 62, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 40, 39, 0, 0, 0, 0, 0, 0, 0, - 0, 13, 12, 15, 14, 17, 16, 0, 0, 0, + 0, 50, 49, 0, 0, 52, 0, 0, 51, 0, + 0, 0, 0, 0, 0, 0, 0, 71, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 11, 10, 19, + 0, 0, 36, 35, 0, 0, 0, 0, 40, 39, + 0, 0, 0, 0, 0, 56, 0, 55, 0, 0, + 0, 0, 0, 0, 0, 0, 18, 0, 0, 0, - 18, 0, 0, 0, 27, 0, 0, 26, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 32, 31, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 54, + 53, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 29, 0, 28, 0, 0, 0, 0, 0, - 0, 46, 48, 45, 47, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 25, 24, 32, - 31, 0, 0, 0, 0, 23, 22, 0, 0, 0, - 0, 0, 0, 42, 41, 36, 35, 0 + 0, 0, 0, 38, 37, 0, 0, 0, 0, 11, + 10, 13, 12, 15, 14, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 17, 16, 0, 0, 0, + 25, 0, 0, 24, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 27, 0, + + 26, 0, 0, 0, 0, 0, 0, 44, 46, 43, + 45, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 23, 22, 30, 29, 0, 0, 0, + 0, 21, 20, 0, 0, 0, 0, 0, 0, 0, + 0, 34, 33, 42, 41, 0 } ; static yyconst flex_int32_t yy_ec[256] = @@ -590,185 +588,179 @@ static yyconst flex_int32_t yy_meta[74] = 3, 3, 3 } ; -static yyconst flex_int16_t yy_base[773] = +static yyconst flex_int16_t yy_base[751] = { 0, - 0, 798, 802, 2094, 2094, 2094, 2094, 778, 760, 726, + 0, 722, 724, 2044, 2044, 2044, 2044, 716, 712, 693, 65, 72, 0, 55, 50, 57, 71, 55, 62, 72, - 74, 78, 75, 63, 733, 716, 701, 132, 195, 103, + 74, 78, 75, 63, 709, 701, 675, 132, 195, 103, 208, 251, 215, 235, 228, 230, 237, 245, 265, 281, 286, 294, 296, 311, 313, 327, 343, 354, 361, 370, - 702, 2094, 418, 63, 305, 71, 78, 89, 78, 246, - 291, 362, 361, 91, 113, 189, 419, 398, 483, 526, - 490, 416, 467, 503, 508, 510, 515, 517, 543, 551, - 558, 570, 577, 579, 591, 622, 599, 624, 209, 224, - 254, 277, 274, 306, 210, 311, 321, 323, 342, 337, - - 346, 349, 353, 376, 571, 401, 407, 419, 412, 639, - 672, 715, 758, 646, 635, 687, 670, 693, 695, 748, - 739, 704, 750, 776, 702, 782, 791, 784, 416, 432, - 436, 567, 469, 519, 779, 793, 524, 531, 533, 544, - 642, 292, 629, 628, 372, 641, 685, 702, 401, 780, - 721, 843, 856, 827, 864, 877, 879, 884, 886, 891, - 893, 900, 906, 912, 914, 920, 936, 943, 955, 485, - 741, 769, 769, 788, 776, 800, 818, 887, 888, 904, - 925, 916, 929, 943, 626, 941, 936, 932, 934, 933, - 954, 940, 941, 959, 707, 951, 957, 969, 946, 714, - - 948, 968, 1020, 1033, 1076, 2094, 1054, 1052, 1059, 1068, - 1070, 1095, 1100, 1102, 1111, 1120, 987, 999, 980, 988, - 1001, 1006, 1014, 1028, 2094, 1043, 1057, 1067, 1087, 1078, - 1081, 1100, 1098, 1095, 1095, 1096, 1093, 1105, 1114, 1115, - 731, 1108, 1119, 1121, 1111, 1124, 1127, 1118, 1141, 1133, - 1144, 1137, 1150, 1152, 1156, 1157, 1139, 2094, 1207, 1180, - 1189, 1197, 1220, 1225, 1234, 1240, 1242, 1247, 1160, 1174, - 803, 889, 1172, 1186, 1210, 1208, 1209, 1221, 682, 657, - 1232, 601, 590, 1213, 1011, 1232, 1234, 1252, 1237, 1235, - 1236, 1230, 1231, 1267, 1241, 1243, 1269, 1243, 1244, 1240, - - 1257, 1259, 1266, 1268, 1264, 1281, 1283, 1272, 1303, 1346, - 1331, 1317, 1325, 1290, 1292, 1284, 1285, 1303, 1305, 1308, - 1305, 1308, 1313, 1316, 1328, 1333, 1328, 1335, 1339, 1334, - 0, 1344, 1346, 1349, 1351, 1354, 1355, 1341, 1363, 1364, - 1361, 1362, 1369, 2094, 1371, 1374, 1375, 1381, 1390, 1364, - 1366, 1402, 1371, 1396, 1387, 1400, 2094, 1391, 1393, 2094, - 1404, 1405, 1432, 1434, 1415, 1421, 1407, 1413, 1428, 1432, - 1434, 1421, 1424, 1426, 1439, 1440, 627, 1431, 1449, 578, - 1435, 1454, 1450, 1451, 1457, 1458, 1460, 1462, 1464, 1455, - 1457, 1465, 1466, 1484, 1485, 1472, 1473, 1486, 1488, 1490, - - 1493, 1480, 1481, 1499, 1500, 1507, 1492, 1508, 1495, 1509, - 1510, 1514, 1516, 1562, 1506, 1512, 1518, 1524, 1523, 1524, - 1535, 1533, 1536, 1540, 615, 575, 1529, 1549, 1535, 1533, - 1552, 1538, 611, 567, 1546, 1548, 1539, 1540, 1582, 1550, - 1552, 1569, 1570, 1568, 1569, 1559, 1565, 1584, 1579, 1591, - 1581, 1577, 1578, 1598, 1602, 1594, 1604, 1609, 1599, 1608, - 1614, 2094, 2094, 1591, 1592, 566, 564, 1598, 1599, 1604, - 1606, 1622, 1623, 1618, 1619, 1619, 1620, 1624, 1640, 1641, - 1643, 1648, 1644, 1646, 1635, 1639, 1639, 1641, 587, 584, - 1646, 1647, 1646, 1649, 1655, 1656, 1660, 1661, 1659, 1661, - - 1660, 1679, 1663, 1682, 2094, 2094, 1669, 1671, 1685, 1683, - 1676, 1693, 1691, 1679, 2094, 2094, 1697, 1699, 1696, 1699, - 1711, 1713, 1710, 1711, 1718, 1719, 1711, 1708, 1709, 1713, - 1730, 1718, 1717, 1734, 1722, 1737, 1739, 1728, 1729, 2094, - 2094, 1750, 1751, 583, 572, 1736, 1737, 1738, 1740, 558, - 550, 553, 550, 499, 486, 2094, 2094, 1743, 1763, 2094, - 1748, 1767, 2094, 1758, 1759, 1774, 1775, 1760, 1761, 1769, - 1775, 1774, 1775, 509, 1786, 1788, 1789, 1776, 1785, 1797, - 1783, 1796, 1794, 1795, 508, 502, 1796, 1797, 2094, 2094, - 1795, 1799, 1804, 1806, 2094, 2094, 1807, 1808, 1809, 1812, - - 1827, 2094, 1828, 2094, 1815, 1816, 1826, 1828, 1824, 1825, - 1842, 1843, 1829, 1831, 2094, 1850, 1851, 1845, 1861, 1864, - 1848, 1864, 1868, 1861, 1864, 2094, 2094, 1866, 1868, 491, - 471, 1876, 1877, 1876, 1877, 1878, 1879, 2094, 2094, 1869, - 1875, 1885, 1886, 1880, 1882, 446, 442, 1882, 1884, 1897, - 1901, 1898, 1909, 1900, 1906, 1912, 1903, 1914, 1918, 1921, - 1923, 2094, 2094, 441, 381, 1908, 1909, 1910, 1913, 1921, - 1922, 2094, 2094, 2094, 2094, 2094, 2094, 386, 378, 1918, - 1919, 1948, 365, 1940, 1951, 349, 1942, 1952, 1953, 1955, - 1957, 1952, 1953, 1966, 1967, 1968, 1969, 2094, 2094, 2094, - - 2094, 300, 284, 1957, 2094, 306, 1959, 2094, 290, 1980, - 1983, 1985, 1987, 1980, 1981, 287, 274, 253, 252, 1982, - 1983, 1984, 2094, 1985, 2094, 1978, 1984, 240, 200, 1992, - 1993, 2094, 2094, 2094, 2094, 2002, 2004, 215, 196, 132, - 120, 1992, 1994, 2005, 2009, 1994, 2000, 2094, 2094, 2094, - 2094, 2021, 2022, 2008, 2009, 2094, 2094, 2030, 2034, 119, - 116, 2034, 2036, 2094, 2094, 2094, 2094, 2094, 2087, 126, - 2090, 113 + 672, 2044, 417, 305, 69, 77, 86, 75, 246, 291, + 362, 361, 90, 75, 127, 419, 416, 482, 525, 489, + 504, 502, 509, 511, 517, 539, 519, 560, 552, 566, + 554, 582, 584, 595, 601, 613, 627, 180, 223, 224, + 241, 272, 210, 275, 312, 317, 329, 321, 325, 404, + + 333, 356, 377, 353, 355, 418, 409, 650, 678, 721, + 764, 685, 625, 700, 702, 714, 736, 743, 750, 777, + 755, 784, 791, 796, 804, 668, 427, 423, 428, 410, + 424, 786, 799, 436, 443, 476, 520, 529, 292, 519, + 517, 525, 568, 567, 574, 580, 580, 802, 591, 857, + 870, 709, 877, 856, 891, 893, 899, 901, 906, 916, + 921, 923, 928, 942, 934, 950, 957, 613, 632, 629, + 679, 678, 808, 743, 770, 768, 775, 798, 800, 891, + 909, 641, 915, 917, 916, 920, 922, 924, 948, 934, + 938, 957, 695, 950, 959, 968, 945, 795, 947, 966, + + 1019, 1032, 1075, 2044, 1053, 1051, 1058, 1067, 1069, 1094, + 1099, 1101, 1110, 1119, 953, 973, 996, 1001, 998, 985, + 2044, 999, 1030, 1040, 1069, 1071, 1068, 1090, 1093, 1088, + 1089, 1092, 1090, 1102, 1107, 1108, 1117, 829, 1105, 1116, + 1118, 1109, 1122, 1123, 1116, 1130, 1130, 1142, 1133, 1147, + 1149, 1151, 1155, 1135, 2044, 1203, 1178, 1188, 1196, 1218, + 1223, 1229, 1236, 1243, 1248, 833, 850, 1162, 1182, 1214, + 1210, 1213, 1221, 663, 662, 1222, 622, 621, 1209, 869, + 1226, 1229, 969, 1230, 1227, 1228, 1006, 1222, 1224, 640, + 1234, 1238, 1010, 1237, 1240, 1237, 1253, 1255, 1255, 1260, + + 1256, 1272, 1275, 1261, 1182, 1320, 1304, 1309, 1334, 1264, + 1267, 1283, 1284, 1288, 1293, 1300, 1304, 1305, 1307, 1311, + 1307, 1313, 1319, 1314, 0, 1323, 1324, 1327, 1328, 1331, + 1332, 1318, 1341, 1344, 1344, 1349, 1347, 1349, 2044, 1355, + 1358, 1356, 1360, 1353, 1361, 1307, 1365, 1379, 1370, 1383, + 2044, 1369, 1371, 2044, 1381, 1382, 1409, 1415, 1377, 1378, + 1405, 1407, 1409, 1397, 1401, 1404, 1417, 1418, 648, 1409, + 1427, 598, 1411, 1429, 1425, 1426, 1428, 1429, 1433, 1435, + 1438, 1430, 1431, 1446, 1448, 1437, 1450, 1449, 1451, 1463, + 1464, 1466, 1470, 1458, 1459, 1477, 1478, 1483, 1470, 1485, + + 1471, 1484, 1486, 1483, 1484, 1512, 1484, 1488, 1487, 1500, + 1530, 1511, 1513, 1514, 632, 592, 1501, 1520, 1507, 1505, + 1524, 1512, 630, 590, 1518, 1519, 1510, 1511, 1549, 1517, + 1519, 1532, 1533, 1538, 1540, 1525, 1527, 1550, 1544, 1561, + 1552, 1552, 1555, 1576, 1577, 1567, 1577, 1581, 1571, 1580, + 1585, 2044, 2044, 1562, 1563, 1569, 1570, 1571, 1573, 1589, + 1590, 1584, 1586, 1585, 1586, 1587, 1606, 1606, 1613, 1619, + 1619, 1623, 1613, 1614, 1612, 1614, 609, 589, 1618, 1619, + 1618, 1620, 1629, 1630, 1628, 1629, 1626, 1628, 1627, 1646, + 1629, 1649, 2044, 2044, 1635, 1637, 1648, 1649, 1641, 1663, + + 1662, 1654, 2044, 2044, 1667, 1670, 1681, 1682, 1680, 1681, + 1686, 1687, 1680, 1677, 1678, 1677, 1693, 1682, 1682, 1698, + 1686, 1700, 1702, 1688, 1690, 2044, 2044, 1706, 1710, 583, + 577, 1715, 1721, 1707, 1712, 576, 564, 537, 524, 476, + 474, 2044, 2044, 1714, 1734, 2044, 1718, 1736, 2044, 1740, + 1741, 1726, 1727, 1736, 1737, 1735, 1736, 496, 1747, 1749, + 1751, 1737, 1745, 1754, 1741, 1749, 1748, 1749, 450, 441, + 1753, 1758, 2044, 2044, 1776, 1778, 1767, 1770, 2044, 2044, + 1774, 1775, 1776, 1778, 1793, 2044, 1794, 2044, 1785, 1787, + 1783, 1784, 1800, 1801, 1787, 1789, 2044, 1805, 1806, 1795, + + 1812, 1815, 1800, 1816, 1822, 1816, 1822, 2044, 2044, 1824, + 1829, 420, 372, 390, 387, 1835, 1838, 1839, 1840, 2044, + 2044, 1839, 1840, 1834, 1835, 386, 384, 1836, 1837, 1849, + 1850, 1847, 1854, 1846, 1852, 1858, 1849, 1860, 1861, 1863, + 1864, 1858, 1863, 2044, 2044, 1862, 1864, 1869, 1872, 2044, + 2044, 2044, 2044, 2044, 2044, 378, 369, 1877, 1878, 1902, + 365, 1894, 1905, 349, 1896, 1905, 1907, 1908, 1909, 1908, + 1909, 1911, 1913, 1914, 1915, 2044, 2044, 300, 284, 1903, + 2044, 306, 1905, 2044, 290, 1923, 1925, 1926, 1930, 1918, + 1924, 287, 274, 253, 252, 1933, 1938, 1941, 2044, 1944, + + 2044, 1937, 1938, 240, 200, 1937, 1938, 2044, 2044, 2044, + 2044, 1956, 1957, 215, 196, 132, 120, 1946, 1947, 1961, + 1962, 1943, 1945, 2044, 2044, 2044, 2044, 1967, 1968, 1956, + 1957, 2044, 2044, 1976, 1977, 1961, 1962, 1981, 1986, 119, + 116, 2044, 2044, 2044, 2044, 2044, 2037, 126, 2040, 113 } ; -static yyconst flex_int16_t yy_def[773] = +static yyconst flex_int16_t yy_def[751] = { 0, - 768, 1, 768, 768, 768, 768, 768, 769, 768, 768, - 770, 768, 770, 770, 770, 770, 770, 770, 770, 770, - 770, 770, 770, 770, 771, 769, 769, 768, 768, 772, - 772, 772, 768, 772, 772, 772, 772, 772, 772, 772, - 772, 772, 772, 772, 772, 772, 772, 772, 772, 772, - 771, 768, 28, 53, 53, 53, 53, 53, 53, 53, - 53, 53, 53, 53, 53, 53, 768, 772, 772, 772, - 768, 772, 772, 772, 772, 772, 772, 772, 772, 772, - 772, 772, 772, 772, 772, 772, 772, 772, 53, 53, + 746, 1, 746, 746, 746, 746, 746, 747, 746, 746, + 748, 746, 748, 748, 748, 748, 748, 748, 748, 748, + 748, 748, 748, 748, 749, 747, 747, 746, 746, 750, + 750, 750, 746, 750, 750, 750, 750, 750, 750, 750, + 750, 750, 750, 750, 750, 750, 750, 750, 750, 750, + 749, 746, 28, 53, 53, 53, 53, 53, 53, 53, + 53, 53, 53, 53, 53, 746, 750, 750, 750, 746, + 750, 750, 750, 750, 750, 750, 750, 750, 750, 750, + 750, 750, 750, 750, 750, 750, 750, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, - 53, 53, 53, 53, 53, 53, 53, 53, 53, 768, - 772, 772, 772, 768, 772, 772, 772, 772, 772, 772, - 772, 772, 772, 772, 772, 772, 772, 772, 53, 53, - 53, 53, 53, 53, 768, 768, 53, 53, 53, 53, - 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, - 53, 768, 772, 772, 768, 772, 772, 772, 772, 772, - 772, 772, 772, 772, 772, 772, 772, 772, 772, 53, - 53, 53, 53, 53, 53, 53, 768, 768, 768, 768, - 768, 768, 53, 53, 53, 53, 53, 768, 768, 53, - 53, 768, 768, 53, 53, 53, 768, 768, 768, 53, - - 768, 53, 768, 772, 772, 768, 772, 772, 772, 772, - 772, 772, 772, 772, 772, 772, 768, 768, 53, 53, - 53, 53, 53, 768, 768, 768, 768, 768, 768, 768, - 768, 768, 53, 53, 768, 768, 53, 53, 768, 768, - 53, 53, 768, 768, 53, 768, 768, 53, 768, 768, - 768, 768, 768, 768, 768, 768, 53, 768, 772, 772, - 772, 772, 772, 772, 772, 772, 772, 772, 768, 768, - 53, 53, 53, 53, 53, 768, 768, 768, 768, 768, - 768, 768, 768, 53, 53, 768, 768, 53, 53, 768, - 768, 768, 768, 53, 768, 768, 53, 768, 768, 53, - - 768, 768, 768, 768, 768, 768, 768, 768, 53, 772, - 772, 772, 772, 768, 768, 768, 768, 768, 768, 53, - 53, 53, 768, 768, 768, 768, 768, 768, 768, 768, - 53, 768, 768, 768, 768, 768, 768, 53, 768, 768, - 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, - 768, 53, 768, 768, 768, 768, 768, 768, 768, 768, - 768, 768, 772, 772, 768, 768, 768, 768, 768, 768, - 53, 768, 768, 53, 768, 768, 768, 768, 768, 768, - 768, 768, 768, 768, 768, 768, 768, 768, 53, 768, - 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, - - 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, - 768, 768, 768, 772, 768, 768, 768, 768, 768, 768, - 53, 768, 768, 53, 768, 768, 768, 768, 768, 768, - 768, 768, 768, 768, 768, 768, 768, 768, 53, 768, - 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, - 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, - 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, - 768, 768, 768, 768, 768, 53, 768, 768, 768, 768, - 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, - 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, - - 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, - 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, - 768, 768, 768, 768, 768, 768, 53, 768, 768, 768, - 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, - 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, - 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, - 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, - 768, 768, 768, 53, 768, 768, 768, 768, 768, 768, - 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, - 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, - - 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, - 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, - 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, - 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, - 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, - 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, - 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, - 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, - 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, - 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, - - 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, - 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, - 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, - 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, - 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, - 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, - 768, 768, 768, 768, 768, 768, 768, 0, 768, 768, - 768, 768 + 53, 53, 53, 53, 53, 53, 53, 746, 750, 750, + 750, 746, 750, 750, 750, 750, 750, 750, 750, 750, + 750, 750, 750, 750, 750, 750, 53, 53, 53, 53, + 53, 746, 746, 53, 53, 53, 53, 53, 53, 53, + 53, 53, 53, 53, 53, 53, 53, 53, 53, 746, + 750, 750, 746, 750, 750, 750, 750, 750, 750, 750, + 750, 750, 750, 750, 750, 750, 750, 53, 53, 53, + 53, 53, 53, 746, 746, 746, 746, 746, 746, 53, + 53, 53, 53, 53, 746, 746, 53, 53, 53, 746, + 746, 53, 53, 53, 746, 746, 746, 53, 746, 53, + + 746, 750, 750, 746, 750, 750, 750, 750, 750, 750, + 750, 750, 750, 750, 53, 53, 53, 53, 53, 746, + 746, 746, 746, 746, 746, 746, 746, 746, 53, 53, + 746, 746, 53, 53, 746, 746, 53, 53, 53, 746, + 746, 53, 746, 746, 53, 746, 746, 746, 746, 746, + 746, 746, 746, 53, 746, 750, 750, 750, 750, 750, + 750, 750, 750, 750, 750, 53, 53, 53, 53, 53, + 746, 746, 746, 746, 746, 746, 746, 746, 53, 53, + 746, 746, 53, 53, 746, 746, 53, 746, 746, 53, + 746, 746, 53, 746, 746, 53, 746, 746, 746, 746, + + 746, 746, 746, 746, 53, 750, 750, 750, 750, 746, + 746, 746, 746, 53, 53, 53, 746, 746, 746, 746, + 746, 746, 746, 746, 53, 746, 746, 746, 746, 746, + 746, 53, 746, 746, 746, 746, 746, 746, 746, 746, + 746, 746, 746, 746, 746, 53, 746, 746, 746, 746, + 746, 746, 746, 746, 746, 746, 750, 750, 746, 746, + 746, 746, 53, 746, 746, 53, 746, 746, 746, 746, + 746, 746, 746, 746, 746, 746, 746, 746, 746, 746, + 53, 746, 746, 746, 746, 746, 746, 746, 746, 746, + 746, 746, 746, 746, 746, 746, 746, 746, 746, 746, + + 746, 746, 746, 746, 746, 750, 746, 746, 746, 746, + 53, 746, 746, 53, 746, 746, 746, 746, 746, 746, + 746, 746, 746, 746, 746, 746, 746, 746, 53, 746, + 746, 746, 746, 746, 746, 746, 746, 746, 746, 746, + 746, 746, 746, 746, 746, 746, 746, 746, 746, 746, + 746, 746, 746, 746, 746, 746, 746, 746, 746, 746, + 746, 746, 746, 53, 746, 746, 746, 746, 746, 746, + 746, 746, 746, 746, 746, 746, 746, 746, 746, 746, + 746, 746, 746, 746, 746, 746, 746, 746, 746, 746, + 746, 746, 746, 746, 746, 746, 746, 746, 746, 746, + + 746, 746, 746, 746, 746, 746, 746, 746, 746, 746, + 746, 746, 53, 746, 746, 746, 746, 746, 746, 746, + 746, 746, 746, 746, 746, 746, 746, 746, 746, 746, + 746, 746, 746, 746, 746, 746, 746, 746, 746, 746, + 746, 746, 746, 746, 746, 746, 746, 746, 746, 746, + 746, 746, 746, 746, 746, 746, 746, 53, 746, 746, + 746, 746, 746, 746, 746, 746, 746, 746, 746, 746, + 746, 746, 746, 746, 746, 746, 746, 746, 746, 746, + 746, 746, 746, 746, 746, 746, 746, 746, 746, 746, + 746, 746, 746, 746, 746, 746, 746, 746, 746, 746, + + 746, 746, 746, 746, 746, 746, 746, 746, 746, 746, + 746, 746, 746, 746, 746, 746, 746, 746, 746, 746, + 746, 746, 746, 746, 746, 746, 746, 746, 746, 746, + 746, 746, 746, 746, 746, 746, 746, 746, 746, 746, + 746, 746, 746, 746, 746, 746, 746, 746, 746, 746, + 746, 746, 746, 746, 746, 746, 746, 746, 746, 746, + 746, 746, 746, 746, 746, 746, 746, 746, 746, 746, + 746, 746, 746, 746, 746, 746, 746, 746, 746, 746, + 746, 746, 746, 746, 746, 746, 746, 746, 746, 746, + 746, 746, 746, 746, 746, 746, 746, 746, 746, 746, + + 746, 746, 746, 746, 746, 746, 746, 746, 746, 746, + 746, 746, 746, 746, 746, 746, 746, 746, 746, 746, + 746, 746, 746, 746, 746, 746, 746, 746, 746, 746, + 746, 746, 746, 746, 746, 746, 746, 746, 746, 746, + 746, 746, 746, 746, 746, 0, 746, 746, 746, 746 } ; -static yyconst flex_int16_t yy_nxt[2168] = +static yyconst flex_int16_t yy_nxt[2118] = { 0, 4, 5, 6, 7, 8, 4, 7, 9, 4, 10, 11, 11, 11, 11, 11, 11, 11, 12, 7, 4, @@ -781,236 +773,231 @@ static yyconst flex_int16_t yy_nxt[2168] = 32, 32, 33, 33, 33, 33, 33, 33, 33, 34, 37, 39, 35, 41, 38, 42, 43, 44, 47, 49, - 50, 36, 48, 89, 40, 92, 93, 30, 45, 94, - 30, 30, 95, 107, 46, 68, 34, 37, 39, 35, + 50, 36, 48, 90, 40, 91, 92, 30, 45, 93, + 30, 30, 105, 106, 46, 67, 34, 37, 39, 35, 41, 38, 42, 43, 44, 47, 49, 50, 30, 48, - 89, 40, 92, 93, 765, 45, 94, 764, 751, 95, - 107, 46, 53, 53, 53, 53, 53, 53, 53, 30, - 750, 108, 54, 55, 56, 57, 53, 53, 53, 58, - 59, 53, 53, 53, 53, 60, 53, 61, 53, 62, - 63, 64, 65, 66, 53, 53, 53, 53, 108, 54, - 55, 56, 57, 53, 53, 53, 58, 59, 53, 53, - 53, 53, 60, 53, 61, 53, 62, 63, 64, 65, - - 66, 53, 53, 53, 53, 67, 67, 67, 67, 67, - 67, 67, 30, 109, 749, 30, 30, 135, 69, 69, - 69, 69, 69, 69, 69, 71, 71, 71, 71, 71, - 71, 71, 30, 748, 30, 30, 30, 30, 30, 30, - 109, 30, 30, 30, 30, 30, 743, 742, 129, 30, - 73, 74, 30, 30, 30, 30, 136, 130, 30, 31, - 75, 70, 70, 70, 70, 70, 70, 70, 72, 30, - 735, 734, 30, 30, 30, 129, 30, 73, 74, 131, - 96, 30, 76, 30, 130, 30, 97, 75, 30, 30, - 30, 30, 733, 30, 30, 72, 77, 30, 30, 188, - - 30, 30, 30, 30, 30, 732, 131, 96, 725, 76, - 132, 30, 133, 97, 79, 30, 80, 30, 30, 30, - 30, 30, 78, 77, 723, 98, 82, 30, 99, 81, - 721, 30, 30, 90, 30, 30, 83, 132, 189, 133, - 30, 79, 30, 80, 134, 91, 720, 30, 137, 78, - 30, 30, 98, 138, 139, 99, 81, 30, 30, 30, - 90, 30, 30, 83, 84, 30, 140, 708, 30, 30, - 141, 134, 91, 30, 30, 137, 85, 30, 30, 192, - 138, 139, 100, 705, 101, 103, 102, 142, 143, 30, - 144, 84, 86, 140, 104, 105, 701, 141, 87, 145, - - 30, 106, 30, 85, 700, 30, 30, 30, 197, 100, - 88, 101, 103, 102, 142, 143, 30, 144, 193, 86, - 30, 104, 105, 30, 30, 87, 145, 693, 106, 110, - 110, 110, 110, 110, 110, 110, 148, 88, 53, 53, - 53, 53, 149, 150, 30, 53, 53, 198, 692, 151, - 170, 53, 171, 53, 115, 53, 53, 53, 53, 53, - 677, 172, 30, 148, 676, 53, 53, 53, 53, 149, - 150, 30, 53, 53, 30, 30, 151, 170, 53, 171, - 53, 115, 53, 53, 53, 53, 53, 30, 172, 663, - 30, 111, 217, 112, 112, 112, 112, 112, 112, 112, - - 114, 114, 114, 114, 114, 114, 114, 30, 175, 662, - 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, - 627, 30, 30, 30, 30, 30, 626, 615, 119, 30, - 30, 218, 600, 30, 31, 175, 113, 113, 113, 113, - 113, 113, 113, 116, 117, 599, 176, 30, 183, 30, - 30, 30, 184, 118, 30, 30, 30, 598, 30, 30, - 597, 30, 30, 30, 185, 30, 30, 120, 596, 186, - 116, 117, 30, 176, 30, 183, 595, 30, 30, 184, - 118, 30, 121, 30, 30, 30, 30, 30, 122, 30, - 590, 185, 173, 146, 120, 30, 186, 30, 30, 30, - - 174, 589, 541, 30, 30, 540, 30, 30, 147, 121, - 518, 124, 517, 486, 125, 122, 30, 123, 485, 173, - 146, 478, 477, 30, 430, 30, 30, 174, 30, 30, - 30, 30, 30, 235, 427, 147, 330, 30, 124, 30, - 127, 125, 30, 30, 123, 30, 126, 329, 128, 152, - 152, 152, 152, 152, 152, 152, 155, 155, 155, 155, - 155, 155, 155, 156, 327, 187, 190, 127, 30, 191, - 30, 194, 236, 126, 30, 128, 30, 30, 30, 30, - 30, 30, 153, 153, 153, 153, 153, 153, 153, 326, - 156, 30, 187, 190, 30, 30, 191, 30, 194, 30, - - 30, 30, 30, 30, 52, 27, 30, 158, 30, 30, - 30, 30, 30, 157, 246, 160, 30, 159, 30, 30, - 27, 254, 30, 111, 195, 154, 154, 154, 154, 154, - 154, 154, 164, 30, 158, 52, 167, 196, 292, 30, - 157, 161, 160, 30, 159, 29, 30, 30, 30, 202, - 30, 195, 30, 247, 30, 30, 30, 30, 30, 164, - 255, 30, 30, 167, 196, 30, 30, 28, 113, 113, - 113, 113, 113, 113, 113, 162, 202, 293, 219, 163, - 30, 165, 27, 30, 30, 30, 30, 199, 30, 30, - 30, 30, 30, 220, 30, 30, 30, 221, 30, 30, - - 177, 768, 162, 25, 30, 219, 163, 224, 165, 178, - 316, 179, 222, 223, 180, 169, 166, 200, 225, 768, - 220, 168, 30, 181, 221, 182, 201, 177, 30, 768, - 30, 30, 768, 768, 30, 111, 178, 30, 179, 222, - 223, 180, 169, 166, 200, 768, 226, 768, 168, 317, - 181, 768, 182, 203, 203, 203, 203, 203, 203, 203, - 30, 768, 227, 30, 204, 768, 205, 205, 205, 205, - 205, 205, 205, 30, 206, 206, 206, 206, 206, 206, - 206, 30, 768, 30, 30, 30, 30, 30, 30, 227, - 30, 30, 30, 30, 30, 30, 318, 30, 30, 30, - - 30, 30, 30, 768, 30, 768, 209, 30, 30, 210, - 30, 228, 768, 30, 30, 207, 30, 768, 30, 30, - 30, 30, 30, 30, 30, 30, 229, 30, 30, 211, - 30, 768, 30, 768, 213, 319, 768, 208, 228, 30, - 30, 768, 207, 30, 30, 212, 30, 30, 230, 231, - 30, 30, 30, 229, 232, 768, 211, 214, 30, 30, - 30, 213, 30, 30, 233, 768, 30, 234, 215, 237, - 238, 239, 212, 240, 768, 230, 231, 241, 242, 243, - 244, 232, 30, 245, 214, 248, 253, 249, 256, 30, - 250, 233, 216, 257, 234, 215, 237, 238, 239, 251, - - 240, 30, 252, 768, 241, 242, 243, 244, 768, 768, - 245, 269, 248, 253, 249, 256, 768, 250, 332, 216, - 257, 768, 768, 270, 271, 272, 251, 273, 274, 252, - 258, 258, 258, 258, 258, 258, 258, 30, 269, 768, - 30, 30, 275, 259, 259, 259, 259, 259, 259, 259, - 270, 271, 272, 768, 273, 274, 30, 333, 30, 30, - 30, 30, 30, 30, 768, 262, 30, 30, 263, 275, - 276, 264, 30, 768, 30, 30, 30, 30, 30, 30, - 30, 768, 265, 30, 204, 277, 260, 260, 260, 260, - 260, 260, 260, 261, 266, 768, 278, 276, 30, 30, - - 30, 768, 30, 30, 30, 30, 30, 30, 30, 30, - 30, 279, 277, 280, 30, 30, 30, 281, 30, 30, - 261, 266, 30, 278, 30, 282, 283, 30, 30, 284, - 768, 768, 285, 267, 286, 287, 288, 289, 279, 768, - 280, 30, 290, 291, 281, 294, 30, 295, 30, 296, - 297, 298, 282, 283, 299, 300, 284, 30, 268, 285, - 267, 286, 287, 288, 289, 301, 30, 302, 303, 290, - 291, 304, 294, 305, 295, 306, 296, 297, 298, 307, - 308, 299, 300, 309, 30, 268, 768, 30, 204, 314, - 768, 768, 301, 30, 302, 303, 30, 30, 304, 768, - - 305, 30, 306, 315, 30, 30, 307, 308, 768, 312, - 309, 30, 320, 311, 30, 30, 314, 310, 310, 310, - 310, 310, 310, 310, 30, 321, 30, 30, 30, 30, - 315, 322, 30, 30, 313, 30, 323, 324, 30, 320, - 311, 30, 30, 30, 30, 325, 30, 30, 30, 30, - 30, 30, 321, 30, 30, 30, 328, 331, 322, 336, - 334, 768, 335, 323, 324, 338, 30, 339, 340, 341, - 342, 30, 325, 346, 343, 347, 348, 350, 351, 352, - 30, 353, 354, 328, 331, 344, 30, 334, 30, 335, - 355, 356, 338, 30, 339, 340, 341, 342, 337, 357, - - 346, 358, 347, 359, 350, 351, 352, 360, 353, 354, - 361, 768, 372, 345, 365, 349, 366, 355, 356, 367, - 368, 30, 768, 768, 30, 30, 357, 768, 358, 30, - 359, 768, 30, 30, 360, 30, 768, 768, 30, 30, - 369, 365, 370, 366, 768, 371, 367, 368, 374, 362, - 30, 373, 375, 30, 30, 376, 363, 363, 363, 363, - 363, 363, 363, 30, 364, 768, 377, 369, 378, 370, - 379, 30, 371, 380, 381, 374, 382, 30, 383, 375, - 384, 385, 376, 386, 387, 388, 389, 390, 391, 392, - 393, 364, 30, 377, 394, 378, 395, 379, 396, 397, - - 380, 381, 402, 382, 403, 383, 406, 384, 385, 404, - 386, 387, 388, 389, 390, 391, 392, 393, 398, 399, - 407, 394, 408, 395, 409, 396, 397, 400, 401, 402, - 410, 403, 411, 406, 412, 413, 30, 415, 30, 30, - 30, 30, 30, 416, 417, 398, 399, 407, 405, 408, - 418, 409, 419, 768, 400, 401, 420, 410, 421, 411, - 422, 412, 413, 423, 415, 424, 425, 426, 428, 429, - 416, 417, 431, 414, 432, 433, 434, 418, 30, 419, - 30, 435, 436, 420, 437, 421, 438, 422, 439, 440, - 423, 441, 424, 425, 426, 428, 429, 442, 443, 431, - - 414, 432, 433, 434, 444, 445, 446, 447, 435, 436, - 448, 437, 449, 438, 450, 439, 440, 451, 441, 452, - 453, 454, 455, 458, 442, 443, 461, 456, 459, 462, - 463, 444, 445, 446, 447, 457, 460, 448, 464, 449, - 465, 450, 472, 768, 451, 466, 452, 453, 454, 455, - 458, 467, 468, 461, 456, 459, 462, 463, 469, 470, - 471, 474, 457, 460, 475, 464, 30, 465, 476, 30, - 30, 479, 466, 480, 481, 482, 483, 484, 467, 468, - 487, 473, 488, 489, 490, 469, 470, 471, 474, 491, - 493, 475, 494, 495, 496, 476, 497, 498, 479, 499, - - 480, 481, 482, 483, 484, 500, 501, 487, 30, 488, - 489, 490, 502, 503, 504, 505, 506, 493, 507, 494, - 495, 496, 508, 497, 498, 509, 499, 510, 492, 511, - 512, 513, 500, 501, 514, 515, 516, 519, 520, 502, - 503, 504, 505, 506, 521, 507, 522, 523, 524, 508, - 525, 526, 509, 527, 510, 528, 511, 512, 513, 529, - 530, 514, 515, 516, 519, 520, 531, 532, 533, 534, - 535, 521, 536, 522, 523, 524, 537, 525, 526, 538, - 527, 539, 528, 542, 543, 544, 529, 530, 545, 546, - 547, 548, 549, 531, 532, 533, 534, 535, 550, 536, - - 551, 552, 553, 537, 554, 555, 538, 556, 539, 557, - 542, 543, 544, 558, 559, 545, 546, 547, 548, 549, - 560, 561, 562, 563, 564, 550, 565, 551, 552, 553, - 566, 554, 555, 567, 556, 568, 557, 569, 570, 571, - 558, 559, 572, 573, 574, 575, 576, 560, 561, 562, - 563, 564, 577, 565, 578, 579, 580, 566, 581, 582, - 567, 583, 568, 584, 569, 570, 571, 585, 586, 572, - 573, 574, 575, 576, 587, 588, 591, 592, 593, 577, - 594, 578, 579, 580, 601, 581, 582, 602, 583, 603, - 584, 604, 605, 606, 585, 586, 607, 608, 609, 610, - - 611, 587, 588, 591, 592, 593, 612, 594, 613, 614, - 616, 601, 617, 618, 602, 619, 603, 620, 604, 605, - 606, 621, 622, 607, 608, 609, 610, 611, 623, 624, - 625, 628, 629, 612, 630, 613, 614, 616, 631, 617, - 618, 632, 619, 633, 620, 634, 635, 636, 621, 622, - 637, 638, 639, 640, 641, 623, 624, 625, 628, 629, - 642, 630, 643, 644, 645, 631, 646, 647, 632, 648, - 633, 649, 634, 635, 636, 650, 651, 637, 638, 639, - 640, 641, 652, 653, 654, 655, 656, 642, 657, 643, - 644, 645, 658, 646, 647, 659, 648, 660, 649, 661, - - 664, 665, 650, 651, 666, 667, 668, 669, 670, 652, - 653, 654, 655, 656, 671, 657, 672, 673, 674, 658, - 675, 678, 659, 679, 660, 680, 661, 664, 665, 681, - 682, 666, 667, 668, 669, 670, 683, 684, 685, 686, - 687, 671, 688, 672, 673, 674, 689, 675, 678, 690, - 679, 691, 680, 694, 695, 696, 681, 682, 697, 698, - 699, 702, 703, 683, 684, 685, 686, 687, 704, 688, - 706, 707, 709, 689, 710, 711, 690, 712, 691, 713, - 694, 695, 696, 714, 715, 697, 698, 699, 702, 703, - 716, 717, 718, 719, 722, 704, 724, 706, 707, 709, - - 726, 710, 711, 727, 712, 728, 713, 729, 730, 731, - 714, 715, 736, 737, 738, 739, 740, 716, 717, 718, - 719, 722, 741, 724, 744, 745, 746, 726, 747, 752, - 727, 753, 728, 754, 729, 730, 731, 755, 756, 736, - 737, 738, 739, 740, 757, 758, 759, 760, 761, 741, - 762, 744, 745, 746, 763, 747, 752, 766, 753, 767, - 754, 768, 768, 768, 755, 756, 768, 768, 768, 768, - 768, 757, 758, 759, 760, 761, 768, 762, 768, 768, - 768, 763, 768, 768, 766, 768, 767, 26, 768, 26, - 51, 51, 51, 3, 768, 768, 768, 768, 768, 768, - - 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, - 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, - 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, - 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, - 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, - 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, - 768, 768, 768, 768, 768, 768, 768 + 90, 40, 91, 92, 745, 45, 93, 744, 727, 105, + 106, 46, 53, 53, 53, 53, 53, 53, 53, 30, + 726, 107, 53, 54, 55, 56, 53, 53, 53, 57, + 58, 53, 53, 53, 53, 59, 53, 60, 53, 61, + 62, 63, 64, 65, 53, 53, 53, 53, 107, 53, + 54, 55, 56, 53, 53, 53, 57, 58, 53, 53, + 53, 53, 59, 53, 60, 53, 61, 62, 63, 64, + + 65, 53, 53, 53, 53, 66, 66, 66, 66, 66, + 66, 66, 30, 127, 725, 30, 30, 132, 68, 68, + 68, 68, 68, 68, 68, 70, 70, 70, 70, 70, + 70, 70, 30, 724, 30, 30, 30, 30, 30, 30, + 127, 30, 30, 30, 30, 30, 719, 718, 128, 30, + 72, 73, 30, 30, 30, 30, 133, 129, 30, 31, + 74, 69, 69, 69, 69, 69, 69, 69, 71, 30, + 711, 710, 30, 30, 30, 128, 30, 72, 73, 130, + 94, 30, 75, 30, 129, 30, 95, 74, 30, 30, + 30, 30, 709, 30, 30, 71, 76, 30, 30, 185, + + 30, 30, 30, 30, 30, 708, 130, 94, 701, 75, + 131, 30, 134, 95, 78, 30, 79, 30, 30, 30, + 30, 30, 77, 76, 699, 96, 81, 30, 97, 80, + 697, 30, 30, 88, 30, 30, 82, 131, 186, 134, + 30, 78, 30, 79, 135, 89, 696, 30, 136, 77, + 30, 30, 96, 137, 138, 97, 80, 30, 30, 30, + 88, 30, 30, 82, 83, 30, 139, 684, 30, 30, + 142, 135, 89, 30, 30, 136, 84, 30, 30, 143, + 137, 138, 98, 681, 99, 101, 100, 677, 146, 30, + 147, 83, 85, 139, 102, 103, 676, 142, 86, 144, + + 30, 104, 655, 84, 654, 645, 143, 30, 644, 98, + 87, 99, 101, 100, 145, 146, 30, 147, 643, 85, + 30, 102, 103, 30, 30, 86, 144, 642, 104, 108, + 108, 108, 108, 108, 108, 108, 140, 87, 53, 53, + 53, 145, 148, 141, 53, 53, 149, 168, 169, 172, + 53, 173, 53, 170, 53, 53, 53, 53, 53, 609, + 180, 171, 30, 140, 181, 53, 53, 53, 608, 148, + 141, 53, 53, 149, 168, 169, 172, 53, 173, 53, + 170, 53, 53, 53, 53, 53, 30, 180, 171, 30, + 109, 181, 110, 110, 110, 110, 110, 110, 110, 112, + + 112, 112, 112, 112, 112, 112, 30, 182, 30, 30, + 30, 30, 30, 30, 597, 30, 30, 30, 30, 30, + 584, 30, 583, 30, 30, 30, 30, 30, 30, 30, + 117, 582, 30, 31, 182, 111, 111, 111, 111, 111, + 111, 111, 113, 30, 581, 183, 30, 30, 30, 114, + 30, 115, 184, 187, 188, 30, 30, 30, 30, 30, + 30, 30, 30, 30, 30, 30, 189, 30, 30, 113, + 30, 30, 183, 30, 30, 190, 114, 116, 115, 184, + 187, 188, 580, 119, 118, 30, 30, 195, 30, 30, + 30, 30, 30, 189, 579, 574, 120, 192, 30, 30, + + 30, 573, 30, 30, 116, 30, 30, 527, 30, 30, + 119, 118, 30, 193, 191, 194, 122, 30, 123, 200, + 30, 30, 121, 120, 192, 124, 196, 526, 30, 30, + 30, 30, 30, 30, 30, 30, 474, 473, 466, 465, + 193, 30, 194, 122, 420, 123, 200, 30, 231, 121, + 215, 126, 124, 154, 125, 417, 216, 217, 339, 30, + 150, 150, 150, 150, 150, 150, 150, 324, 323, 321, + 320, 30, 30, 30, 52, 30, 30, 215, 126, 27, + 154, 125, 30, 216, 217, 30, 30, 232, 151, 151, + 151, 151, 151, 151, 151, 153, 153, 153, 153, 153, + + 153, 153, 243, 218, 30, 27, 30, 30, 30, 30, + 30, 52, 29, 30, 30, 219, 30, 109, 30, 28, + 27, 30, 30, 746, 30, 30, 155, 25, 30, 109, + 218, 152, 152, 152, 152, 152, 152, 152, 157, 156, + 30, 244, 219, 30, 30, 746, 30, 30, 30, 746, + 30, 30, 746, 155, 30, 30, 158, 30, 30, 30, + 30, 746, 30, 30, 746, 157, 156, 30, 30, 746, + 160, 30, 30, 746, 111, 111, 111, 111, 111, 111, + 111, 30, 159, 158, 30, 30, 163, 223, 30, 30, + 161, 30, 30, 746, 224, 30, 30, 160, 30, 30, + + 30, 30, 251, 30, 30, 162, 225, 174, 30, 197, + 30, 30, 30, 163, 223, 220, 175, 161, 176, 226, + 177, 224, 227, 30, 164, 165, 221, 746, 167, 178, + 30, 179, 162, 225, 174, 166, 288, 30, 228, 198, + 310, 252, 30, 175, 746, 176, 226, 177, 199, 227, + 30, 164, 165, 746, 222, 167, 178, 312, 179, 746, + 30, 746, 166, 30, 30, 228, 198, 201, 201, 201, + 201, 201, 201, 201, 30, 289, 326, 30, 202, 311, + 203, 203, 203, 203, 203, 203, 203, 204, 204, 204, + 204, 204, 204, 204, 205, 30, 313, 30, 30, 30, + + 30, 30, 30, 30, 746, 30, 30, 30, 30, 30, + 30, 746, 746, 30, 30, 327, 30, 746, 746, 207, + 30, 205, 208, 30, 30, 30, 229, 30, 30, 30, + 30, 30, 30, 230, 746, 30, 30, 30, 30, 30, + 746, 30, 30, 233, 209, 30, 30, 206, 211, 30, + 30, 234, 30, 229, 30, 235, 210, 30, 30, 236, + 230, 30, 30, 237, 30, 30, 213, 30, 238, 30, + 233, 209, 239, 240, 30, 211, 330, 241, 234, 212, + 30, 242, 235, 210, 245, 250, 236, 253, 30, 246, + 237, 254, 247, 213, 214, 238, 30, 266, 248, 239, + + 240, 249, 746, 30, 241, 746, 212, 746, 242, 746, + 267, 245, 250, 335, 253, 331, 246, 342, 254, 247, + 746, 214, 268, 269, 266, 248, 270, 271, 249, 255, + 255, 255, 255, 255, 255, 255, 30, 267, 746, 30, + 30, 272, 256, 256, 256, 256, 256, 256, 256, 268, + 269, 746, 336, 270, 271, 30, 343, 30, 30, 30, + 30, 30, 30, 746, 259, 30, 30, 260, 272, 273, + 261, 30, 746, 30, 30, 30, 30, 30, 30, 30, + 746, 262, 30, 202, 274, 257, 257, 257, 257, 257, + 257, 257, 258, 263, 746, 275, 273, 30, 30, 30, + + 746, 30, 30, 30, 30, 30, 30, 30, 30, 30, + 276, 274, 277, 30, 30, 30, 278, 30, 30, 258, + 263, 30, 275, 30, 279, 280, 30, 30, 281, 746, + 746, 282, 264, 283, 284, 285, 286, 276, 746, 277, + 30, 287, 290, 278, 291, 30, 292, 30, 293, 294, + 295, 279, 280, 296, 297, 281, 30, 265, 282, 264, + 283, 284, 285, 286, 298, 30, 299, 300, 287, 290, + 301, 291, 302, 292, 303, 293, 294, 295, 304, 305, + 296, 297, 30, 746, 265, 30, 202, 746, 746, 355, + 746, 298, 30, 299, 300, 30, 30, 301, 746, 302, + + 30, 303, 314, 30, 30, 304, 305, 30, 308, 746, + 30, 30, 307, 306, 306, 306, 306, 306, 306, 306, + 746, 315, 30, 746, 30, 30, 30, 30, 356, 314, + 30, 30, 309, 30, 30, 316, 30, 30, 317, 307, + 30, 318, 30, 30, 30, 319, 322, 30, 315, 30, + 30, 30, 30, 325, 328, 30, 30, 329, 332, 333, + 334, 337, 316, 338, 30, 317, 340, 746, 318, 30, + 341, 344, 319, 322, 345, 30, 346, 347, 348, 349, + 325, 328, 30, 350, 329, 332, 333, 334, 337, 30, + 338, 351, 352, 340, 30, 353, 354, 341, 344, 359, + + 364, 345, 360, 346, 347, 348, 349, 746, 30, 746, + 350, 30, 30, 30, 396, 746, 30, 30, 351, 352, + 361, 362, 353, 354, 30, 363, 359, 30, 30, 360, + 357, 357, 357, 357, 357, 357, 357, 358, 30, 365, + 366, 30, 30, 367, 368, 369, 370, 361, 362, 371, + 30, 372, 363, 397, 373, 30, 374, 375, 376, 377, + 378, 379, 380, 381, 358, 382, 30, 366, 383, 384, + 367, 368, 369, 370, 385, 386, 371, 387, 372, 388, + 30, 373, 389, 374, 375, 376, 377, 378, 379, 380, + 381, 394, 382, 390, 391, 383, 384, 392, 393, 395, + + 398, 385, 386, 399, 387, 400, 388, 401, 402, 389, + 403, 404, 405, 30, 407, 408, 30, 30, 394, 30, + 390, 391, 30, 30, 392, 393, 395, 398, 746, 409, + 399, 410, 400, 411, 401, 402, 412, 403, 404, 405, + 413, 407, 408, 414, 415, 416, 418, 419, 421, 422, + 423, 424, 425, 426, 406, 30, 409, 427, 410, 428, + 411, 30, 429, 412, 430, 431, 432, 413, 433, 434, + 414, 415, 416, 418, 419, 421, 422, 423, 424, 425, + 426, 406, 435, 436, 427, 437, 428, 438, 439, 429, + 440, 430, 431, 432, 441, 433, 434, 442, 443, 444, + + 445, 448, 451, 446, 452, 449, 453, 454, 455, 435, + 436, 447, 437, 450, 438, 439, 30, 440, 456, 30, + 30, 441, 457, 458, 442, 443, 444, 445, 448, 451, + 446, 452, 449, 453, 454, 455, 459, 460, 447, 462, + 450, 463, 464, 467, 468, 456, 469, 470, 471, 457, + 458, 472, 475, 476, 477, 478, 479, 481, 30, 482, + 483, 484, 485, 459, 486, 487, 462, 488, 463, 464, + 467, 468, 489, 469, 470, 471, 461, 490, 472, 475, + 476, 477, 478, 491, 481, 492, 482, 483, 484, 485, + 493, 486, 487, 494, 488, 480, 495, 496, 497, 489, + + 498, 499, 500, 501, 490, 502, 503, 504, 505, 506, + 491, 507, 492, 508, 509, 510, 511, 493, 512, 513, + 494, 514, 515, 495, 496, 497, 516, 498, 499, 500, + 501, 517, 502, 503, 504, 505, 506, 518, 507, 519, + 508, 509, 510, 511, 520, 512, 513, 521, 514, 515, + 522, 523, 524, 516, 525, 528, 529, 530, 517, 531, + 532, 533, 534, 535, 518, 536, 519, 537, 538, 539, + 540, 520, 541, 542, 521, 543, 544, 522, 523, 524, + 545, 525, 528, 529, 530, 546, 531, 532, 533, 534, + 535, 547, 536, 548, 537, 538, 539, 540, 549, 541, + + 542, 550, 543, 544, 551, 552, 553, 545, 554, 555, + 556, 557, 546, 558, 559, 560, 561, 562, 547, 563, + 548, 564, 565, 566, 567, 549, 568, 569, 550, 570, + 571, 551, 552, 553, 572, 554, 555, 556, 557, 575, + 558, 559, 560, 561, 562, 576, 563, 577, 564, 565, + 566, 567, 578, 568, 569, 585, 570, 571, 586, 587, + 588, 572, 589, 590, 591, 592, 575, 593, 594, 595, + 596, 598, 576, 599, 577, 600, 601, 602, 603, 578, + 604, 605, 585, 606, 607, 586, 587, 588, 610, 589, + 590, 591, 592, 611, 593, 594, 595, 596, 598, 612, + + 599, 613, 600, 601, 602, 603, 614, 604, 605, 615, + 606, 607, 616, 617, 618, 610, 619, 620, 621, 622, + 611, 623, 624, 625, 626, 627, 612, 628, 613, 629, + 630, 631, 632, 614, 633, 634, 615, 635, 636, 616, + 617, 618, 637, 619, 620, 621, 622, 638, 623, 624, + 625, 626, 627, 639, 628, 640, 629, 630, 631, 632, + 641, 633, 634, 646, 635, 636, 647, 648, 649, 637, + 650, 651, 652, 653, 638, 656, 657, 658, 659, 660, + 639, 661, 640, 662, 663, 664, 665, 641, 666, 667, + 646, 668, 669, 647, 648, 649, 670, 650, 651, 652, + + 653, 671, 656, 657, 658, 659, 660, 672, 661, 673, + 662, 663, 664, 665, 674, 666, 667, 675, 668, 669, + 678, 679, 680, 670, 682, 683, 685, 686, 671, 687, + 688, 689, 690, 691, 672, 692, 673, 693, 694, 695, + 698, 674, 700, 702, 675, 703, 704, 678, 679, 680, + 705, 682, 683, 685, 686, 706, 687, 688, 689, 690, + 691, 707, 692, 712, 693, 694, 695, 698, 713, 700, + 702, 714, 703, 704, 715, 716, 717, 705, 720, 721, + 722, 723, 706, 728, 729, 730, 731, 732, 707, 733, + 712, 734, 735, 736, 737, 713, 738, 739, 714, 740, + + 741, 715, 716, 717, 742, 720, 721, 722, 723, 743, + 728, 729, 730, 731, 732, 746, 733, 746, 734, 735, + 736, 737, 746, 738, 739, 746, 740, 741, 746, 746, + 746, 742, 746, 746, 746, 746, 743, 26, 746, 26, + 51, 51, 51, 3, 746, 746, 746, 746, 746, 746, + 746, 746, 746, 746, 746, 746, 746, 746, 746, 746, + 746, 746, 746, 746, 746, 746, 746, 746, 746, 746, + 746, 746, 746, 746, 746, 746, 746, 746, 746, 746, + 746, 746, 746, 746, 746, 746, 746, 746, 746, 746, + 746, 746, 746, 746, 746, 746, 746, 746, 746, 746, + + 746, 746, 746, 746, 746, 746, 746, 746, 746, 746, + 746, 746, 746, 746, 746, 746, 746 } ; -static yyconst flex_int16_t yy_chk[2168] = +static yyconst flex_int16_t yy_chk[2118] = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @@ -1023,236 +1010,231 @@ static yyconst flex_int16_t yy_chk[2168] = 11, 11, 12, 12, 12, 12, 12, 12, 12, 14, 16, 17, 14, 18, 16, 19, 20, 21, 22, 23, - 24, 15, 22, 54, 17, 56, 57, 30, 21, 58, - 30, 30, 59, 64, 21, 772, 14, 16, 17, 14, - 18, 16, 19, 20, 21, 22, 23, 24, 770, 22, - 54, 17, 56, 57, 761, 21, 58, 760, 741, 59, + 24, 15, 22, 55, 17, 56, 57, 30, 21, 58, + 30, 30, 63, 64, 21, 750, 14, 16, 17, 14, + 18, 16, 19, 20, 21, 22, 23, 24, 748, 22, + 55, 17, 56, 57, 741, 21, 58, 740, 717, 63, 64, 21, 28, 28, 28, 28, 28, 28, 28, 30, - 740, 65, 28, 28, 28, 28, 28, 28, 28, 28, + 716, 65, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 65, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 29, 29, 29, 29, 29, - 29, 29, 31, 66, 739, 31, 31, 95, 31, 31, + 29, 29, 31, 88, 715, 31, 31, 93, 31, 31, 31, 31, 31, 31, 31, 33, 33, 33, 33, 33, - 33, 33, 35, 738, 36, 35, 35, 36, 36, 34, - 66, 37, 34, 34, 37, 37, 729, 728, 89, 38, - 35, 36, 38, 38, 31, 32, 95, 90, 32, 32, + 33, 33, 35, 714, 36, 35, 35, 36, 36, 34, + 88, 37, 34, 34, 37, 37, 705, 704, 89, 38, + 35, 36, 38, 38, 31, 32, 93, 90, 32, 32, 37, 32, 32, 32, 32, 32, 32, 32, 34, 39, - 719, 718, 39, 39, 35, 89, 36, 35, 36, 91, - 60, 34, 38, 37, 90, 40, 60, 37, 40, 40, - 41, 38, 717, 41, 41, 34, 39, 32, 42, 142, - - 43, 42, 42, 43, 43, 716, 91, 60, 709, 38, - 92, 39, 93, 60, 41, 44, 42, 45, 44, 44, - 45, 45, 40, 39, 706, 61, 44, 40, 61, 43, - 703, 46, 41, 55, 46, 46, 45, 92, 142, 93, - 42, 41, 43, 42, 94, 55, 702, 47, 96, 40, - 47, 47, 61, 97, 98, 61, 43, 44, 48, 45, - 55, 48, 48, 45, 46, 49, 99, 686, 49, 49, - 100, 94, 55, 46, 50, 96, 47, 50, 50, 145, - 97, 98, 62, 683, 62, 63, 62, 101, 102, 47, - 103, 46, 48, 99, 63, 63, 679, 100, 49, 104, - - 48, 63, 68, 47, 678, 68, 68, 49, 149, 62, - 50, 62, 63, 62, 101, 102, 50, 103, 145, 48, - 72, 63, 63, 72, 72, 49, 104, 665, 63, 67, - 67, 67, 67, 67, 67, 67, 106, 50, 53, 53, - 53, 53, 107, 108, 68, 53, 53, 149, 664, 109, - 129, 53, 130, 53, 72, 53, 53, 53, 53, 53, - 647, 131, 72, 106, 646, 53, 53, 53, 53, 107, - 108, 73, 53, 53, 73, 73, 109, 129, 53, 130, - 53, 72, 53, 53, 53, 53, 53, 69, 131, 631, - 69, 69, 170, 69, 69, 69, 69, 69, 69, 69, - - 71, 71, 71, 71, 71, 71, 71, 74, 133, 630, - 74, 74, 75, 73, 76, 75, 75, 76, 76, 77, - 586, 78, 77, 77, 78, 78, 585, 574, 78, 69, - 70, 170, 555, 70, 70, 133, 70, 70, 70, 70, - 70, 70, 70, 74, 76, 554, 134, 79, 137, 74, - 79, 79, 138, 77, 75, 80, 76, 553, 80, 80, - 552, 77, 81, 78, 139, 81, 81, 79, 551, 140, - 74, 76, 70, 134, 82, 137, 550, 82, 82, 138, - 77, 83, 80, 84, 83, 83, 84, 84, 81, 79, - 545, 139, 132, 105, 79, 85, 140, 80, 85, 85, - - 132, 544, 490, 87, 81, 489, 87, 87, 105, 80, - 467, 84, 466, 434, 85, 81, 82, 83, 433, 132, - 105, 426, 425, 83, 380, 84, 86, 132, 88, 86, - 86, 88, 88, 185, 377, 105, 283, 85, 84, 115, - 87, 85, 115, 115, 83, 87, 86, 282, 88, 110, - 110, 110, 110, 110, 110, 110, 114, 114, 114, 114, - 114, 114, 114, 115, 280, 141, 143, 87, 86, 144, - 88, 146, 185, 86, 117, 88, 111, 117, 117, 111, - 111, 115, 111, 111, 111, 111, 111, 111, 111, 279, - 115, 116, 141, 143, 116, 116, 144, 118, 146, 119, - - 118, 118, 119, 119, 51, 27, 125, 117, 122, 125, - 125, 122, 122, 116, 195, 119, 117, 118, 111, 112, - 26, 200, 112, 112, 147, 112, 112, 112, 112, 112, - 112, 112, 122, 116, 117, 25, 125, 148, 241, 118, - 116, 119, 119, 121, 118, 10, 121, 121, 125, 151, - 122, 147, 120, 195, 123, 120, 120, 123, 123, 122, - 200, 112, 113, 125, 148, 113, 113, 9, 113, 113, - 113, 113, 113, 113, 113, 120, 151, 241, 171, 121, - 124, 123, 8, 124, 124, 121, 126, 150, 128, 126, - 126, 128, 128, 172, 120, 127, 123, 173, 127, 127, - - 135, 3, 120, 2, 113, 171, 121, 176, 123, 135, - 271, 135, 174, 175, 136, 127, 124, 150, 176, 0, - 172, 126, 124, 136, 173, 136, 150, 135, 126, 0, - 128, 154, 0, 0, 154, 154, 135, 127, 135, 174, - 175, 136, 127, 124, 150, 0, 176, 0, 126, 271, - 136, 0, 136, 152, 152, 152, 152, 152, 152, 152, - 153, 0, 177, 153, 153, 0, 153, 153, 153, 153, - 153, 153, 153, 154, 155, 155, 155, 155, 155, 155, - 155, 156, 0, 157, 156, 156, 157, 157, 158, 177, - 159, 158, 158, 159, 159, 160, 272, 161, 160, 160, - - 161, 161, 153, 0, 162, 0, 161, 162, 162, 161, - 163, 178, 0, 163, 163, 156, 164, 0, 165, 164, - 164, 165, 165, 156, 166, 157, 179, 166, 166, 163, - 158, 0, 159, 0, 165, 272, 0, 160, 178, 161, - 167, 0, 156, 167, 167, 164, 162, 168, 180, 181, - 168, 168, 163, 179, 182, 0, 163, 166, 164, 169, - 165, 165, 169, 169, 183, 0, 166, 184, 167, 186, - 187, 188, 164, 189, 0, 180, 181, 190, 191, 192, - 193, 182, 167, 194, 166, 196, 199, 197, 201, 168, - 197, 183, 169, 202, 184, 167, 186, 187, 188, 198, - - 189, 169, 198, 0, 190, 191, 192, 193, 0, 0, - 194, 217, 196, 199, 197, 201, 0, 197, 285, 169, - 202, 0, 0, 218, 219, 220, 198, 221, 222, 198, - 203, 203, 203, 203, 203, 203, 203, 204, 217, 0, - 204, 204, 223, 204, 204, 204, 204, 204, 204, 204, - 218, 219, 220, 0, 221, 222, 208, 285, 207, 208, - 208, 207, 207, 209, 0, 208, 209, 209, 208, 223, - 224, 209, 210, 0, 211, 210, 210, 211, 211, 204, - 205, 0, 210, 205, 205, 226, 205, 205, 205, 205, - 205, 205, 205, 207, 211, 0, 227, 224, 208, 212, - - 207, 0, 212, 212, 213, 209, 214, 213, 213, 214, - 214, 228, 226, 229, 210, 215, 211, 230, 215, 215, - 207, 211, 205, 227, 216, 231, 232, 216, 216, 233, - 0, 0, 234, 212, 235, 236, 237, 238, 228, 0, - 229, 212, 239, 240, 230, 242, 213, 243, 214, 244, - 245, 246, 231, 232, 247, 248, 233, 215, 216, 234, - 212, 235, 236, 237, 238, 249, 216, 250, 251, 239, - 240, 252, 242, 253, 243, 254, 244, 245, 246, 255, - 256, 247, 248, 257, 260, 216, 0, 260, 260, 269, - 0, 0, 249, 261, 250, 251, 261, 261, 252, 0, - - 253, 262, 254, 270, 262, 262, 255, 256, 0, 262, - 257, 259, 273, 261, 259, 259, 269, 259, 259, 259, - 259, 259, 259, 259, 263, 274, 260, 263, 263, 264, - 270, 275, 264, 264, 263, 261, 276, 277, 265, 273, - 261, 265, 265, 262, 266, 278, 267, 266, 266, 267, - 267, 268, 274, 259, 268, 268, 281, 284, 275, 288, - 286, 0, 287, 276, 277, 289, 263, 290, 291, 292, - 293, 264, 278, 295, 294, 296, 297, 298, 299, 300, - 265, 301, 302, 281, 284, 294, 266, 286, 267, 287, - 303, 304, 289, 268, 290, 291, 292, 293, 288, 305, - - 295, 306, 296, 307, 298, 299, 300, 308, 301, 302, - 309, 0, 321, 294, 314, 297, 315, 303, 304, 316, - 317, 312, 0, 0, 312, 312, 305, 0, 306, 313, - 307, 0, 313, 313, 308, 311, 0, 0, 311, 311, - 318, 314, 319, 315, 0, 320, 316, 317, 322, 309, - 310, 321, 323, 310, 310, 324, 310, 310, 310, 310, - 310, 310, 310, 312, 311, 0, 325, 318, 326, 319, - 327, 313, 320, 328, 329, 322, 330, 311, 332, 323, - 333, 334, 324, 335, 336, 337, 338, 339, 340, 341, - 342, 311, 310, 325, 343, 326, 345, 327, 346, 347, - - 328, 329, 350, 330, 351, 332, 353, 333, 334, 352, - 335, 336, 337, 338, 339, 340, 341, 342, 348, 348, - 354, 343, 355, 345, 356, 346, 347, 349, 349, 350, - 358, 351, 359, 353, 361, 362, 363, 365, 364, 363, - 363, 364, 364, 366, 367, 348, 348, 354, 352, 355, - 368, 356, 369, 0, 349, 349, 370, 358, 371, 359, - 372, 361, 362, 373, 365, 374, 375, 376, 378, 379, - 366, 367, 381, 364, 382, 383, 384, 368, 363, 369, - 364, 385, 386, 370, 387, 371, 388, 372, 389, 390, - 373, 391, 374, 375, 376, 378, 379, 392, 393, 381, - - 364, 382, 383, 384, 394, 395, 396, 397, 385, 386, - 398, 387, 399, 388, 400, 389, 390, 401, 391, 402, - 403, 404, 405, 407, 392, 393, 409, 406, 408, 410, - 411, 394, 395, 396, 397, 406, 408, 398, 412, 399, - 413, 400, 421, 0, 401, 415, 402, 403, 404, 405, - 407, 416, 417, 409, 406, 408, 410, 411, 418, 419, - 420, 422, 406, 408, 423, 412, 414, 413, 424, 414, - 414, 427, 415, 428, 429, 430, 431, 432, 416, 417, - 435, 421, 436, 437, 438, 418, 419, 420, 422, 439, - 440, 423, 441, 442, 443, 424, 444, 445, 427, 446, - - 428, 429, 430, 431, 432, 447, 448, 435, 414, 436, - 437, 438, 449, 450, 451, 452, 453, 440, 454, 441, - 442, 443, 455, 444, 445, 456, 446, 457, 439, 458, - 459, 460, 447, 448, 461, 464, 465, 468, 469, 449, - 450, 451, 452, 453, 470, 454, 471, 472, 473, 455, - 474, 475, 456, 476, 457, 477, 458, 459, 460, 478, - 479, 461, 464, 465, 468, 469, 480, 481, 482, 483, - 484, 470, 485, 471, 472, 473, 486, 474, 475, 487, - 476, 488, 477, 491, 492, 493, 478, 479, 494, 495, - 496, 497, 498, 480, 481, 482, 483, 484, 499, 485, - - 500, 501, 502, 486, 503, 504, 487, 507, 488, 508, - 491, 492, 493, 509, 510, 494, 495, 496, 497, 498, - 511, 512, 513, 514, 517, 499, 518, 500, 501, 502, - 519, 503, 504, 520, 507, 521, 508, 522, 523, 524, - 509, 510, 525, 526, 527, 528, 529, 511, 512, 513, - 514, 517, 530, 518, 531, 532, 533, 519, 534, 535, - 520, 536, 521, 537, 522, 523, 524, 538, 539, 525, - 526, 527, 528, 529, 542, 543, 546, 547, 548, 530, - 549, 531, 532, 533, 558, 534, 535, 559, 536, 561, - 537, 562, 564, 565, 538, 539, 566, 567, 568, 569, - - 570, 542, 543, 546, 547, 548, 571, 549, 572, 573, - 575, 558, 576, 577, 559, 578, 561, 579, 562, 564, - 565, 580, 581, 566, 567, 568, 569, 570, 582, 583, - 584, 587, 588, 571, 591, 572, 573, 575, 592, 576, - 577, 593, 578, 594, 579, 597, 598, 599, 580, 581, - 600, 601, 603, 605, 606, 582, 583, 584, 587, 588, - 607, 591, 608, 609, 610, 592, 611, 612, 593, 613, - 594, 614, 597, 598, 599, 616, 617, 600, 601, 603, - 605, 606, 618, 619, 620, 621, 622, 607, 623, 608, - 609, 610, 624, 611, 612, 625, 613, 628, 614, 629, - - 632, 633, 616, 617, 634, 635, 636, 637, 640, 618, - 619, 620, 621, 622, 641, 623, 642, 643, 644, 624, - 645, 648, 625, 649, 628, 650, 629, 632, 633, 651, - 652, 634, 635, 636, 637, 640, 653, 654, 655, 656, - 657, 641, 658, 642, 643, 644, 659, 645, 648, 660, - 649, 661, 650, 666, 667, 668, 651, 652, 669, 670, - 671, 680, 681, 653, 654, 655, 656, 657, 682, 658, - 684, 685, 687, 659, 688, 689, 660, 690, 661, 691, - 666, 667, 668, 692, 693, 669, 670, 671, 680, 681, - 694, 695, 696, 697, 704, 682, 707, 684, 685, 687, - - 710, 688, 689, 711, 690, 712, 691, 713, 714, 715, - 692, 693, 720, 721, 722, 724, 726, 694, 695, 696, - 697, 704, 727, 707, 730, 731, 736, 710, 737, 742, - 711, 743, 712, 744, 713, 714, 715, 745, 746, 720, - 721, 722, 724, 726, 747, 752, 753, 754, 755, 727, - 758, 730, 731, 736, 759, 737, 742, 762, 743, 763, - 744, 0, 0, 0, 745, 746, 0, 0, 0, 0, - 0, 747, 752, 753, 754, 755, 0, 758, 0, 0, - 0, 759, 0, 0, 762, 0, 763, 769, 0, 769, - 771, 771, 771, 768, 768, 768, 768, 768, 768, 768, - - 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, - 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, - 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, - 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, - 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, - 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, - 768, 768, 768, 768, 768, 768, 768 + 695, 694, 39, 39, 35, 89, 36, 35, 36, 91, + 59, 34, 38, 37, 90, 40, 59, 37, 40, 40, + 41, 38, 693, 41, 41, 34, 39, 32, 42, 139, + + 43, 42, 42, 43, 43, 692, 91, 59, 685, 38, + 92, 39, 94, 59, 41, 44, 42, 45, 44, 44, + 45, 45, 40, 39, 682, 60, 44, 40, 60, 43, + 679, 46, 41, 54, 46, 46, 45, 92, 139, 94, + 42, 41, 43, 42, 95, 54, 678, 47, 96, 40, + 47, 47, 60, 97, 98, 60, 43, 44, 48, 45, + 54, 48, 48, 45, 46, 49, 99, 664, 49, 49, + 101, 95, 54, 46, 50, 96, 47, 50, 50, 102, + 97, 98, 61, 661, 61, 62, 61, 657, 104, 47, + 105, 46, 48, 99, 62, 62, 656, 101, 49, 103, + + 48, 62, 627, 47, 626, 615, 102, 49, 614, 61, + 50, 61, 62, 61, 103, 104, 50, 105, 613, 48, + 67, 62, 62, 67, 67, 49, 103, 612, 62, 66, + 66, 66, 66, 66, 66, 66, 100, 50, 53, 53, + 53, 103, 106, 100, 53, 53, 107, 127, 128, 130, + 53, 131, 53, 129, 53, 53, 53, 53, 53, 570, + 134, 129, 67, 100, 135, 53, 53, 53, 569, 106, + 100, 53, 53, 107, 127, 128, 130, 53, 131, 53, + 129, 53, 53, 53, 53, 53, 68, 134, 129, 68, + 68, 135, 68, 68, 68, 68, 68, 68, 68, 70, + + 70, 70, 70, 70, 70, 70, 72, 136, 71, 72, + 72, 71, 71, 73, 558, 74, 73, 73, 74, 74, + 541, 75, 540, 77, 75, 75, 77, 77, 68, 69, + 77, 539, 69, 69, 136, 69, 69, 69, 69, 69, + 69, 69, 71, 76, 538, 137, 76, 76, 72, 73, + 71, 75, 138, 140, 141, 73, 79, 74, 81, 79, + 79, 81, 81, 75, 78, 77, 142, 78, 78, 71, + 80, 69, 137, 80, 80, 143, 73, 76, 75, 138, + 140, 141, 537, 79, 78, 76, 82, 147, 83, 82, + 82, 83, 83, 142, 536, 531, 80, 144, 79, 84, + + 81, 530, 84, 84, 76, 85, 78, 478, 85, 85, + 79, 78, 80, 145, 143, 146, 83, 86, 84, 149, + 86, 86, 82, 80, 144, 85, 147, 477, 82, 113, + 83, 87, 113, 113, 87, 87, 424, 423, 416, 415, + 145, 84, 146, 83, 372, 84, 149, 85, 182, 82, + 168, 87, 85, 113, 86, 369, 169, 170, 290, 86, + 108, 108, 108, 108, 108, 108, 108, 278, 277, 275, + 274, 113, 126, 87, 51, 126, 126, 168, 87, 27, + 113, 86, 109, 169, 170, 109, 109, 182, 109, 109, + 109, 109, 109, 109, 109, 112, 112, 112, 112, 112, + + 112, 112, 193, 171, 114, 26, 115, 114, 114, 115, + 115, 25, 10, 152, 126, 172, 152, 152, 116, 9, + 8, 116, 116, 3, 109, 110, 114, 2, 110, 110, + 171, 110, 110, 110, 110, 110, 110, 110, 116, 115, + 117, 193, 172, 117, 117, 0, 114, 118, 115, 0, + 118, 118, 0, 114, 119, 152, 117, 119, 119, 121, + 116, 0, 121, 121, 0, 116, 115, 110, 111, 0, + 118, 111, 111, 0, 111, 111, 111, 111, 111, 111, + 111, 120, 117, 117, 120, 120, 121, 174, 122, 118, + 119, 122, 122, 0, 175, 123, 119, 118, 123, 123, + + 124, 121, 198, 124, 124, 120, 176, 132, 125, 148, + 111, 125, 125, 121, 174, 173, 132, 119, 132, 177, + 133, 175, 178, 120, 122, 123, 173, 0, 125, 133, + 122, 133, 120, 176, 132, 124, 238, 123, 179, 148, + 266, 198, 124, 132, 0, 132, 177, 133, 148, 178, + 125, 122, 123, 0, 173, 125, 133, 267, 133, 0, + 154, 0, 124, 154, 154, 179, 148, 150, 150, 150, + 150, 150, 150, 150, 151, 238, 280, 151, 151, 266, + 151, 151, 151, 151, 151, 151, 151, 153, 153, 153, + 153, 153, 153, 153, 154, 155, 267, 156, 155, 155, + + 156, 156, 154, 157, 0, 158, 157, 157, 158, 158, + 159, 0, 0, 159, 159, 280, 151, 0, 0, 159, + 160, 154, 159, 160, 160, 161, 180, 162, 161, 161, + 162, 162, 163, 181, 0, 163, 163, 155, 165, 156, + 0, 165, 165, 183, 161, 157, 164, 158, 163, 164, + 164, 184, 159, 180, 166, 185, 162, 166, 166, 186, + 181, 167, 160, 187, 167, 167, 165, 161, 188, 162, + 183, 161, 189, 190, 163, 163, 283, 191, 184, 164, + 165, 192, 185, 162, 194, 197, 186, 199, 164, 195, + 187, 200, 195, 165, 167, 188, 166, 215, 196, 189, + + 190, 196, 0, 167, 191, 0, 164, 0, 192, 0, + 216, 194, 197, 287, 199, 283, 195, 293, 200, 195, + 0, 167, 217, 218, 215, 196, 219, 220, 196, 201, + 201, 201, 201, 201, 201, 201, 202, 216, 0, 202, + 202, 222, 202, 202, 202, 202, 202, 202, 202, 217, + 218, 0, 287, 219, 220, 206, 293, 205, 206, 206, + 205, 205, 207, 0, 206, 207, 207, 206, 222, 223, + 207, 208, 0, 209, 208, 208, 209, 209, 202, 203, + 0, 208, 203, 203, 224, 203, 203, 203, 203, 203, + 203, 203, 205, 209, 0, 225, 223, 206, 210, 205, + + 0, 210, 210, 211, 207, 212, 211, 211, 212, 212, + 226, 224, 227, 208, 213, 209, 228, 213, 213, 205, + 209, 203, 225, 214, 229, 230, 214, 214, 231, 0, + 0, 232, 210, 233, 234, 235, 236, 226, 0, 227, + 210, 237, 239, 228, 240, 211, 241, 212, 242, 243, + 244, 229, 230, 245, 246, 231, 213, 214, 232, 210, + 233, 234, 235, 236, 247, 214, 248, 249, 237, 239, + 250, 240, 251, 241, 252, 242, 243, 244, 253, 254, + 245, 246, 257, 0, 214, 257, 257, 0, 0, 305, + 0, 247, 258, 248, 249, 258, 258, 250, 0, 251, + + 259, 252, 268, 259, 259, 253, 254, 256, 259, 0, + 256, 256, 258, 256, 256, 256, 256, 256, 256, 256, + 0, 269, 260, 0, 257, 260, 260, 261, 305, 268, + 261, 261, 260, 262, 258, 270, 262, 262, 271, 258, + 263, 272, 259, 263, 263, 273, 276, 264, 269, 256, + 264, 264, 265, 279, 281, 265, 265, 282, 284, 285, + 286, 288, 270, 289, 260, 271, 291, 0, 272, 261, + 292, 294, 273, 276, 295, 262, 296, 297, 298, 299, + 279, 281, 263, 300, 282, 284, 285, 286, 288, 264, + 289, 301, 302, 291, 265, 303, 304, 292, 294, 310, + + 315, 295, 311, 296, 297, 298, 299, 0, 307, 0, + 300, 307, 307, 308, 346, 0, 308, 308, 301, 302, + 312, 313, 303, 304, 306, 314, 310, 306, 306, 311, + 306, 306, 306, 306, 306, 306, 306, 307, 309, 315, + 316, 309, 309, 317, 318, 319, 320, 312, 313, 321, + 307, 322, 314, 346, 323, 308, 324, 326, 327, 328, + 329, 330, 331, 332, 307, 333, 306, 316, 334, 335, + 317, 318, 319, 320, 336, 337, 321, 338, 322, 340, + 309, 323, 341, 324, 326, 327, 328, 329, 330, 331, + 332, 344, 333, 342, 342, 334, 335, 343, 343, 345, + + 347, 336, 337, 348, 338, 349, 340, 350, 352, 341, + 353, 355, 356, 357, 359, 360, 357, 357, 344, 358, + 342, 342, 358, 358, 343, 343, 345, 347, 0, 361, + 348, 362, 349, 363, 350, 352, 364, 353, 355, 356, + 365, 359, 360, 366, 367, 368, 370, 371, 373, 374, + 375, 376, 377, 378, 358, 357, 361, 379, 362, 380, + 363, 358, 381, 364, 382, 383, 384, 365, 385, 386, + 366, 367, 368, 370, 371, 373, 374, 375, 376, 377, + 378, 358, 387, 388, 379, 389, 380, 390, 391, 381, + 392, 382, 383, 384, 393, 385, 386, 394, 395, 396, + + 397, 399, 401, 398, 402, 400, 403, 404, 405, 387, + 388, 398, 389, 400, 390, 391, 406, 392, 407, 406, + 406, 393, 408, 409, 394, 395, 396, 397, 399, 401, + 398, 402, 400, 403, 404, 405, 410, 411, 398, 412, + 400, 413, 414, 417, 418, 407, 419, 420, 421, 408, + 409, 422, 425, 426, 427, 428, 429, 430, 406, 431, + 432, 433, 434, 410, 435, 436, 412, 437, 413, 414, + 417, 418, 438, 419, 420, 421, 411, 439, 422, 425, + 426, 427, 428, 440, 430, 441, 431, 432, 433, 434, + 442, 435, 436, 443, 437, 429, 444, 445, 446, 438, + + 447, 448, 449, 450, 439, 451, 454, 455, 456, 457, + 440, 458, 441, 459, 460, 461, 462, 442, 463, 464, + 443, 465, 466, 444, 445, 446, 467, 447, 448, 449, + 450, 468, 451, 454, 455, 456, 457, 469, 458, 470, + 459, 460, 461, 462, 471, 463, 464, 472, 465, 466, + 473, 474, 475, 467, 476, 479, 480, 481, 468, 482, + 483, 484, 485, 486, 469, 487, 470, 488, 489, 490, + 491, 471, 492, 495, 472, 496, 497, 473, 474, 475, + 498, 476, 479, 480, 481, 499, 482, 483, 484, 485, + 486, 500, 487, 501, 488, 489, 490, 491, 502, 492, + + 495, 505, 496, 497, 506, 507, 508, 498, 509, 510, + 511, 512, 499, 513, 514, 515, 516, 517, 500, 518, + 501, 519, 520, 521, 522, 502, 523, 524, 505, 525, + 528, 506, 507, 508, 529, 509, 510, 511, 512, 532, + 513, 514, 515, 516, 517, 533, 518, 534, 519, 520, + 521, 522, 535, 523, 524, 544, 525, 528, 545, 547, + 548, 529, 550, 551, 552, 553, 532, 554, 555, 556, + 557, 559, 533, 560, 534, 561, 562, 563, 564, 535, + 565, 566, 544, 567, 568, 545, 547, 548, 571, 550, + 551, 552, 553, 572, 554, 555, 556, 557, 559, 575, + + 560, 576, 561, 562, 563, 564, 577, 565, 566, 578, + 567, 568, 581, 582, 583, 571, 584, 585, 587, 589, + 572, 590, 591, 592, 593, 594, 575, 595, 576, 596, + 598, 599, 600, 577, 601, 602, 578, 603, 604, 581, + 582, 583, 605, 584, 585, 587, 589, 606, 590, 591, + 592, 593, 594, 607, 595, 610, 596, 598, 599, 600, + 611, 601, 602, 616, 603, 604, 617, 618, 619, 605, + 622, 623, 624, 625, 606, 628, 629, 630, 631, 632, + 607, 633, 610, 634, 635, 636, 637, 611, 638, 639, + 616, 640, 641, 617, 618, 619, 642, 622, 623, 624, + + 625, 643, 628, 629, 630, 631, 632, 646, 633, 647, + 634, 635, 636, 637, 648, 638, 639, 649, 640, 641, + 658, 659, 660, 642, 662, 663, 665, 666, 643, 667, + 668, 669, 670, 671, 646, 672, 647, 673, 674, 675, + 680, 648, 683, 686, 649, 687, 688, 658, 659, 660, + 689, 662, 663, 665, 666, 690, 667, 668, 669, 670, + 671, 691, 672, 696, 673, 674, 675, 680, 697, 683, + 686, 698, 687, 688, 700, 702, 703, 689, 706, 707, + 712, 713, 690, 718, 719, 720, 721, 722, 691, 723, + 696, 728, 729, 730, 731, 697, 734, 735, 698, 736, + + 737, 700, 702, 703, 738, 706, 707, 712, 713, 739, + 718, 719, 720, 721, 722, 0, 723, 0, 728, 729, + 730, 731, 0, 734, 735, 0, 736, 737, 0, 0, + 0, 738, 0, 0, 0, 0, 739, 747, 0, 747, + 749, 749, 749, 746, 746, 746, 746, 746, 746, 746, + 746, 746, 746, 746, 746, 746, 746, 746, 746, 746, + 746, 746, 746, 746, 746, 746, 746, 746, 746, 746, + 746, 746, 746, 746, 746, 746, 746, 746, 746, 746, + 746, 746, 746, 746, 746, 746, 746, 746, 746, 746, + 746, 746, 746, 746, 746, 746, 746, 746, 746, 746, + + 746, 746, 746, 746, 746, 746, 746, 746, 746, 746, + 746, 746, 746, 746, 746, 746, 746 } ; -static yyconst flex_int16_t yy_rule_linenum[90] = +static yyconst flex_int16_t yy_rule_linenum[88] = { 0, 77, 79, 81, 83, 85, 88, 92, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, @@ -1260,9 +1242,9 @@ static yyconst flex_int16_t yy_rule_linenum[90] = 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, - 147, 148, 150, 151, 153, 154, 155, 156, 157, 158, - 160, 161, 164, 169, 170, 171, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 183, 192, 210, 216 + 148, 149, 151, 152, 153, 154, 155, 156, 158, 159, + 162, 167, 168, 169, 171, 172, 173, 174, 175, 176, + 177, 178, 179, 181, 190, 208, 214 } ; /* The intent behind this definition is that it'll catch @@ -1317,7 +1299,7 @@ static yyconst flex_int16_t yy_rule_linenum[90] = #define YY_INPUT(buffer, result, max_size) get_lex_chars(buffer, result, max_size, PARAM) -#line 1321 "libmemcached/options/scanner.cc" +#line 1303 "libmemcached/options/scanner.cc" #define INITIAL 0 @@ -1624,7 +1606,7 @@ YY_DECL -#line 1628 "libmemcached/options/scanner.cc" +#line 1610 "libmemcached/options/scanner.cc" yylval = yylval_param; @@ -1690,13 +1672,13 @@ yy_match: while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 769 ) + if ( yy_current_state >= 747 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; ++yy_cp; } - while ( yy_base[yy_current_state] != 2094 ); + while ( yy_base[yy_current_state] != 2044 ); yy_find_action: /* %% [10.0] code to find the action number goes here */ @@ -1719,13 +1701,13 @@ do_action: /* This label is used only to access EOF actions. */ { if ( yy_act == 0 ) fprintf( stderr, "--scanner backing up\n" ); - else if ( yy_act < 90 ) + else if ( yy_act < 88 ) fprintf( stderr, "--accepting rule at line %ld (\"%s\")\n", (long)yy_rule_linenum[yy_act], yytext ); - else if ( yy_act == 90 ) + else if ( yy_act == 88 ) fprintf( stderr, "--accepting default rule (\"%s\")\n", yytext ); - else if ( yy_act == 91 ) + else if ( yy_act == 89 ) fprintf( stderr, "--(end of buffer or a NUL)\n" ); else fprintf( stderr, "--EOF (start condition %d)\n", YY_START ); @@ -1795,389 +1777,379 @@ YY_RULE_SETUP case 10: YY_RULE_SETUP #line 96 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return AUTO_EJECT_HOSTS; } +{ yyextra->begin= yytext; return BINARY_PROTOCOL; } YY_BREAK case 11: YY_RULE_SETUP #line 97 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return AUTO_EJECT_HOSTS; } +{ yyextra->begin= yytext; return BINARY_PROTOCOL; } YY_BREAK case 12: YY_RULE_SETUP #line 98 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return BINARY_PROTOCOL; } +{ yyextra->begin= yytext; return BUFFER_REQUESTS; } YY_BREAK case 13: YY_RULE_SETUP #line 99 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return BINARY_PROTOCOL; } +{ yyextra->begin= yytext; return BUFFER_REQUESTS; } YY_BREAK case 14: YY_RULE_SETUP #line 100 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return BUFFER_REQUESTS; } +{ yyextra->begin= yytext; return CONFIGURE_FILE; } YY_BREAK case 15: YY_RULE_SETUP #line 101 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return BUFFER_REQUESTS; } +{ yyextra->begin= yytext; return CONFIGURE_FILE; } YY_BREAK case 16: YY_RULE_SETUP #line 102 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return CONFIGURE_FILE; } +{ yyextra->begin= yytext; return CONNECT_TIMEOUT; } YY_BREAK case 17: YY_RULE_SETUP #line 103 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return CONFIGURE_FILE; } +{ yyextra->begin= yytext; return CONNECT_TIMEOUT; } YY_BREAK case 18: YY_RULE_SETUP #line 104 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return CONNECT_TIMEOUT; } +{ yyextra->begin= yytext; return DISTRIBUTION; } YY_BREAK case 19: YY_RULE_SETUP #line 105 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return CONNECT_TIMEOUT; } +{ yyextra->begin= yytext; return HASH; } YY_BREAK case 20: YY_RULE_SETUP #line 106 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return DISTRIBUTION; } +{ yyextra->begin= yytext; return HASH_WITH_PREFIX_KEY; } YY_BREAK case 21: YY_RULE_SETUP #line 107 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return HASH; } +{ yyextra->begin= yytext; return HASH_WITH_PREFIX_KEY; } YY_BREAK case 22: YY_RULE_SETUP #line 108 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return HASH_WITH_PREFIX_KEY; } +{ yyextra->begin= yytext; return IO_BYTES_WATERMARK; } YY_BREAK case 23: YY_RULE_SETUP #line 109 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return HASH_WITH_PREFIX_KEY; } +{ yyextra->begin= yytext; return IO_BYTES_WATERMARK; } YY_BREAK case 24: YY_RULE_SETUP #line 110 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return IO_BYTES_WATERMARK; } +{ yyextra->begin= yytext; return IO_KEY_PREFETCH; } YY_BREAK case 25: YY_RULE_SETUP #line 111 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return IO_BYTES_WATERMARK; } +{ yyextra->begin= yytext; return IO_KEY_PREFETCH; } YY_BREAK case 26: YY_RULE_SETUP #line 112 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return IO_KEY_PREFETCH; } +{ yyextra->begin= yytext; return IO_MSG_WATERMARK; } YY_BREAK case 27: YY_RULE_SETUP #line 113 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return IO_KEY_PREFETCH; } +{ yyextra->begin= yytext; return IO_MSG_WATERMARK; } YY_BREAK case 28: YY_RULE_SETUP #line 114 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return IO_MSG_WATERMARK; } +{ yyextra->begin= yytext; return NOREPLY; } YY_BREAK case 29: YY_RULE_SETUP #line 115 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return IO_MSG_WATERMARK; } +{ yyextra->begin= yytext; return NUMBER_OF_REPLICAS; } YY_BREAK case 30: YY_RULE_SETUP #line 116 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return NOREPLY; } +{ yyextra->begin= yytext; return NUMBER_OF_REPLICAS; } YY_BREAK case 31: YY_RULE_SETUP #line 117 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return NUMBER_OF_REPLICAS; } +{ yyextra->begin= yytext; return POLL_TIMEOUT; } YY_BREAK case 32: YY_RULE_SETUP #line 118 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return NUMBER_OF_REPLICAS; } +{ yyextra->begin= yytext; return POLL_TIMEOUT; } YY_BREAK case 33: YY_RULE_SETUP #line 119 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return POLL_TIMEOUT; } +{ yyextra->begin= yytext; return RANDOMIZE_REPLICA_READ; } YY_BREAK case 34: YY_RULE_SETUP #line 120 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return POLL_TIMEOUT; } +{ yyextra->begin= yytext; return RANDOMIZE_REPLICA_READ; } YY_BREAK case 35: YY_RULE_SETUP #line 121 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return RANDOMIZE_REPLICA_READ; } +{ yyextra->begin= yytext; return RCV_TIMEOUT; } YY_BREAK case 36: YY_RULE_SETUP #line 122 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return RANDOMIZE_REPLICA_READ; } +{ yyextra->begin= yytext; return RCV_TIMEOUT; } YY_BREAK case 37: YY_RULE_SETUP #line 123 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return RCV_TIMEOUT; } +{ yyextra->begin= yytext; return RETRY_TIMEOUT; } YY_BREAK case 38: YY_RULE_SETUP #line 124 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return RCV_TIMEOUT; } +{ yyextra->begin= yytext; return RETRY_TIMEOUT; } YY_BREAK case 39: YY_RULE_SETUP #line 125 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return RETRY_TIMEOUT; } +{ yyextra->begin= yytext; return SND_TIMEOUT; } YY_BREAK case 40: YY_RULE_SETUP #line 126 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return RETRY_TIMEOUT; } +{ yyextra->begin= yytext; return SND_TIMEOUT; } YY_BREAK case 41: YY_RULE_SETUP #line 127 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return SERVER_FAILURE_LIMIT; } +{ yyextra->begin= yytext; return REMOVE_FAILED_SERVERS; } YY_BREAK case 42: YY_RULE_SETUP #line 128 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return SERVER_FAILURE_LIMIT; } +{ yyextra->begin= yytext; return REMOVE_FAILED_SERVERS; } YY_BREAK case 43: YY_RULE_SETUP #line 129 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return SND_TIMEOUT; } +{ yyextra->begin= yytext; return SOCKET_RECV_SIZE; } YY_BREAK case 44: YY_RULE_SETUP #line 130 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return SND_TIMEOUT; } +{ yyextra->begin= yytext; return SOCKET_RECV_SIZE; } YY_BREAK case 45: YY_RULE_SETUP #line 131 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return SOCKET_RECV_SIZE; } +{ yyextra->begin= yytext; return SOCKET_SEND_SIZE; } YY_BREAK case 46: YY_RULE_SETUP #line 132 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return SOCKET_RECV_SIZE; } +{ yyextra->begin= yytext; return SOCKET_SEND_SIZE; } YY_BREAK case 47: YY_RULE_SETUP #line 133 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return SOCKET_SEND_SIZE; } +{ yyextra->begin= yytext; return SORT_HOSTS; } YY_BREAK case 48: YY_RULE_SETUP #line 134 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return SOCKET_SEND_SIZE; } +{ yyextra->begin= yytext; return SORT_HOSTS; } YY_BREAK case 49: YY_RULE_SETUP #line 135 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return SORT_HOSTS; } +{ yyextra->begin= yytext; return SUPPORT_CAS; } YY_BREAK case 50: YY_RULE_SETUP #line 136 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return SORT_HOSTS; } +{ yyextra->begin= yytext; return SUPPORT_CAS; } YY_BREAK case 51: YY_RULE_SETUP #line 137 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return SUPPORT_CAS; } +{ yyextra->begin= yytext; return _TCP_NODELAY; } YY_BREAK case 52: YY_RULE_SETUP #line 138 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return SUPPORT_CAS; } +{ yyextra->begin= yytext; return _TCP_NODELAY; } YY_BREAK case 53: YY_RULE_SETUP #line 139 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return _TCP_NODELAY; } +{ yyextra->begin= yytext; return _TCP_KEEPALIVE; } YY_BREAK case 54: YY_RULE_SETUP #line 140 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return _TCP_NODELAY; } +{ yyextra->begin= yytext; return _TCP_KEEPALIVE; } YY_BREAK case 55: YY_RULE_SETUP #line 141 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return _TCP_KEEPALIVE; } +{ yyextra->begin= yytext; return _TCP_KEEPIDLE; } YY_BREAK case 56: YY_RULE_SETUP #line 142 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return _TCP_KEEPALIVE; } +{ yyextra->begin= yytext; return _TCP_KEEPIDLE; } YY_BREAK case 57: YY_RULE_SETUP #line 143 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return _TCP_KEEPIDLE; } +{ yyextra->begin= yytext; return USER_DATA; } YY_BREAK case 58: YY_RULE_SETUP #line 144 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return _TCP_KEEPIDLE; } +{ yyextra->begin= yytext; return USER_DATA; } YY_BREAK case 59: YY_RULE_SETUP #line 145 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return USER_DATA; } +{ yyextra->begin= yytext; return USE_UDP; } YY_BREAK case 60: YY_RULE_SETUP #line 146 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return USER_DATA; } +{ yyextra->begin= yytext; return USE_UDP; } YY_BREAK case 61: YY_RULE_SETUP -#line 147 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return USE_UDP; } +#line 148 "libmemcached/options/scanner.l" +{ yyextra->begin= yytext; return PREFIX_KEY; } YY_BREAK case 62: YY_RULE_SETUP -#line 148 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return USE_UDP; } +#line 149 "libmemcached/options/scanner.l" +{ yyextra->begin= yytext; return PREFIX_KEY; } YY_BREAK case 63: YY_RULE_SETUP -#line 150 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return PREFIX_KEY; } +#line 151 "libmemcached/options/scanner.l" +{ yyextra->begin= yytext; return INCLUDE; } YY_BREAK case 64: YY_RULE_SETUP -#line 151 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return PREFIX_KEY; } +#line 152 "libmemcached/options/scanner.l" +{ yyextra->begin= yytext; return RESET; } YY_BREAK case 65: YY_RULE_SETUP #line 153 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return INCLUDE; } +{ yyextra->begin= yytext; return PARSER_DEBUG; } YY_BREAK case 66: YY_RULE_SETUP #line 154 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return RESET; } +{ yyextra->begin= yytext; return SERVERS; } YY_BREAK case 67: YY_RULE_SETUP #line 155 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return PARSER_DEBUG; } +{ yyextra->begin= yytext; return END; } YY_BREAK case 68: YY_RULE_SETUP #line 156 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return SERVERS; } +{ yyextra->begin= yytext; return ERROR; } YY_BREAK case 69: YY_RULE_SETUP -#line 157 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return END; } +#line 158 "libmemcached/options/scanner.l" +{ return TRUE; } YY_BREAK case 70: YY_RULE_SETUP -#line 158 "libmemcached/options/scanner.l" -{ yyextra->begin= yytext; return ERROR; } +#line 159 "libmemcached/options/scanner.l" +{ return FALSE; } YY_BREAK case 71: YY_RULE_SETUP -#line 160 "libmemcached/options/scanner.l" -{ return TRUE; } +#line 162 "libmemcached/options/scanner.l" +{ + yyextra->begin= yytext; + return UNKNOWN_OPTION; + } YY_BREAK case 72: YY_RULE_SETUP -#line 161 "libmemcached/options/scanner.l" -{ return FALSE; } +#line 167 "libmemcached/options/scanner.l" +{ return CONSISTENT; } YY_BREAK case 73: YY_RULE_SETUP -#line 164 "libmemcached/options/scanner.l" -{ - yyextra->begin= yytext; - return UNKNOWN_OPTION; - } +#line 168 "libmemcached/options/scanner.l" +{ return MODULA; } YY_BREAK case 74: YY_RULE_SETUP #line 169 "libmemcached/options/scanner.l" -{ return CONSISTENT; } +{ return RANDOM; } YY_BREAK case 75: YY_RULE_SETUP -#line 170 "libmemcached/options/scanner.l" -{ return MODULA; } +#line 171 "libmemcached/options/scanner.l" +{ return MD5; } YY_BREAK case 76: YY_RULE_SETUP -#line 171 "libmemcached/options/scanner.l" -{ return RANDOM; } +#line 172 "libmemcached/options/scanner.l" +{ return CRC; } YY_BREAK case 77: YY_RULE_SETUP #line 173 "libmemcached/options/scanner.l" -{ return MD5; } +{ return FNV1_64; } YY_BREAK case 78: YY_RULE_SETUP #line 174 "libmemcached/options/scanner.l" -{ return CRC; } +{ return FNV1A_64; } YY_BREAK case 79: YY_RULE_SETUP #line 175 "libmemcached/options/scanner.l" -{ return FNV1_64; } +{ return FNV1_32; } YY_BREAK case 80: YY_RULE_SETUP #line 176 "libmemcached/options/scanner.l" -{ return FNV1A_64; } +{ return FNV1A_32; } YY_BREAK case 81: YY_RULE_SETUP #line 177 "libmemcached/options/scanner.l" -{ return FNV1_32; } +{ return HSIEH; } YY_BREAK case 82: YY_RULE_SETUP #line 178 "libmemcached/options/scanner.l" -{ return FNV1A_32; } +{ return MURMUR; } YY_BREAK case 83: YY_RULE_SETUP #line 179 "libmemcached/options/scanner.l" -{ return HSIEH; } +{ return JENKINS; } YY_BREAK case 84: YY_RULE_SETUP -#line 180 "libmemcached/options/scanner.l" -{ return MURMUR; } - YY_BREAK -case 85: -YY_RULE_SETUP #line 181 "libmemcached/options/scanner.l" -{ return JENKINS; } - YY_BREAK -case 86: -YY_RULE_SETUP -#line 183 "libmemcached/options/scanner.l" { yylval->server.port= MEMCACHED_DEFAULT_PORT; yylval->server.weight= 1; @@ -2187,9 +2159,9 @@ YY_RULE_SETUP return IPADDRESS; } YY_BREAK -case 87: +case 85: YY_RULE_SETUP -#line 192 "libmemcached/options/scanner.l" +#line 190 "libmemcached/options/scanner.l" { if (yyextra->is_server()) { @@ -2208,29 +2180,29 @@ YY_RULE_SETUP return STRING; } YY_BREAK -case 88: +case 86: YY_RULE_SETUP -#line 210 "libmemcached/options/scanner.l" +#line 208 "libmemcached/options/scanner.l" { yylval->string.c_str = yytext; yylval->string.length = yyleng; return QUOTED_STRING; } YY_BREAK -case 89: +case 87: YY_RULE_SETUP -#line 216 "libmemcached/options/scanner.l" +#line 214 "libmemcached/options/scanner.l" { yyextra->begin= yytext; return UNKNOWN; } YY_BREAK -case 90: +case 88: YY_RULE_SETUP -#line 221 "libmemcached/options/scanner.l" +#line 219 "libmemcached/options/scanner.l" ECHO; YY_BREAK -#line 2234 "libmemcached/options/scanner.cc" +#line 2206 "libmemcached/options/scanner.cc" case YY_STATE_EOF(INITIAL): yyterminate(); @@ -2546,7 +2518,7 @@ static int yy_get_next_buffer (yyscan_t yyscanner) while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 769 ) + if ( yy_current_state >= 747 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; @@ -2580,11 +2552,11 @@ static int yy_get_next_buffer (yyscan_t yyscanner) while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 769 ) + if ( yy_current_state >= 747 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; - yy_is_jam = (yy_current_state == 768); + yy_is_jam = (yy_current_state == 746); return yy_is_jam ? 0 : yy_current_state; } @@ -3496,7 +3468,7 @@ void config_free (void * ptr , yyscan_t yyscanner) /* %ok-for-header */ -#line 221 "libmemcached/options/scanner.l" +#line 219 "libmemcached/options/scanner.l" diff --git a/libmemcached/options/scanner.h b/libmemcached/options/scanner.h index 5401206b..8e15027c 100644 --- a/libmemcached/options/scanner.h +++ b/libmemcached/options/scanner.h @@ -471,7 +471,7 @@ extern int config_lex \ #undef YY_DECL #endif -#line 221 "libmemcached/options/scanner.l" +#line 219 "libmemcached/options/scanner.l" #line 478 "libmemcached/options/scanner.h" diff --git a/libmemcached/options/scanner.l b/libmemcached/options/scanner.l index 8f3e09de..762ef0a6 100644 --- a/libmemcached/options/scanner.l +++ b/libmemcached/options/scanner.l @@ -93,8 +93,6 @@ "--VERIFY_KEY" { yyextra->begin= yytext; return VERIFY_KEY; } "--VERIFY-KEY" { yyextra->begin= yytext; return VERIFY_KEY; } -"--AUTO_EJECT_HOSTS" { yyextra->begin= yytext; return AUTO_EJECT_HOSTS; } -"--AUTO-EJECT_HOSTS" { yyextra->begin= yytext; return AUTO_EJECT_HOSTS; } "--BINARY_PROTOCOL" { yyextra->begin= yytext; return BINARY_PROTOCOL; } "--BINARY-PROTOCOL" { yyextra->begin= yytext; return BINARY_PROTOCOL; } "--BUFFER_REQUESTS" { yyextra->begin= yytext; return BUFFER_REQUESTS; } @@ -124,10 +122,10 @@ "--RCV-TIMEOUT=" { yyextra->begin= yytext; return RCV_TIMEOUT; } "--RETRY_TIMEOUT=" { yyextra->begin= yytext; return RETRY_TIMEOUT; } "--RETRY-TIMEOUT=" { yyextra->begin= yytext; return RETRY_TIMEOUT; } -"--SERVER_FAILURE_LIMIT=" { yyextra->begin= yytext; return SERVER_FAILURE_LIMIT; } -"--SERVER-FAILURE-LIMIT=" { yyextra->begin= yytext; return SERVER_FAILURE_LIMIT; } "--SND_TIMEOUT=" { yyextra->begin= yytext; return SND_TIMEOUT; } "--SND-TIMEOUT=" { yyextra->begin= yytext; return SND_TIMEOUT; } +"--REMOVE_FAILED_SERVERS=" { yyextra->begin= yytext; return REMOVE_FAILED_SERVERS; } +"--REMOVE-FAILED-SERVERS=" { yyextra->begin= yytext; return REMOVE_FAILED_SERVERS; } "--SOCKET_RECV_SIZE=" { yyextra->begin= yytext; return SOCKET_RECV_SIZE; } "--SOCKET-RECV-SIZE=" { yyextra->begin= yytext; return SOCKET_RECV_SIZE; } "--SOCKET_SEND_SIZE=" { yyextra->begin= yytext; return SOCKET_SEND_SIZE; } diff --git a/tests/parser.cc b/tests/parser.cc index b4c9f058..b75ad41a 100644 --- a/tests/parser.cc +++ b/tests/parser.cc @@ -118,10 +118,10 @@ static test_return_t __check_IO_MSG_WATERMARK(memcached_st *memc, const scanner_ return TEST_SUCCESS; } -static test_return_t __check_AUTO_EJECT_HOSTS(memcached_st *memc, const scanner_string_st &value) +static test_return_t __check_REMOVE_FAILED_SERVERS(memcached_st *memc, const scanner_string_st &value) { (void)value; - test_true(memcached_behavior_get(memc, MEMCACHED_BEHAVIOR_AUTO_EJECT_HOSTS)); + test_true(memcached_behavior_get(memc, MEMCACHED_BEHAVIOR_REMOVE_FAILED_SERVERS)); return TEST_SUCCESS; } @@ -176,14 +176,14 @@ scanner_variable_t bad_test_strings[]= { scanner_variable_t test_number_options[]= { { ARRAY, make_scanner_string("--CONNECT_TIMEOUT=456"), scanner_string_null, NULL }, - { ARRAY, make_scanner_string("--IO_MSG_WATERMARK=456"), make_scanner_string("456"), __check_IO_MSG_WATERMARK }, { ARRAY, make_scanner_string("--IO_BYTES_WATERMARK=456"), scanner_string_null, NULL }, { ARRAY, make_scanner_string("--IO_KEY_PREFETCH=456"), scanner_string_null, NULL }, + { ARRAY, make_scanner_string("--IO_MSG_WATERMARK=456"), make_scanner_string("456"), __check_IO_MSG_WATERMARK }, { ARRAY, make_scanner_string("--NUMBER_OF_REPLICAS=456"), scanner_string_null, NULL }, { ARRAY, make_scanner_string("--POLL_TIMEOUT=456"), scanner_string_null, NULL }, { ARRAY, make_scanner_string("--RCV_TIMEOUT=456"), scanner_string_null, NULL }, + { ARRAY, make_scanner_string("--REMOVE-FAILED-SERVERS=3"), scanner_string_null, __check_REMOVE_FAILED_SERVERS }, { ARRAY, make_scanner_string("--RETRY_TIMEOUT=456"), scanner_string_null, NULL }, - { ARRAY, make_scanner_string("--SERVER_FAILURE_LIMIT=456"), scanner_string_null, NULL }, { ARRAY, make_scanner_string("--SND_TIMEOUT=456"), scanner_string_null, NULL }, { ARRAY, make_scanner_string("--SOCKET_RECV_SIZE=456"), scanner_string_null, NULL }, { ARRAY, make_scanner_string("--SOCKET_SEND_SIZE=456"), scanner_string_null, NULL }, @@ -191,7 +191,6 @@ scanner_variable_t test_number_options[]= { }; scanner_variable_t test_boolean_options[]= { - { ARRAY, make_scanner_string("--AUTO_EJECT_HOSTS"), scanner_string_null, __check_AUTO_EJECT_HOSTS }, { ARRAY, make_scanner_string("--BINARY_PROTOCOL"), scanner_string_null, NULL }, { ARRAY, make_scanner_string("--BUFFER_REQUESTS"), scanner_string_null, NULL }, { ARRAY, make_scanner_string("--HASH_WITH_PREFIX_KEY"), scanner_string_null, NULL },