Add a request id for each request that hits the wire.
[m6w6/libmemcached] / libmemcached-1.0 / struct / server.h
index 183b37393226afb9629eea876a68d08782a4b577..d20b54a29a0bf95cf89fdbe52b05ebd74165e83b 100644 (file)
 #define MEMCACHED_NI_MAXHOST 1025
 #endif
 
+#ifdef NI_MAXSERV
+#define MEMCACHED_NI_MAXSERV NI_MAXSERV
+#else
+#define MEMCACHED_NI_MAXSERV 32
+#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
@@ -68,6 +74,7 @@ struct memcached_server_st {
   in_port_t port;
   memcached_socket_t fd;
   uint32_t io_bytes_sent; /* # bytes sent since last read */
+  uint32_t request_id;
   uint32_t server_failure_counter;
   uint64_t server_failure_counter_query_id;
   uint32_t weight;
@@ -76,9 +83,11 @@ struct memcached_server_st {
   struct {
     uint32_t read;
     uint32_t write;
+    uint32_t timeouts;
+    size_t _bytes_read;
   } io_wait_count;
   uint8_t major_version; // Default definition of UINT8_MAX means that it has not been set.
-  uint8_t micro_version; // ditto
+  uint8_t micro_version; // ditto, and note that this is the third, not second version bit
   uint8_t minor_version; // ditto
   memcached_connection_t type;
   char *read_ptr;