andrey Wed May 7 15:16:27 2008 UTC Modified files: /php-src/ext/mysqlnd mysqlnd.c mysqlnd.h mysqlnd_enum_n_def.h mysqlnd_libmysql_compat.h mysqlnd_result.c mysqlnd_statistics.c php_mysqlnd.c Log: Update mysqlnd - new ini variable
http://cvs.php.net/viewvc.cgi/php-src/ext/mysqlnd/mysqlnd.c?r1=1.22&r2=1.23&diff_format=u Index: php-src/ext/mysqlnd/mysqlnd.c diff -u php-src/ext/mysqlnd/mysqlnd.c:1.22 php-src/ext/mysqlnd/mysqlnd.c:1.23 --- php-src/ext/mysqlnd/mysqlnd.c:1.22 Thu Apr 24 14:04:58 2008 +++ php-src/ext/mysqlnd/mysqlnd.c Wed May 7 15:16:27 2008 @@ -18,7 +18,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: mysqlnd.c,v 1.22 2008/04/24 14:04:58 andrey Exp $ */ +/* $Id: mysqlnd.c,v 1.23 2008/05/07 15:16:27 andrey Exp $ */ #include "php.h" #include "mysqlnd.h" #include "mysqlnd_wireprotocol.h" @@ -1390,7 +1390,7 @@ } /* }}} */ - +#if !defined(MYSQLND_USE_OPTIMISATIONS) || MYSQLND_USE_OPTIMISATIONS == 0 /* {{{ mysqlnd_get_client_info */ PHPAPI const char * mysqlnd_get_client_info() { @@ -1405,7 +1405,7 @@ return MYSQLND_VERSION_ID; } /* }}} */ - +#endif /* {{{ mysqlnd_conn::get_server_info */ static const char * http://cvs.php.net/viewvc.cgi/php-src/ext/mysqlnd/mysqlnd.h?r1=1.16&r2=1.17&diff_format=u Index: php-src/ext/mysqlnd/mysqlnd.h diff -u php-src/ext/mysqlnd/mysqlnd.h:1.16 php-src/ext/mysqlnd/mysqlnd.h:1.17 --- php-src/ext/mysqlnd/mysqlnd.h:1.16 Thu Apr 24 14:04:58 2008 +++ php-src/ext/mysqlnd/mysqlnd.h Wed May 7 15:16:27 2008 @@ -18,13 +18,13 @@ +----------------------------------------------------------------------+ */ -/* $Id: mysqlnd.h,v 1.16 2008/04/24 14:04:58 andrey Exp $ */ +/* $Id: mysqlnd.h,v 1.17 2008/05/07 15:16:27 andrey Exp $ */ #ifndef MYSQLND_H #define MYSQLND_H -#define MYSQLND_VERSION "mysqlnd 5.0.3-dev - 080129 - $Revision: 1.16 $" -#define MYSQLND_VERSION_ID 50002 +#define MYSQLND_VERSION "mysqlnd 5.0.4-dev - 080501 - $Revision: 1.17 $" +#define MYSQLND_VERSION_ID 50004 /* This forces inlining of some accessor functions */ #define MYSQLND_USE_OPTIMISATIONS 0 @@ -138,13 +138,13 @@ #define mysqlnd_get_proto_info(conn) (conn)->protocol_version #define mysqlnd_thread_id(conn) (conn)->thread_id -#define mysqlnd_num_rows(result) ((result)->data? (result)->data->row_count:0) +#define mysqlnd_num_rows(result) ((result)->stored_data? (result)->stored_data->row_count:0) #define mysqlnd_num_fields(result) (result)->field_count #define mysqlnd_fetch_lengths(result) ((result)->m.fetch_lengths? (result)->m.fetch_lengths((result)):NULL) #define mysqlnd_field_seek(result, ofs) (result)->m.seek_field((result), (ofs)) -#define mysqlnd_field_tell(result) (result)->meta? (result)->meta->current_field:0) +#define mysqlnd_field_tell(result) ((result)->meta? (result)->meta->current_field:0) #define mysqlnd_fetch_field(result) (result)->m.fetch_field((result) TSRMLS_CC) #define mysqlnd_fetch_field_direct(result,fnr) ((result)->meta? &((result)->meta->fields[(fnr)]):NULL) #define mysqlnd_fetch_fields(result) ((result)->meta? (result)->meta->fields: NULL) @@ -358,6 +358,7 @@ MYSQLND_DEBUG *dbg; /* The DBG object */ long net_cmd_buffer_size; long net_read_buffer_size; + long log_mask; #ifdef MYSQLND_THREADED THREAD_T thread_id; #endif http://cvs.php.net/viewvc.cgi/php-src/ext/mysqlnd/mysqlnd_enum_n_def.h?r1=1.7&r2=1.8&diff_format=u Index: php-src/ext/mysqlnd/mysqlnd_enum_n_def.h diff -u php-src/ext/mysqlnd/mysqlnd_enum_n_def.h:1.7 php-src/ext/mysqlnd/mysqlnd_enum_n_def.h:1.8 --- php-src/ext/mysqlnd/mysqlnd_enum_n_def.h:1.7 Thu Apr 24 14:04:58 2008 +++ php-src/ext/mysqlnd/mysqlnd_enum_n_def.h Wed May 7 15:16:27 2008 @@ -18,7 +18,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: mysqlnd_enum_n_def.h,v 1.7 2008/04/24 14:04:58 andrey Exp $ */ +/* $Id: mysqlnd_enum_n_def.h,v 1.8 2008/05/07 15:16:27 andrey Exp $ */ #ifndef MYSQLND_ENUM_N_DEF_H #define MYSQLND_ENUM_N_DEF_H @@ -31,8 +31,8 @@ #define SERVER_STATUS_IN_TRANS 1 /* Transaction has started */ #define SERVER_STATUS_AUTOCOMMIT 2 /* Server in auto_commit mode */ #define SERVER_MORE_RESULTS_EXISTS 8 /* Multi query - next query exists */ -#define MYSQLND_SERVER_QUERY_NO_GOOD_INDEX_USED 16 -#define MYSQLND_SERVER_QUERY_NO_INDEX_USED 32 +#define SERVER_QUERY_NO_GOOD_INDEX_USED 16 +#define SERVER_QUERY_NO_INDEX_USED 32 /* The server was able to fulfill the clients request and opened a read-only non-scrollable cursor for a query. This flag comes @@ -48,7 +48,6 @@ #define SERVER_STATUS_NO_BACKSLASH_ESCAPES 512 #define SERVER_QUERY_WAS_SLOW 1024 - #define MYSQLND_NO_DATA 100 #define MYSQLND_DATA_TRUNCATED 101 @@ -316,6 +315,7 @@ STAT_NON_RSET_QUERY, STAT_NO_INDEX_USED, STAT_BAD_INDEX_USED, + STAT_QUERY_WAS_SLOW, STAT_BUFFERED_SETS, STAT_UNBUFFERED_SETS, STAT_PS_BUFFERED_SETS, http://cvs.php.net/viewvc.cgi/php-src/ext/mysqlnd/mysqlnd_libmysql_compat.h?r1=1.6&r2=1.7&diff_format=u Index: php-src/ext/mysqlnd/mysqlnd_libmysql_compat.h diff -u php-src/ext/mysqlnd/mysqlnd_libmysql_compat.h:1.6 php-src/ext/mysqlnd/mysqlnd_libmysql_compat.h:1.7 --- php-src/ext/mysqlnd/mysqlnd_libmysql_compat.h:1.6 Wed Apr 16 12:53:18 2008 +++ php-src/ext/mysqlnd/mysqlnd_libmysql_compat.h Wed May 7 15:16:27 2008 @@ -38,10 +38,6 @@ #define MYSQL_ERRMSG_SIZE MYSQLND_ERRMSG_SIZE #define SQLSTATE_LENGTH MYSQLND_SQLSTATE_LENGTH -#define SERVER_QUERY_NO_GOOD_INDEX_USED MYSQLND_SERVER_QUERY_NO_GOOD_INDEX_USED -#define SERVER_QUERY_NO_INDEX_USED MYSQLND_SERVER_QUERY_NO_INDEX_USED - - /* functions */ #define mysql_affected_rows(r) mysqlnd_affected_rows((r)) #define mysql_autocommit(r,m) mysqlnd_autocommit((r),(m)) http://cvs.php.net/viewvc.cgi/php-src/ext/mysqlnd/mysqlnd_result.c?r1=1.22&r2=1.23&diff_format=u Index: php-src/ext/mysqlnd/mysqlnd_result.c diff -u php-src/ext/mysqlnd/mysqlnd_result.c:1.22 php-src/ext/mysqlnd/mysqlnd_result.c:1.23 --- php-src/ext/mysqlnd/mysqlnd_result.c:1.22 Thu Apr 24 14:04:58 2008 +++ php-src/ext/mysqlnd/mysqlnd_result.c Wed May 7 15:16:27 2008 @@ -18,7 +18,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: mysqlnd_result.c,v 1.22 2008/04/24 14:04:58 andrey Exp $ */ +/* $Id: mysqlnd_result.c,v 1.23 2008/05/07 15:16:27 andrey Exp $ */ #include "php.h" #include "mysqlnd.h" #include "mysqlnd_wireprotocol.h" @@ -583,6 +583,8 @@ stmt->state = MYSQLND_STMT_INITTED; } } else { + unsigned int to_log = MYSQLND_G(log_mask); + to_log &= fields_eof.server_status; DBG_INF_FMT("warnings=%u server_status=%u", fields_eof.warning_count, fields_eof.server_status); conn->upsert_status.warning_count = fields_eof.warning_count; /* @@ -593,12 +595,14 @@ of every result set (the EOF packet). */ conn->upsert_status.server_status = fields_eof.server_status; - if (fields_eof.server_status & MYSQLND_SERVER_QUERY_NO_GOOD_INDEX_USED) { + if (fields_eof.server_status & SERVER_QUERY_NO_GOOD_INDEX_USED) { stat = STAT_BAD_INDEX_USED; - } else if (fields_eof.server_status & MYSQLND_SERVER_QUERY_NO_INDEX_USED) { + } else if (fields_eof.server_status & SERVER_QUERY_NO_INDEX_USED) { stat = STAT_NO_INDEX_USED; + } else if (fields_eof.server_status & SERVER_QUERY_WAS_SLOW) { + stat = STAT_QUERY_WAS_SLOW; } - if (stat != STAT_LAST) { + if (to_log) { #if A0 char *backtrace = mysqlnd_get_backtrace(TSRMLS_C); php_log_err(backtrace TSRMLS_CC); @@ -706,14 +710,14 @@ } /* }}} */ - +#if !defined(MYSQLND_USE_OPTIMISATIONS) || MYSQLND_USE_OPTIMISATIONS == 0 /* {{{ mysqlnd_res::fetch_lengths */ PHPAPI unsigned long * mysqlnd_fetch_lengths(MYSQLND_RES * const result) { return result->m.fetch_lengths? result->m.fetch_lengths(result):NULL; } /* }}} */ - +#endif /* {{{ mysqlnd_fetch_row_unbuffered_c */ static MYSQLND_ROW_C http://cvs.php.net/viewvc.cgi/php-src/ext/mysqlnd/mysqlnd_statistics.c?r1=1.5&r2=1.6&diff_format=u Index: php-src/ext/mysqlnd/mysqlnd_statistics.c diff -u php-src/ext/mysqlnd/mysqlnd_statistics.c:1.5 php-src/ext/mysqlnd/mysqlnd_statistics.c:1.6 --- php-src/ext/mysqlnd/mysqlnd_statistics.c:1.5 Thu Feb 14 12:51:00 2008 +++ php-src/ext/mysqlnd/mysqlnd_statistics.c Wed May 7 15:16:27 2008 @@ -18,7 +18,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: mysqlnd_statistics.c,v 1.5 2008/02/14 12:51:00 andrey Exp $ */ +/* $Id: mysqlnd_statistics.c,v 1.6 2008/05/07 15:16:27 andrey Exp $ */ #include "php.h" #include "mysqlnd.h" #include "mysqlnd_priv.h" @@ -42,6 +42,7 @@ { STR_W_LEN("non_result_set_queries") }, { STR_W_LEN("no_index_used") }, { STR_W_LEN("bad_index_used") }, + { STR_W_LEN("slow_queries") }, { STR_W_LEN("buffered_sets") }, { STR_W_LEN("unbuffered_sets") }, { STR_W_LEN("ps_buffered_sets") }, http://cvs.php.net/viewvc.cgi/php-src/ext/mysqlnd/php_mysqlnd.c?r1=1.6&r2=1.7&diff_format=u Index: php-src/ext/mysqlnd/php_mysqlnd.c diff -u php-src/ext/mysqlnd/php_mysqlnd.c:1.6 php-src/ext/mysqlnd/php_mysqlnd.c:1.7 --- php-src/ext/mysqlnd/php_mysqlnd.c:1.6 Wed Apr 16 12:53:18 2008 +++ php-src/ext/mysqlnd/php_mysqlnd.c Wed May 7 15:16:27 2008 @@ -18,7 +18,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: php_mysqlnd.c,v 1.6 2008/04/16 12:53:18 andrey Exp $ */ +/* $Id: php_mysqlnd.c,v 1.7 2008/05/07 15:16:27 andrey Exp $ */ #include "php.h" #include "php_ini.h" #include "mysqlnd.h" @@ -26,6 +26,7 @@ #include "mysqlnd_debug.h" #include "ext/standard/info.h" + /* {{{ mysqlnd_functions[] * * Every user visible function must have an entry in mysqlnd_functions[]. @@ -138,6 +139,7 @@ mysqlnd_globals->dbg = NULL; /* The DBG object*/ mysqlnd_globals->net_cmd_buffer_size = 2048; mysqlnd_globals->net_read_buffer_size = 32768; + mysqlnd_globals->log_mask = 0; } /* }}} */ @@ -150,6 +152,7 @@ STD_PHP_INI_ENTRY("mysqlnd.debug", NULL, PHP_INI_SYSTEM, OnUpdateString, debug, zend_mysqlnd_globals, mysqlnd_globals) STD_PHP_INI_ENTRY("mysqlnd.net_cmd_buffer_size", "2048", PHP_INI_ALL, OnUpdateLong, net_cmd_buffer_size, zend_mysqlnd_globals, mysqlnd_globals) STD_PHP_INI_ENTRY("mysqlnd.net_read_buffer_size", "32768",PHP_INI_ALL, OnUpdateLong, net_read_buffer_size, zend_mysqlnd_globals, mysqlnd_globals) + STD_PHP_INI_ENTRY("mysqlnd.log_mask", "0", PHP_INI_ALL, OnUpdateLong, log_mask, zend_mysqlnd_globals, mysqlnd_globals) PHP_INI_END() /* }}} */
-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php