|
|
|
@ -442,7 +442,7 @@ MYSQLND_METHOD(mysqlnd_conn, set_server_option)(MYSQLND * const conn, |
|
|
|
|
|
|
|
|
|
|
|
/* {{{ _mysqlnd_restart_psession */ |
|
|
|
PHPAPI void _mysqlnd_restart_psession(MYSQLND *conn TSRMLS_DC) |
|
|
|
PHPAPI void _mysqlnd_restart_psession(MYSQLND *conn, MYSQLND_THD_ZVAL_PCACHE *cache TSRMLS_DC) |
|
|
|
{ |
|
|
|
DBG_ENTER("_mysqlnd_restart_psession"); |
|
|
|
MYSQLND_INC_CONN_STATISTIC(&conn->stats, STAT_CONNECT_REUSED); |
|
|
|
@ -451,15 +451,27 @@ PHPAPI void _mysqlnd_restart_psession(MYSQLND *conn TSRMLS_DC) |
|
|
|
mnd_pefree(conn->last_message, conn->persistent); |
|
|
|
conn->last_message = NULL; |
|
|
|
} |
|
|
|
conn->zval_cache = cache; |
|
|
|
DBG_VOID_RETURN; |
|
|
|
} |
|
|
|
/* }}} */ |
|
|
|
|
|
|
|
|
|
|
|
/* {{{ mysqlnd_end_psession */ |
|
|
|
PHPAPI void mysqlnd_end_psession(MYSQLND *conn) |
|
|
|
/* {{{ _mysqlnd_end_psession */ |
|
|
|
PHPAPI void _mysqlnd_end_psession(MYSQLND *conn TSRMLS_DC) |
|
|
|
{ |
|
|
|
|
|
|
|
DBG_ENTER("_mysqlnd_end_psession"); |
|
|
|
/* |
|
|
|
BEWARE!!!! This will have a problem with a query cache. |
|
|
|
We need to move the data out of the zval cache before we end the psession. |
|
|
|
Or we will use nirvana pointers!! |
|
|
|
*/ |
|
|
|
if (conn->zval_cache) { |
|
|
|
DBG_INF("Freeing zval cache reference"); |
|
|
|
mysqlnd_palloc_free_thd_cache_reference(&conn->zval_cache); |
|
|
|
conn->zval_cache = NULL; |
|
|
|
} |
|
|
|
DBG_VOID_RETURN; |
|
|
|
} |
|
|
|
/* }}} */ |
|
|
|
|
|
|
|
|