summaryrefslogtreecommitdiff
path: root/ext/mysqlnd/mysqlnd_priv.h
diff options
context:
space:
mode:
authorAndrey Hristov <andrey@php.net>2008-01-28 18:25:50 +0000
committerAndrey Hristov <andrey@php.net>2008-01-28 18:25:50 +0000
commit7932ccba6d4e71bf50bba9797134a047d36e10e1 (patch)
tree703adc6e5e0fea41ffb536a1ac50def65fbdae19 /ext/mysqlnd/mysqlnd_priv.h
parenta7dabd575a1e852999ed9a64341e07737f48ec81 (diff)
downloadphp-git-7932ccba6d4e71bf50bba9797134a047d36e10e1.tar.gz
More optimizations - less MM calls
Clearly separated fetching (physical reading) from decoding phases (data interpretation). Threaded fetching added but disabled as needs more work for Windows. For Linux needs some touches to add pthreads if this is enabled, probably with a compile-time switch. The code reorganisation makes it easy to add also async API, similar to cURL's one.
Diffstat (limited to 'ext/mysqlnd/mysqlnd_priv.h')
-rw-r--r--ext/mysqlnd/mysqlnd_priv.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/ext/mysqlnd/mysqlnd_priv.h b/ext/mysqlnd/mysqlnd_priv.h
index 9762a60542..7fcc2cd769 100644
--- a/ext/mysqlnd/mysqlnd_priv.h
+++ b/ext/mysqlnd/mysqlnd_priv.h
@@ -156,6 +156,14 @@
#define SET_STMT_ERROR(stmt, a, b, c) SET_CLIENT_ERROR(stmt->error_info, a, b, c)
+#ifdef ZTS
+#define CONN_GET_STATE(c) (c)->m->get_state((c) TSRMLS_CC)
+#define CONN_SET_STATE(c, s) (c)->m->set_state((c), (s) TSRMLS_CC)
+#else
+#define CONN_GET_STATE(c) (c)->state
+#define CONN_SET_STATE(c, s) (c)->state = s
+#endif
+
/* PS stuff */
typedef void (*ps_field_fetch_func)(zval *zv, const MYSQLND_FIELD * const field,
@@ -175,6 +183,8 @@ extern struct st_mysqlnd_perm_bind mysqlnd_ps_fetch_functions[MYSQL_TYPE_LAST +
extern const char * mysqlnd_out_of_sync;
extern const char * mysqlnd_server_gone;
+extern MYSQLND_MEMORY_POOL mysqlnd_memory_pool;
+
enum_func_status mysqlnd_handle_local_infile(MYSQLND *conn, const char *filename, zend_bool *is_warning TSRMLS_DC);