Reverting back to older version of memslap, and renaming other version
[m6w6/libmemcached] / docs / memcached_servers.pod
old mode 100755 (executable)
new mode 100644 (file)
index 3e471bc..f2d66c9
@@ -1,6 +1,6 @@
 =head1 NAME
 
-memcached_server_count, memcached_server_list, memcached_server_add, memcached_server_push
+memcached_server_count, memcached_server_list, memcached_server_add, memcached_server_push, memcached_server_get_last_disconnect, memcached_server_cursor - Manage server list
 
 =head1 LIBRARY
 
@@ -10,19 +10,41 @@ C Client Library for memcached (libmemcached, -lmemcached)
 
   #include <memcached.h>
 
-  unsigned int memcached_server_count (memcached_st *ptr);
+  uint32_t memcached_server_count (memcached_st *ptr);
 
-  memcached_server_st *
-    memcached_server_list (memcached_st *ptr);
-
-  memcached_return
+  memcached_return_t
     memcached_server_add (memcached_st *ptr,
-                          char *hostname,
-                          unsigned int port);
+                          const char *hostname,
+                          in_port_t port);
+
+  memcached_return_t
+    memcached_server_add_udp (memcached_st *ptr,
+                             const char *hostname,
+                             in_port_t port);
+
+  memcached_return_t
+    memcached_server_add_unix_socket (memcached_st *ptr,
+                                      const char *socket);
 
-  memcached_return
+  memcached_return_t
     memcached_server_push (memcached_st *ptr,
-                           memcached_server_st *list);
+                           const memcached_server_st *list);
+
+  memcached_server_instance_st
+    memcached_server_by_key (const memcached_st *ptr,
+                             const char *key,
+                            size_t key_length,
+                             memcached_return_t *error);
+
+  memcached_server_instance_st
+    memcached_server_get_last_disconnect (const memcached_st *ptr)
+
+  memcached_return_t
+    memcached_server_cursor(const memcached_st *ptr,
+                           const memcached_server_fn *callback,
+                           void *context,
+                           uint32_t number_of_callbacks);
+
 
 =head1 DESCRIPTION
 
@@ -34,13 +56,22 @@ memcached_server_st(3).
 memcached_server_count() provides you a count of the current number of
 servers being used by a C<memcached_st> structure.
 
-memcached_server_list() is used to provide an array of all connected hosts.
-You are responsible for freeing this list (aka it is not a pointer to the
-currently used structure).
+memcached_server_add() pushes a single TCP server into the C<memcached_st>
+structure. This server will be placed at the end. Duplicate servers are
+allowed, so duplication is not checked. Executing this function with the
+C<MEMCACHED_BEHAVIOR_USE_UDP> behavior set will result in a
+C<MEMCACHED_INVALID_HOST_PROTOCOL>.
 
-memcached_server_add() pushes a single server into the C<memcached_st>
+memcached_server_add_udp() pushes a single UDP server into the C<memcached_st>
 structure. This server will be placed at the end. Duplicate servers are
-allowed, so duplication is not checked.
+allowed, so duplication is not checked. Executing this function with out
+setting the C<MEMCACHED_BEHAVIOR_USE_UDP> behavior will result in a
+C<MEMCACHED_INVALID_HOST_PROTOCOL>.
+
+memcached_server_add_unix_socket() pushes a single UNIX socket into the
+C<memcached_st> structure. This UNIX socket will be placed at the end.
+Duplicate servers are allowed, so duplication is not checked. The length
+of the filename must be one character less then MEMCACHED_MAX_HOST_LENGTH.
 
 memcached_server_push() pushes an array of C<memcached_server_st> into
 the C<memcached_st> structure. These servers will be placed at the
@@ -48,14 +79,32 @@ end. Duplicate servers are allowed, so duplication is not checked. A
 copy is made of structure so the list provided (and any operations on
 the list) are not saved.
 
+memcached_server_by_key() allows you to provide a key and retrieve the
+server which would be used for assignment. This structure is cloned
+from its original structure and must be freed. If NULL is returned you
+should consult *error. The returning structure should be freed with
+memcached_server_free().
+
+memcached_server_get_last_disconnect() returns a pointer to the last server
+for which there was a connection problem. It does not mean this particular
+server is currently dead but if the library is reporting a server is,
+the returned server is a very good candidate.
+
+memcached_server_cursor() takes a memcached_st and loops through the 
+list of hosts currently in the cursor calling the list of callback 
+functions provided. You can optionally pass in a value via 
+context which will be provided to each callback function. An error
+return from any callback will terminate the loop. memcached_server_cursor()
+is passed the original caller memcached_st in its current state. 
+
 =head1 RETURN
 
 Varies, see particular functions.
 
 =head1 HOME
 
-To find out more information please check: 
-L<http://tangent.org/552/libmemcached.html>
+To find out more information please check:
+L<https://launchpad.net/libmemcached>
 
 =head1 AUTHOR