summaryrefslogtreecommitdiff
path: root/ext/mysqlnd/mysqlnd.h
Commit message (Collapse)AuthorAgeFilesLines
* decouple the methods in MYSQLND_STMT from the data,Andrey Hristov2010-03-161-56/+1
| | | | | | | | needed to move to a new structure MYSQLND_STMT. Makes the code cleaner and less error-prone. Also fix PDO/MySQL which directly touch mysqlnd internals instead of using API calls.
* allow persistency of PSAndrey Hristov2010-03-121-10/+14
|
* Pass tsrmls to all functions, which might need it in the future.Andrey Hristov2010-02-031-32/+33
| | | | | | We are anyway breaking the internal ABI in 5.3.2 so this won't hurt and make us prepared for the future.
* export more functionality for phpize buildsAndrey Hristov2010-01-131-2/+2
|
* this function should be exporten in all cases, not only under PHP6Andrey Hristov2010-01-111-0/+2
|
* add restart_psession and end_psession hooksAndrey Hristov2010-01-081-0/+3
|
* remove C++ commentsAndrey Hristov2009-12-151-2/+2
|
* export this functionAndrey Hristov2009-12-151-1/+1
|
* bump version numberAndrey Hristov2009-12-101-2/+2
|
* Add plugin storage for MYSQLND_STMT tooAndrey Hristov2009-12-101-0/+3
|
* Remove stub code which never actually was used for anything.Andrey Hristov2009-12-091-28/+0
| | | | | Things like this can be built on top of the core.
* Remove the zval caching from mysqlnd. It was disabled versions agoAndrey Hristov2009-12-091-35/+3
| | | | | | due to problems on windows, which were not debugged. Better have code that is disabled not in the core.
* Remove disabled code - threaded fetching. This can be implementedAndrey Hristov2009-12-091-5/+0
| | | | | | on a upper level and by offloading it we reduce the complexity of the core.
* Compressed protocol support + extensibility for mysqlndAndrey Hristov2009-11-201-1/+10
|
* Updating mysqlnd version number.Ulf Wendel2009-10-221-2/+2
|
* Making mysqlnd emit no warnings when fetching pooled persistent connections ↵Ulf Wendel2009-10-151-1/+1
| | | | that have timed out or are unusable for any other reason - bug #49761
* Fix ZTS buildAndrey Hristov2009-09-301-2/+2
|
* Fix (by Andrey) and test for bug #49442 . Don't use efree() for memory ↵Ulf Wendel2009-09-161-1/+1
| | | | allocated with malloc()... If a connection gets created by mysqli_init(), mysqlnd makes it 'persistent'. 'Persistent' means that mysqlnd uses malloc(). mysqlnd does use malloc() instead of ealloc() because it is unknown if the connection will become a true persistent connection in the sense of ext/mysqli. It is unknown if the user wants a persistent connection or not until the user calls mysqli_real_connect(). To avoid tricky conversions mysqlnd uses malloc(), which sets a private persistent flag in the mysqlnd structures. A precondition for the crash to happen was that the private persistent flag is set. The flag is also set when creating a real persistent connection (in the sense of ext/mysqli) and so the bug can happen with mysql_init()/mysqli_real_connect() and mysql_connect('p:<host>', ...). Therefore we test both cases. Note the (tricky?) difference between the implementation detail'mysqlnd private persistent flag = use malloc()' and persistent connections from a user perspective. Although mysqlnd will always set its private persistent flag and use malloc() for connections created with mysqli_init() it is still up to the user to decide in mysqli_real_connect() if the connection shall become a (true) persistent connection or not.
* Fix and tests for bug #49511 . mysqlnd and the MySQL Client Library ↵Ulf Wendel2009-09-161-0/+1
| | | | (libmysql) use different networking APIs. mysqlnd does use PHP streams whereas libmysql uses its own wrapper of the operating level network calls. PHP sets by default a read timeout of 60s for streams - php.ini, default_socket_timeout. This default applies to all streams that set no other timeout value. mysqlnd has not set any other value and therefore it connections of long running queries can have been cut off after default_socket_timeout seconds resulting in a 2006 - MySQL Server has gone away error message. The MySQL Client Library sets a default timeout of 365 * 24 * 3600 seconds (1year) and waits for other timeouts to happen, e.g. TCP/IP timeouts. mysqlnd now uses the same very long timeout. The value is configurable through a new php.ini setting: mysqlnd.net_read_timeout. mysqlnd.net_read_timeout gets used by any extension (ext/mysql, ext/mysqli, PDO_MySQL) that uses mysqlnd. mysqlnd tells PHP Streams to use mysqlnd.net_read_timeout. Please note that there may be subtle differences between MYSQL_OPT_READ_TIMEOUT from the MySQL Client Library and PHP Streams. E.g. MYSQL_OPT_READ_TIMEOUT is documented to work only for TCP/IP connections and, prior to MySQL 5.1.2, only for Windows. PHP streams may not have this limitation. Please check the streams documentation, if in doubt.
* Fix for bug#48745Andrey Hristov2009-08-281-4/+4
| | | | | mysqlnd: mysql_num_fields returns wrong column count for mysql_list_fields
* Fix two problems:Andrey Hristov2009-06-171-2/+2
| | | | | | | | | | | | | | | - The value of mysqli_get_client_info() has been changed recently and did not include "mysqlnd" anymore thus the test suite was thinking the build is always libmysql. This did not kept the suite from running pconn tests - Going back to the libc allocator because the memory arena could be on a persistent connections. If the build is not debug there will be no error but the memory will be freed and in the second use of this pconn freed memory will be used - not good! For now the arena doesn't take an argument whether it should allocate persistently or not, thus persistent is safe for now. Johannes gave his +1 to commit this.
* Use a better extension versionJohannes Schlüter2009-06-111-2/+2
|
* MFB: Reference decrement in own function. Make a function which is notAndrey Hristov2009-06-111-2/+0
| | | | | called externally static, from PHPAPI.
* Fix a bug with mysqlnd_fetch_field(_direct()). With mysqlnd the optimisedAndrey Hristov2009-05-281-2/+2
| | | | | | | | | | function was called, which however, doesn't respect that during store the raw data is not unpacked, to be lazy. The data is unpacked to zvals later, during every row fetch. However, this way max_length won't be calculated correctly. So, if a mysqlnd_fetch_field(_direct) call comes we need to unpack everything and then calculate max_length...and that is expensive, defies our lazy unpacking optimisation.
* - Improve mysqlnd's internal method registrationJohannes Schlüter2009-02-161-1/+10
|
* Bump copyright year, 3 of 3.Sebastian Bergmann2008-12-311-1/+1
|
* mysqlnd fixes for Windows :Andrey Hristov2008-11-201-1/+1
| | | | | | - less warnings - PHPAPI for mysqlnd_poll
* Asynchronous queries for mysqli, when mysqlnd is enabled.Andrey Hristov2008-11-181-0/+4
| | | | | Includes 4 tests for mysqli_poll
* Get rid of many defines (which simplifies the code a lot),Andrey Hristov2008-11-061-3/+3
| | | | | as well as uint->unsigned int
* Compile-in a string-to-int conversion for INT columns by default,Andrey Hristov2008-09-151-2/+2
| | | | | controlled by a ini setting.
* Fix possible bug with persistent connectionsAndrey Hristov2008-06-241-3/+4
|
* Update mysqlnd - new ini variableAndrey Hristov2008-05-071-4/+5
|
* Update ext/mysql's and ext/mysqli's testsAndrey Hristov2008-04-241-2/+6
| | | | | | Add mysqli_stmt_more_result()/mysqli_stmt_next_result(), but only in mysqlnd builds as libmysql doesn't support this feature.
* - Fix Windows buildJohannes Schlüter2008-04-231-1/+1
|
* Update ext/mysql, ext/mysqli and ext/mysqlnd from development treeAndrey Hristov2008-04-161-1/+9
|
* Another fixAndrey Hristov2008-02-141-1/+1
|
* Update mysqlnd - fix bg_storeAndrey Hristov2008-02-141-0/+3
|
* cvs syncAndrey Hristov2008-02-111-0/+6
|
* Fix the build, add a missing fileAndrey Hristov2008-01-291-2/+0
|
* Moving extension specific code to php_mysqlnd.c as the old rule is.Andrey Hristov2008-01-281-1/+6
|
* MFB: More optimizations - less MM callsAndrey Hristov2008-01-281-0/+5
| | | | | | | | | | 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.
* Merge with internal versionAndrey Hristov2008-01-231-6/+7
|
* - Fix problems with double definitionsAndrey Hristov2008-01-021-0/+1
| | | | | | | | - Clean up a bit a type mess - 4 types less. No need to have aliases for the same thing (unification is the name). - New macro for Johannes mysqlnd_stmt_ro_result_metadata ----------------------------------------------------------------------
* Bump copyright year, 2 of 2.Sebastian Bergmann2007-12-311-1/+1
|
* Update mysqlnd in HEADAndrey Hristov2007-10-021-626/+50
| | | | | Updated ext/mysql and ext/mysqli in HEAD
* Update CVSAndrey Hristov2007-08-031-4/+17
| | | | | | | | | - Fix BIT problem for BIT values represented with 5 bytes. Typo. - Make it possible with an ini variable to switch off/on statistics collection. - Compile-out debug checking of uneaten data from the line, when the build is release. According to callgrind this was eating some percentage.
* - Moved mysqnd to it's own directory: It is sort of an extension itself.Jani Taskinen2007-07-251-0/+917
(Similar to what ext/libxml is..)