From 71c9d7cc0bddd63a1216beac15f58da1e1245958 Mon Sep 17 00:00:00 2001 From: Mitch Hagstrand Date: Sat, 17 Nov 2012 12:30:55 -0800 Subject: [PATCH 1/3] Removed unused memcached.ini option After the merge of commits 5ff9516240 and faf84af789 the memcached.sess_num_replicas option is no longer used --- memcached.ini | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/memcached.ini b/memcached.ini index f4bd68c0..ef832efc 100644 --- a/memcached.ini +++ b/memcached.ini @@ -35,15 +35,12 @@ memcached.sess_remove_failed = 1 ; from a replica. However, if the failed memcache server ; becomes available again it will read the session from there ; which could have old data or no data at all -memcached.sess_num_replicas = 0; +memcached.sess_number_of_replicas = 0 ; memcached session binary mode ; libmemcached replicas only work if binary mode is enabled memcached.sess_binary = Off -; memcached session number of replicas -memcached.sess_number_of_replicas = 0 - ; memcached session replica read randomize memcached.sess_randomize_replica_read = Off From 3c7aa2596f5de91f74ab096f9eb2da9af91134b8 Mon Sep 17 00:00:00 2001 From: Mitch Hagstrand Date: Fri, 11 Jan 2013 11:22:10 -0800 Subject: [PATCH 2/3] Fixed tests after chanage to php_memc_do_serverlist_callback() The php function getServerList() no longer returns a weight value. The tests have been updated to reflect this change. The need for this change is result of commenting out "add_assoc_long(array, "weight", instance->weight);" in php_memcached.c --- tests/bug_16084.phpt | 4 +--- tests/getserverlist.phpt | 16 ++++------------ tests/invoke_callback.phpt | 4 +--- 3 files changed, 6 insertions(+), 18 deletions(-) diff --git a/tests/bug_16084.phpt b/tests/bug_16084.phpt index 2c282bb2..c103b297 100644 --- a/tests/bug_16084.phpt +++ b/tests/bug_16084.phpt @@ -13,12 +13,10 @@ var_dump($m->getServerList()); bool(true) array(1) { [0]=> - array(3) { + array(2) { ["host"]=> string(9) "localhost" ["port"]=> int(11211) - ["weight"]=> - int(3) } } diff --git a/tests/getserverlist.phpt b/tests/getserverlist.phpt index 1761f33c..e4ef5968 100644 --- a/tests/getserverlist.phpt +++ b/tests/getserverlist.phpt @@ -20,43 +20,35 @@ array(0) { } array(1) { [0]=> - array(3) { + array(2) { ["host"]=> string(9) "localhost" ["port"]=> int(11211) - ["weight"]=> - int(3) } } array(2) { [0]=> - array(3) { + array(2) { ["host"]=> string(9) "localhost" ["port"]=> int(11211) - ["weight"]=> - int(3) } [1]=> - array(3) { + array(2) { ["host"]=> string(9) "localhost" ["port"]=> int(11211) - ["weight"]=> - int(3) } } array(1) { [0]=> - array(3) { + array(2) { ["host"]=> string(9) "127.0.0.1" ["port"]=> int(11211) - ["weight"]=> - int(%r[01]%r) } } diff --git a/tests/invoke_callback.phpt b/tests/invoke_callback.phpt index 6fddc0c0..d5d0cc90 100644 --- a/tests/invoke_callback.phpt +++ b/tests/invoke_callback.phpt @@ -19,13 +19,11 @@ echo "OK\n"; --EXPECTF-- array(1) { [0]=> - array(3) { + array(2) { ["host"]=> string(9) "127.0.0.1" ["port"]=> int(11211) - ["weight"]=> - int(%r[01]%r) } } OK From 7e3bc8b0ee78a57970ad86c98d0e2dde20ae0546 Mon Sep 17 00:00:00 2001 From: Mitch Hagstrand Date: Mon, 14 Jan 2013 00:29:07 -0800 Subject: [PATCH 3/3] Removed memcached.sess_consistent_hashing option. 1. Removed memcached.sess_consistent_hashing which is a lesser version of memcached.sess_consistent_hash 2. Added default value for memcached.sess_consistent_hash --- php_memcached.c | 3 +-- php_memcached.h | 5 ++--- php_memcached_session.c | 7 ------- tests/experimental/moduleinfo.phpt | 3 +-- 4 files changed, 4 insertions(+), 14 deletions(-) diff --git a/php_memcached.c b/php_memcached.c index d1d07246..687a5149 100644 --- a/php_memcached.c +++ b/php_memcached.c @@ -292,7 +292,6 @@ PHP_INI_BEGIN() STD_PHP_INI_ENTRY("memcached.sess_number_of_replicas", "0", PHP_INI_ALL, OnUpdateLongGEZero, sess_number_of_replicas, zend_php_memcached_globals, php_memcached_globals) STD_PHP_INI_ENTRY("memcached.sess_randomize_replica_read", "0", PHP_INI_ALL, OnUpdateBool, sess_randomize_replica_read, zend_php_memcached_globals, php_memcached_globals) - STD_PHP_INI_ENTRY("memcached.sess_consistent_hashing", "0", PHP_INI_ALL, OnUpdateBool, sess_consistent_hashing_enabled, zend_php_memcached_globals, php_memcached_globals) STD_PHP_INI_ENTRY("memcached.sess_remove_failed", "0", PHP_INI_ALL, OnUpdateBool, sess_remove_failed_enabled, zend_php_memcached_globals, php_memcached_globals) #endif STD_PHP_INI_ENTRY("memcached.compression_type", "fastlz", PHP_INI_ALL, OnUpdateCompressionType, compression_type, zend_php_memcached_globals, php_memcached_globals) @@ -3042,7 +3041,7 @@ static void php_memc_init_globals(zend_php_memcached_globals *php_memcached_glob #ifdef HAVE_MEMCACHED_SESSION MEMC_G(sess_locking_enabled) = 1; MEMC_G(sess_binary_enabled) = 1; - MEMC_G(sess_consistent_hashing_enabled) = 0; + MEMC_G(sess_consistent_hash_enabled) = 0; MEMC_G(sess_number_of_replicas) = 0; MEMC_G(sess_remove_failed_enabled) = 0; MEMC_G(sess_prefix) = NULL; diff --git a/php_memcached.h b/php_memcached.h index 2bd5c83e..9ca2a418 100644 --- a/php_memcached.h +++ b/php_memcached.h @@ -70,7 +70,8 @@ ZEND_BEGIN_MODULE_GLOBALS(php_memcached) int sess_number_of_replicas; zend_bool sess_randomize_replica_read; zend_bool sess_remove_failed_enabled; - zend_bool sess_consistent_hashing_enabled; + zend_bool sess_consistent_hash_enabled; + zend_bool sess_binary_enabled; #endif char *serializer_name; enum memcached_serializer serializer; @@ -83,8 +84,6 @@ ZEND_BEGIN_MODULE_GLOBALS(php_memcached) #if HAVE_MEMCACHED_SASL bool use_sasl; #endif - zend_bool sess_consistent_hash_enabled; - zend_bool sess_binary_enabled; ZEND_END_MODULE_GLOBALS(php_memcached) PHP_MEMCACHED_API zend_class_entry *php_memc_get_ce(void); diff --git a/php_memcached_session.c b/php_memcached_session.c index 2b64581e..7c8c3cca 100644 --- a/php_memcached_session.c +++ b/php_memcached_session.c @@ -228,13 +228,6 @@ PS_OPEN_FUNC(memcached) } } - if (MEMC_G(sess_consistent_hashing_enabled)) { - if (memcached_behavior_set(memc_sess->memc_sess, MEMCACHED_BEHAVIOR_KETAMA, (uint64_t) 1) == MEMCACHED_FAILURE) { - php_error_docref(NULL TSRMLS_CC, E_WARNING, "failed to set memcached consistent hashing"); - return FAILURE; - } - } - /* Allow libmemcached remove failed servers */ if (MEMC_G(sess_remove_failed_enabled)) { if (memcached_behavior_set(memc_sess->memc_sess, MEMCACHED_BEHAVIOR_REMOVE_FAILED_SERVERS, (uint64_t) 1) == MEMCACHED_FAILURE) { diff --git a/tests/experimental/moduleinfo.phpt b/tests/experimental/moduleinfo.phpt index 85acbca3..fa3cd631 100644 --- a/tests/experimental/moduleinfo.phpt +++ b/tests/experimental/moduleinfo.phpt @@ -25,10 +25,9 @@ memcached.compression_type => %s => %s memcached.serializer => %s => %s memcached.sess_binary => %d => %d memcached.sess_consistent_hash => %d => %d -memcached.sess_consistent_hashing => %d => %d memcached.sess_lock_wait => %d => %d memcached.sess_locking => %d => %d memcached.sess_number_of_replicas => %d => %d memcached.sess_prefix => %s => %s memcached.sess_randomize_replica_read => %d => %d -memcached.sess_remove_failed => %d => %d \ No newline at end of file +memcached.sess_remove_failed => %d => %d