- ptr->hash= MEMCACHED_HASH_MD5;
- ptr->distribution= MEMCACHED_DISTRIBUTION_CONSISTENT_KETAMA;
- ptr->flags.ketama_weighted= data ? true : false;
- run_distribution(ptr);
- break;
- }
- case MEMCACHED_BEHAVIOR_KETAMA_COMPAT_MODE:
- switch (data)
- {
- case MEMCACHED_KETAMA_COMPAT_LIBMEMCACHED:
- ptr->hash= MEMCACHED_HASH_MD5;
- ptr->distribution= MEMCACHED_DISTRIBUTION_CONSISTENT_KETAMA;
- break;
- case MEMCACHED_KETAMA_COMPAT_SPY:
- ptr->hash= MEMCACHED_HASH_MD5;
- ptr->distribution= MEMCACHED_DISTRIBUTION_CONSISTENT_KETAMA_SPY;
- break;
- default:
- return MEMCACHED_FAILURE;
+ (void)memcached_behavior_set_key_hash(ptr, MEMCACHED_HASH_MD5);
+ (void)memcached_behavior_set_distribution_hash(ptr, MEMCACHED_HASH_MD5);
+ ptr->flags.ketama_weighted= set_flag(data);
+ /**
+ @note We try to keep the same distribution going. This should be deprecated and rewritten.
+ */
+ return memcached_behavior_set_distribution(ptr, MEMCACHED_DISTRIBUTION_CONSISTENT_KETAMA);