Extend pool API for fetch/release. Fix concurrency issue in test case.
[m6w6/libmemcached] / libmemcached / server.h
index e6f3a30a2884a1820ee5a2cd6e89e811c30a8a9f..3ca1df32eddec373f033ac71261bc78937031f29 100644 (file)
 #include <netdb.h>
 #endif
 
+#ifdef NI_MAXHOST
+#define MEMCACHED_NI_MAXHOST NI_MAXHOST
+#else
+#define MEMCACHED_NI_MAXHOST 1025
+#endif
+
 enum memcached_server_state_t {
   MEMCACHED_SERVER_STATE_NEW, // fd == -1, no address lookup has been done
   MEMCACHED_SERVER_STATE_ADDRINFO, // ADDRRESS information has been gathered
@@ -63,6 +69,7 @@ struct memcached_server_st {
   memcached_socket_t fd;
   uint32_t io_bytes_sent; /* # bytes sent since last read */
   uint32_t server_failure_counter;
+  uint64_t server_failure_counter_query_id;
   uint32_t weight;
   uint32_t version;
   enum memcached_server_state_t state;
@@ -86,7 +93,7 @@ struct memcached_server_st {
   struct memcached_error_t *error_messages;
   char read_buffer[MEMCACHED_MAX_BUFFER];
   char write_buffer[MEMCACHED_MAX_BUFFER];
-  char hostname[NI_MAXHOST];
+  char hostname[MEMCACHED_NI_MAXHOST];
 };