summaryrefslogtreecommitdiff
path: root/ext/mysqlnd/mysqlnd.c
diff options
context:
space:
mode:
authorAndrey Hristov <andrey@php.net>2010-01-08 13:47:03 +0000
committerAndrey Hristov <andrey@php.net>2010-01-08 13:47:03 +0000
commit3264e51983b46ee4951a14b591e8d80a542551b5 (patch)
treebb3d3cfb5c1dcb93a20e82e80fa96115d50a6221 /ext/mysqlnd/mysqlnd.c
parentc18d4364ed0c16ff784418d9f0c54af9701c9d5a (diff)
downloadphp-git-3264e51983b46ee4951a14b591e8d80a542551b5.tar.gz
add restart_psession and end_psession hooks
Diffstat (limited to 'ext/mysqlnd/mysqlnd.c')
-rw-r--r--ext/mysqlnd/mysqlnd.c39
1 files changed, 29 insertions, 10 deletions
diff --git a/ext/mysqlnd/mysqlnd.c b/ext/mysqlnd/mysqlnd.c
index b66c458cde..b253b64907 100644
--- a/ext/mysqlnd/mysqlnd.c
+++ b/ext/mysqlnd/mysqlnd.c
@@ -411,26 +411,43 @@ MYSQLND_METHOD(mysqlnd_conn, set_server_option)(MYSQLND * const conn,
PHPAPI void _mysqlnd_restart_psession(MYSQLND *conn TSRMLS_DC)
{
DBG_ENTER("_mysqlnd_restart_psession");
+ conn->m->restart_psession(conn TSRMLS_CC);
+ DBG_VOID_RETURN;
+}
+/* }}} */
+
+
+/* {{{ _mysqlnd_end_psession */
+PHPAPI void _mysqlnd_end_psession(MYSQLND *conn TSRMLS_DC)
+{
+ DBG_ENTER("_mysqlnd_end_psession");
+ conn->m->end_psession(conn TSRMLS_CC);
+ DBG_VOID_RETURN;
+}
+/* }}} */
+
+/* {{{ mysqlnd_conn::restart_psession */
+static enum_func_status
+MYSQLND_METHOD(mysqlnd_conn, restart_psession)(MYSQLND * conn TSRMLS_DC)
+{
+ DBG_ENTER("mysqlnd_conn::restart_psession");
MYSQLND_INC_CONN_STATISTIC(&conn->stats, STAT_CONNECT_REUSED);
/* Free here what should not be seen by the next script */
if (conn->last_message) {
mnd_pefree(conn->last_message, conn->persistent);
conn->last_message = NULL;
}
- /*
- The thd zval cache is always freed on request shutdown, so this has happened already.
- Don't touch the old value! Get new reference
- */
- DBG_VOID_RETURN;
+ DBG_RETURN(PASS);
}
/* }}} */
-/* {{{ _mysqlnd_end_psession */
-PHPAPI void _mysqlnd_end_psession(MYSQLND *conn TSRMLS_DC)
+/* {{{ mysqlnd_conn::end_psession */
+static enum_func_status
+MYSQLND_METHOD(mysqlnd_conn, end_psession)(MYSQLND * conn TSRMLS_DC)
{
- DBG_ENTER("_mysqlnd_end_psession");
- DBG_VOID_RETURN;
+ DBG_ENTER("mysqlnd_conn::end_psession");
+ DBG_RETURN(PASS);
}
/* }}} */
@@ -2081,7 +2098,9 @@ MYSQLND_CLASS_METHODS_START(mysqlnd_conn)
MYSQLND_METHOD_PRIVATE(mysqlnd_conn, set_state),
MYSQLND_METHOD(mysqlnd_conn, simple_command),
- MYSQLND_METHOD(mysqlnd_conn, simple_command_handle_response)
+ MYSQLND_METHOD(mysqlnd_conn, simple_command_handle_response),
+ MYSQLND_METHOD(mysqlnd_conn, restart_psession),
+ MYSQLND_METHOD(mysqlnd_conn, end_psession)
MYSQLND_CLASS_METHODS_END;