PHP mysqlnd svn commit: r914 - trunk/mysqlnd
Author: ahristov
Date: 2007-08-15 18:37:03 +0200 (Wed, 15 Aug 2007)
New Revision: 914
Modified:
trunk/mysqlnd/mysqlnd.c
Log:
count normal and persistent connections also inside mysqlnd.
it's available upon request from mysqli_get_client_stats()
Modified: trunk/mysqlnd/mysqlnd.c
- trunk/mysqlnd/mysqlnd.c 2007-08-15 16:32:47 UTC (rev 913)
+++ trunk/mysqlnd/mysqlnd.c 2007-08-15 16:37:03 UTC (rev 914)
@@ -459,6 +459,7 @@
struct timeval tv;
zend_bool unix_socket = FALSE;
const MYSQLND_CHARSET * charset;
+ zend_bool reconnect = FALSE;
php_mysql_packet_greet greet_packet;
php_mysql_packet_auth *auth_packet;
@@ -470,12 +471,16 @@
conn? conn->persistent:0, conn? conn->state:-1);
if (conn && conn->state > CONN_ALLOCED) {
- MYSQLND_INC_CONN_STATISTIC(NULL, STAT_CLOSE_IMPLICIT);
- MYSQLND_INC_CONN_STATISTIC(NULL, STAT_RECONNECT);
+ MYSQLND_INC_GLOBAL_STATISTIC(STAT_CLOSE_IMPLICIT); + reconnect = TRUE;
mysqlnd_send_close(conn TSRMLS_CC);
conn->m->free_contents(conn TSRMLS_CC);
+ MYSQLND_DEC_GLOBAL_STATISTIC(STAT_OPENED_CONNECTIONS); + if (conn->persistent) { + MYSQLND_DEC_GLOBAL_STATISTIC(STAT_OPENED_PERSISTENT_CONNECTIONS); + }
/* Now reconnect using the same handle */
}
@@ -702,6 +707,14 @@
conn->net.cmd_buffer.buffer = pemalloc(conn->net.cmd_buffer.length, conn->persistent);
MYSQLND_INC_CONN_STATISTIC(&conn->stats, STAT_CONNECT_SUCCESS);
+ if (reconnect) { + MYSQLND_INC_GLOBAL_STATISTIC(STAT_RECONNECT); + } + MYSQLND_INC_GLOBAL_STATISTIC(STAT_OPENED_CONNECTIONS); + if (conn->persistent) { + MYSQLND_INC_GLOBAL_STATISTIC(STAT_OPENED_PERSISTENT_CONNECTIONS); + }
+
DBG_INF_FMT("connection_id=%llu", conn->thread_id);
{
uint as_unicode = 1;
@@ -1068,7 +1081,7 @@
case CONN_NEXT_RESULT_PENDING:
case CONN_QUERY_SENT:
case CONN_FETCHING_DATA:
- MYSQLND_INC_CONN_STATISTIC(NULL, STAT_CLOSE_IN_MIDDLE);
+ MYSQLND_INC_GLOBAL_STATISTIC(STAT_CLOSE_IN_MIDDLE);
DBG_ERR_FMT("Brutally closing connection [%p][%s]", conn, conn->scheme);
/*
Do nothing, the connection will be brutally closed
@@ -1112,7 +1125,11 @@
DBG_ENTER("mysqlnd_conn::close");
DBG_INF_FMT("conn=%llu", conn->thread_id);
- MYSQLND_INC_CONN_STATISTIC(NULL, stat);
+ MYSQLND_INC_GLOBAL_STATISTIC(stat); + MYSQLND_DEC_GLOBAL_STATISTIC(STAT_OPENED_CONNECTIONS); + if (conn->persistent) { + MYSQLND_DEC_GLOBAL_STATISTIC(STAT_OPENED_PERSISTENT_CONNECTIONS); + }
/*
Close now, free_reference will try,
@@ -1122,6 +1139,7 @@
ret = conn->m->free_reference(conn TSRMLS_CC);
+
DBG_RETURN(ret);
}
/* }}} */
--
MySQL Code Commits Mailing List
For list archives:
http://lists.mysql.com/commits
To unsubscribe:
http://lists.mysql.com/commits?unsub=lists@pantek.com
Received on Wed Aug 15 12:46:08 2007
This archive was generated by hypermail 2.1.8
: Sun Oct 07 2007 - 08:34:47 EDT
|