- if (MEMCACHED_DISTRIBUTION_CONSISTENT_WEIGHTED)
- {
- ptr->ketama.weighted= true;
- }
- else
- {
- ptr->ketama.weighted= false;
- }
- ptr->distribution= type;
- run_distribution(ptr);
- return MEMCACHED_SUCCESS;
+ case MEMCACHED_DISTRIBUTION_MODULA:
+ break;
+
+ case MEMCACHED_DISTRIBUTION_CONSISTENT:
+ case MEMCACHED_DISTRIBUTION_CONSISTENT_KETAMA:
+ ptr->ketama.weighted= false;
+ break;
+
+ case MEMCACHED_DISTRIBUTION_RANDOM:
+ break;
+
+ case MEMCACHED_DISTRIBUTION_CONSISTENT_KETAMA_SPY:
+ break;
+
+ case MEMCACHED_DISTRIBUTION_CONSISTENT_WEIGHTED:
+ ptr->ketama.weighted= true;
+ break;
+
+ case MEMCACHED_DISTRIBUTION_VIRTUAL_BUCKET:
+ break;
+
+ default:
+ case MEMCACHED_DISTRIBUTION_CONSISTENT_MAX:
+ return memcached_set_error(*ptr, MEMCACHED_INVALID_ARGUMENTS, MEMCACHED_AT,
+ memcached_literal_param("Invalid memcached_server_distribution_t"));