Commit Graph

168 Commits

Author SHA1 Message Date
Xinchen Hui
e0680cb170 Fixed reference handling of bind_result 2014-06-19 16:08:45 +08:00
Xinchen Hui
f81498c8c8 Fixed invalid read 2014-06-19 15:56:35 +08:00
Xinchen Hui
049e52f19b Fixed various bugs 2014-06-19 14:24:49 +08:00
Xinchen Hui
6288bb8ffe Refactoring mysqlnd (incompleted, only mysqlnd ext compilable) 2014-06-18 12:09:37 +08:00
Andrey Hristov
6828437c11 Merge branch 'PHP-5.6'
Conflicts:
	NEWS
	ext/mysqlnd/mysqlnd_result.c
2014-04-10 18:22:01 +03:00
Andrey Hristov
63791d055a New result fetching mode for mysqlnd, which should use less memory but
implies more memory copy. The old method is still available and can be used.
It stays as default. Choosing the method is through a flag to mysqli_query()/mysqli_real_query()
New mode can be forced with an INI setting, for all extensions that support this mode
(ext/mysql and mysqli, because PDO due to it's architecture can't support it)
The setting is mysqlnd.fetch_data_copy=[0|1]
2014-04-10 16:44:54 +03:00
Andrey Hristov
5e836b443c Merge branch 'PHP-5.6' 2014-03-10 19:16:22 +02:00
Andrey Hristov
d2a291393a inject it directly. This is not C++ and I don't want to use hacks with similar structures
that are binary compatible. Better be explicit.
2014-03-10 19:15:30 +02:00
Andrey Hristov
3456d47235 Merge branch 'PHP-5.6' 2014-03-10 18:19:22 +02:00
Andrey Hristov
73f03a47d0 DI 2014-03-10 18:18:56 +02:00
Andrey Hristov
529fdd5bb0 Merge branch 'PHP-5.6' 2014-03-05 16:24:43 +02:00
Andrey Hristov
6b804b96b8 Refactor the result set data structures. Move more to the buffered and unbuffered
substructures. Add methods to these too. Preparing for pluggable interface for
returning data to the engine (zvals, c-style, something else)
2014-03-05 16:22:23 +02:00
Andrey Hristov
f83e88e3ea Merge branch 'PHP-5.6' 2014-02-17 18:37:59 +02:00
Andrey Hristov
b2cd56c3cb Move code out, that handles the actual structure to be used for the decoded
data. Will make it easier to add different structures
2014-02-17 18:37:08 +02:00
Andrey Hristov
7072db5a6b FIx failing tests because of operator precedence 2014-01-23 18:20:13 +02:00
Xinchen Hui
c081ce628f Bump year 2014-01-03 11:08:10 +08:00
Andrey Hristov
40dc242904 Merge branch 'PHP-5.4' into PHP-5.5
Conflicts:
	NEWS
	ext/mysqlnd/mysqlnd.c
2013-11-26 19:02:45 +02:00
Andrey Hristov
74ba88e186 Fix for Bug #66141 (mysqlnd quote function is wrong with NO_BACKSLASH_ESCAPES after failed query) 2013-11-26 19:01:49 +02:00
Andrey Hristov
c09652c289 fix the fix 2013-03-13 15:56:44 +01:00
Andrey Hristov
7503a4b4a4 Merge branch 'PHP-5.4' into PHP-5.5
Conflicts:
	NEWS
2013-03-13 15:29:40 +01:00
Andrey Hristov
0777a18703 Merge branch 'PHP-5.3' into PHP-5.4
Conflicts:
	NEWS
2013-03-13 14:24:23 +01:00
Andrey Hristov
f1e2edff8b fix for bug #63530 mysqlnd_stmt::bind_one_parameter uses wrong alloc for stmt->param_bind 2013-03-13 13:37:51 +01:00
Andrey Hristov
cde53e7fcd fix different values of mysqli_stmt_affected_rows between libmysql
and mysqlnd (in favor of libmysql) before execute and after prepare()
2013-01-07 16:36:21 +01:00
Xinchen Hui
cbb5d42b9b Merge branch 'PHP-5.4' into PHP-5.5 2013-01-06 10:23:21 +08:00
Xinchen Hui
c2f8e90504 Merge branch 'PHP-5.3' into PHP-5.4 2013-01-06 10:20:00 +08:00
Xinchen Hui
bc11e6fdbb bump year 2013-01-06 10:19:09 +08:00
andrey
6074df91c6 remove old unicode code, that is was compiled out by using a macro 2012-09-25 16:36:21 +02:00
andrey
4d2d8e8717 Merge branch 'PHP-5.3' into PHP-5.4
Conflicts:
	ext/mysqlnd/mysqlnd_ps.c

merge fix for bug#62046
2012-05-16 15:59:39 +02:00
andrey
d4afbd487a Fix for bug#62046
Bug#62046 mysqli@mysqlnd can't iterate over stored sets after call to
mysqli_stmt_reset().

Stmt's state was changed to STMT_PREPARED and leads the driver to think
that the stmt was just prepared. Because result set exist also for only
prepared but not executed sets, the check for stmt->result isn't any good.
There is a result set, because as response for COM_PREPARE the server sends
metadata and metadata is part of a result set. After COM_EXECUTE the server
sends metadata again, which could be different and in this case more correct.
2012-05-16 14:28:55 +02:00
andrey
67419499b2 Merge branch 'PHP-5.3' into PHP-5.4 2012-05-02 15:57:08 +02:00
andrey
b42d000471 Fix for bug#61411
Bug #61411 PDO Segfaults with PERSISTENT == TRUE && EMULATE_PREPARES == FALSE
Wrong allocation, that doesn't follow the scheme of using stmt->persistent
was the root cause of the problem and the crash at free.
2012-05-02 15:55:22 +02:00
Felipe Pena
e4ca0ed09f - Year++ 2012-01-01 13:15:04 +00:00
Felipe Pena
4e19825281 - Year++ 2012-01-01 13:15:04 +00:00
Andrey Hristov
8fb6bdd5b8 Split struct MYSQLND in struct MYSQLND and struct MYSQLD_CONN_DATA.
A step in the direction of keeping internal data private
2011-10-31 11:46:24 +00:00
Andrey Hristov
f926a3c07d Move from directly referencing an aggregated structure to using a
pointer to a structure. The structure is still aggregated but we add
a level of indirection for possible plugins to overwrite the storage
2011-10-25 23:01:49 +00:00
Andrey Hristov
4321da0388 move plugin specific stuff to one file. create object factory
for similar objects
2011-10-24 12:34:44 +00:00
Andrey Hristov
652490d43a shift code around to two new files - mysqlnd_driver.c
and mysqlnd_ext_plugin.c (mysqlnd extension plugin)
2011-10-21 15:28:58 +00:00
Pierre Joye
a68abe830d - fix TS build 2011-09-17 10:24:18 +00:00
Dmitry Stogov
d6ab6bc6ea Fixed Windows build 2011-09-16 06:55:43 +00:00
Andrey Hristov
049a7c49cd add query information to the trace log 2011-09-06 14:48:43 +00:00
Andrey Hristov
9f7ad10a63 function rename to comply with the schema of other callbacks 2011-09-02 11:22:41 +00:00
Andrey Hristov
d96e924b25 function rename to comply with the schema of other callbacks 2011-09-02 11:22:41 +00:00
Andrey Hristov
c9e7716cfd Add mysqli_error_list() that returns an array with errors. Typically only
one and just one for libmysql. mysqlnd can return generate more than one error
during its work and with mysqli_error() only the last error is being reported.
In the array returned by mysqli_error_list() / $mysqli->error_list, all errors will be found.
The list is reset when the next command is executed
2011-08-04 09:51:26 +00:00
Andrey Hristov
3afdf62df0 throw out legacy code, that never was used for something
useful. Was added for QC but QC is now a plugin, not part of
the core.
2011-03-21 13:58:11 +00:00
Andrey Hristov
f06443593e add a proxy for sppintf and vspprintf 2011-03-18 14:56:20 +00:00
Andrey Hristov
c90df5850b WS 2011-03-18 13:55:25 +00:00
Andrey Hristov
2d2d1c7335 new function/methods - mysqlnd_stmt_flush. Removing
code duplication
2011-03-18 13:35:33 +00:00
Andrey Hristov
ca5df2a8bb less trace info 2011-03-18 12:33:17 +00:00
Andrey Hristov
4a38256394 compiler warnings fixed 2011-03-16 11:51:56 +00:00
Andrey Hristov
44cd358f04 fix warnings. These checks are not needed because
param_no is unsigned, it wasn't in the beginning.
2011-02-01 16:55:20 +00:00