-#include <memcached.h>
#include "common.h"
/* Protoypes (static) */
}
ptr->hosts[0].count= ptr->number_of_hosts;
- if (ptr->number_of_hosts > 1)
+ if (ptr->number_of_hosts > 1 && ptr->flags & MEMCACHED_BEHAVIOR_SORT_HOSTS)
qsort(ptr->hosts, ptr->number_of_hosts, sizeof(memcached_server_st), compare_servers);
rebalance_wheel(ptr);
host_reset(ptr, &ptr->hosts[ptr->number_of_hosts], hostname, port, type);
ptr->number_of_hosts++;
- ptr->hosts[0].count++;
- if (ptr->number_of_hosts > 1)
+ if (ptr->number_of_hosts > 1 && ptr->flags & MEMCACHED_BEHAVIOR_SORT_HOSTS)
qsort(ptr->hosts, ptr->number_of_hosts, sizeof(memcached_server_st), compare_servers);
+ ptr->hosts[0].count= ptr->number_of_hosts;
+
rebalance_wheel(ptr);
LIBMEMCACHED_MEMCACHED_SERVER_ADD_END();
host_reset(NULL, &new_host_list[count-1], hostname, port, MEMCACHED_CONNECTION_TCP);
/* Backwards compatibility hack */
- new_host_list[0].count++;
-
- count= new_host_list[0].count;
-
- if (new_host_list[0].count > 1)
- qsort(new_host_list, count, sizeof(memcached_server_st), compare_servers);
-
new_host_list[0].count= count;
-
*error= MEMCACHED_SUCCESS;
return new_host_list;
}