Merge in changes around setting up better syntax for distribution.
[awesomized/libmemcached] / libmemcached / memcached.h
index 193eb33c723f8300c5102e962b7f0f31ada1b73a..435a6f606f6f016723c8bd0cb7ec7f4a2d7285b3 100644 (file)
@@ -71,9 +71,7 @@ struct memcached_st {
     bool auto_eject_hosts:1;
     bool binary_protocol:1;
     bool buffer_requests:1;
-    bool cork:1;
     bool hash_with_prefix_key:1;
-    bool ketama_weighted:1;
     bool no_block:1; // Don't block
     bool no_reply:1;
     bool randomize_replica_read:1;
@@ -85,11 +83,9 @@ struct memcached_st {
     bool use_udp:1;
     bool verify_key:1;
     bool tcp_keepalive:1;
-    bool ping_service:1;
   } flags;
   memcached_server_distribution_t distribution;
   hashkit_st hashkit;
-  uint32_t continuum_points_counter; // Ketama
   uint32_t number_of_hosts;
   memcached_server_st *servers;
   memcached_server_st *last_disconnected_server;
@@ -100,19 +96,23 @@ struct memcached_st {
   uint32_t io_bytes_watermark;
   uint32_t io_key_prefetch;
   uint32_t tcp_keepidle;
-  int cached_errno;
   int32_t poll_timeout;
   int32_t connect_timeout;
   int32_t retry_timeout;
-  uint32_t continuum_count; // Ketama
   int send_size;
   int recv_size;
   void *user_data;
-  time_t next_distribution_rebuild; // Ketama
   uint32_t number_of_replicas;
   hashkit_st distribution_hashkit;
   memcached_result_st result;
-  memcached_continuum_item_st *continuum; // Ketama
+
+  struct {
+    bool weighted;
+    uint32_t continuum_count; // Ketama
+    uint32_t continuum_points_counter; // Ketama
+    time_t next_distribution_rebuild; // Ketama
+    memcached_continuum_item_st *continuum; // Ketama
+  } ketama;
 
   struct _allocators_st {
     memcached_calloc_fn calloc;