svn: /pecl/mysqlnd_ms/trunk/ mysqlnd_ms_enum_n_def.h mysqlnd_ms_filter_qos.c

From: Date: Wed, 07 Dec 2011 14:56:30 +0000
Subject: svn: /pecl/mysqlnd_ms/trunk/ mysqlnd_ms_enum_n_def.h mysqlnd_ms_filter_qos.c
Groups: php.pecl.cvs 
Request: Send a blank email to pecl-cvs+get-17299@lists.php.net to get a copy of this message
uw Wed, 07 Dec 2011 14:56:30 +0000 Revision: http://svn.php.net/viewvc?view=revision&revision=320579 Log: Remove option for setting cache ttl for slave status information. Implementation was incomplete. We won't add caching to initial release. Its an optimization we can do later. Changed paths: U pecl/mysqlnd_ms/trunk/mysqlnd_ms_enum_n_def.h U pecl/mysqlnd_ms/trunk/mysqlnd_ms_filter_qos.c Modified: pecl/mysqlnd_ms/trunk/mysqlnd_ms_enum_n_def.h =================================================================== --- pecl/mysqlnd_ms/trunk/mysqlnd_ms_enum_n_def.h 2011-12-07 14:46:11 UTC (rev 320578) +++ pecl/mysqlnd_ms/trunk/mysqlnd_ms_enum_n_def.h 2011-12-07 14:56:30 UTC (rev 320579) @@ -181,7 +181,6 @@ #define SECT_QOS_SESSION "session_consistency" #define SECT_QOS_EVENTUAL "eventual_consistency" #define SECT_QOS_AGE "age" -#define SECT_QOS_CACHE_TTL "cache_ttl" #define SECT_G_TRX_NAME "global_transaction_id_injection" #define SECT_G_TRX_ON_COMMIT "on_commit" #define SECT_G_TRX_REPORT_ERROR "report_error" @@ -358,14 +357,13 @@ QOS_OPTION_NONE, QOS_OPTION_GTID, QOS_OPTION_AGE, - QOS_OPTION_CACHE_TTL, QOS_OPTION_LAST_ENUM_ENTRY }; +/* using struct because we will likely add cache ttl later */ typedef struct st_mysqlnd_ms_filter_qos_option_data { long age_or_gtid; - unsigned int cache_ttl; } MYSQLND_MS_FILTER_QOS_OPTION_DATA; typedef struct st_mysqlnd_ms_filter_qos_data Modified: pecl/mysqlnd_ms/trunk/mysqlnd_ms_filter_qos.c =================================================================== --- pecl/mysqlnd_ms/trunk/mysqlnd_ms_filter_qos.c 2011-12-07 14:46:11 UTC (rev 320578) +++ pecl/mysqlnd_ms/trunk/mysqlnd_ms_filter_qos.c 2011-12-07 14:56:30 UTC (rev 320579) @@ -89,21 +89,6 @@ MYSQLND_MS_ERROR_PREFIX " Error by creating filter '%s', '%s' clashes with previous setting. Stopping.", PICK_QOS, SECT_QOS_SESSION); } else { ret->consistency = CONSISTENCY_SESSION; - - if (TRUE == is_list_value) { - zend_bool section_exists; - struct st_mysqlnd_ms_config_json_entry * session_section = - mysqlnd_ms_config_json_sub_section(section, SECT_QOS_SESSION, sizeof(SECT_QOS_SESSION) - 1, &section_exists TSRMLS_CC); - - if (section_exists && session_section) { - char * json_value = mysqlnd_ms_config_json_string_from_section(session_section, SECT_QOS_CACHE_TTL, sizeof(SECT_QOS_CACHE_TTL) - 1, 0, - &value_exists, &is_list_value TSRMLS_CC); - if (value_exists && json_value) { - ret->option_data.cache_ttl = atol(json_value); - mnd_efree(json_value); - } - } - } } } @@ -133,13 +118,6 @@ ret->option = QOS_OPTION_AGE; ret->option_data.age_or_gtid = atol(json_value); mnd_efree(json_value); - - json_value = mysqlnd_ms_config_json_string_from_section(eventual_section, SECT_QOS_CACHE_TTL, sizeof(SECT_QOS_CACHE_TTL) - 1, 0, - &value_exists, &is_list_value TSRMLS_CC); - if (value_exists && json_value) { - ret->option_data.cache_ttl = atol(json_value); - mnd_efree(json_value); - } } } } @@ -481,7 +459,7 @@ smart_str_free(&sql); BEGIN_ITERATE_OVER_SERVER_LIST(element, master_list) - zend_llist_add_element(selected_masters, &element); + zend_llist_add_element(selected_masters, &element); END_ITERATE_OVER_SERVER_LIST; break; } @@ -495,16 +473,16 @@ */ DBG_INF("using masters only for strong consistency"); BEGIN_ITERATE_OVER_SERVER_LIST(element, master_list) - zend_llist_add_element(selected_masters, &element); + zend_llist_add_element(selected_masters, &element); END_ITERATE_OVER_SERVER_LIST; break; case CONSISTENCY_EVENTUAL: /* - For now... + For now... Either all masters and slaves or slaves filtered by SHOW SLAVE STATUS replication lag - For later... + For later... We may inject mysqlnd_qc per-query TTL SQL hints here to replace a slave access with a call access. */ @@ -563,16 +541,16 @@ tmp_error_info.error_no, tmp_error_info.error); error_buf[sizeof(error_buf) - 1] = '\0'; php_error_docref(NULL TSRMLS_CC, E_WARNING, "%s", error_buf); - } + } END_ITERATE_OVER_SERVER_LIST; zend_llist_clean(&stage1_slaves); } else { BEGIN_ITERATE_OVER_SERVER_LIST(element, slave_list) - zend_llist_add_element(selected_slaves, &element); + zend_llist_add_element(selected_slaves, &element); END_ITERATE_OVER_SERVER_LIST; } BEGIN_ITERATE_OVER_SERVER_LIST(element, master_list) - zend_llist_add_element(selected_masters, &element); + zend_llist_add_element(selected_masters, &element); END_ITERATE_OVER_SERVER_LIST; break; default: @@ -648,11 +626,6 @@ if (QOS_OPTION_GTID == option && CONSISTENCY_SESSION == consistency) { new_qos_filter->option_data.age_or_gtid = option_data->age_or_gtid; } - if (QOS_OPTION_CACHE_TTL == option && - ((CONSISTENCY_EVENTUAL == consistency) || (CONSISTENCY_SESSION))) - { - new_qos_filter->option_data.cache_ttl = option_data->cache_ttl; - } new_filter_entry = (MYSQLND_MS_FILTER_DATA *)new_qos_filter; new_filter_entry->persistent = persistent;

« previous php.pecl.cvs (#17299) next »