summaryrefslogtreecommitdiff
path: root/ext/mysqlnd
Commit message (Collapse)AuthorAgeFilesLines
...
* Next attempt to fix http://bugs.php.net/bug.php?id=48745. Patch by Andrey.Ulf Wendel2009-09-093-2/+20
|
* Fix for bug#48745Andrey Hristov2009-08-2812-151/+74
| | | | | mysqlnd: mysql_num_fields returns wrong column count for mysql_list_fields
* Fixed bug #49027 (mysqli_options() doesn't work when using mysqlnd)Andrey Hristov2009-08-274-52/+89
|
* Baby, one more time :(Andrey Hristov2009-08-251-1/+1
|
* Better fix. A fix of the fixAndrey Hristov2009-08-251-7/+11
|
* Fix bug#48198 error: 'MYSQLND_LLU_SPEC' undeclaredAndrey Hristov2009-08-251-6/+19
| | | | | | | Possibly fix also : Bug #48780 mysqlnd compile failure Bug #46952 mysqlnd compile failure with suncc
* MFB52: Fix include pathJohannes Schlüter2009-07-011-1/+1
|
* - fix buildPierre Joye2009-06-281-1/+2
|
* Fix bug #48644 mysqlnd does not compile with '--enable-mysqlnd-threading'David Soria Parra2009-06-231-1/+1
|
* The experimental warning sohuld be in the configure output...Johannes Schlüter2009-06-231-2/+3
|
* Fix two problems:Andrey Hristov2009-06-172-10/+10
| | | | | | | | | | | | | | | - 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.
* C-comments should be usedAndrey Hristov2009-06-161-2/+2
|
* Memory usage optimisation. mysqlnd is not libmysql. mysqlnd does use theAndrey Hristov2009-06-162-8/+74
| | | | | | | | | | | | | | | | | Zend allocator, which means that is easier to hit memory_limit if you have big stored (buffered) result sets. Before with libmysql you won't hit memory_limit because libmysql uses libc's allocator and nothing is checked. Now, with mysqlnd the situation is stricter and it is easier to hit memory_limit. We try to optimize for big result sets. If a result set is larger than 10 rows we will start freeing some data to keep memory usage after 10 rows constant. This will help in the cases where a buffered result set is scrolled forward only and just only once, or mysqlnd will need to decode data from the network buffers again - yes, it is a trade-off between CPU time and memory size. The best for big result sets is of course using unbuffered queries - for comparison : 3 Million rows with buffered take at least 180MB, with buffered you will stay at 3MB, and unbuffered will be just 7-8% slower.
* Hardwire function call instead of using callbacks. We don't actually needAndrey Hristov2009-06-166-25/+27
| | | | | | | | | callbacks, it was done for making 2 functions static, not to pollute the global functions space but that had its price of 8 bytes overheat per allocation, which is just too much. Also making the app member 32b instead of 64b, which should save additional 4 byte, to the total of 12 byte per allocation of a row buffer.
* Use Zend's allocator instead of libc's and also don't try to work onAndrey Hristov2009-06-161-4/+7
| | | | | zvals that are NULLs.
* Fix crash when tracing is enabled. Position after buffer was used alsoAndrey Hristov2009-06-124-49/+73
| | | | | | direct usage of MYSQLND_STRING pointer instead of the "s" property of the structure.
* Revert by adding an ifdefAndrey Hristov2009-06-111-0/+3
|
* - nuke unused varPierre Joye2009-06-111-1/+0
|
* - MF53: silent warning and make it less ambiguousPierre Joye2009-06-111-11/+11
|
* Use a better extension versionJohannes Schlüter2009-06-111-2/+2
|
* Protect the code when variable is NULL, which should never happen, butAndrey Hristov2009-06-111-4/+6
| | | | | anyway, you know about "never happens"
* Check the pointer before calling a function on it, or we will crash.Andrey Hristov2009-06-111-1/+1
| | | | | This is a very rare situation where the server is totally broken.
* MFB: Reference decrement in own function. Make a function which is notAndrey Hristov2009-06-112-7/+21
| | | | | called externally static, from PHPAPI.
* - fix TS buildPierre Joye2009-06-091-1/+1
|
* - wsPierre Joye2009-06-091-1/+1
|
* Merge with the branch, someone made changes in PHP5_3 and did not merge.Andrey Hristov2009-06-083-5/+10
| | | | | Also switch off the zval cache for now.
* Add support for mysql_stmt_store_result() from libmysql 6.0.8+ and 5.4.xAndrey Hristov2009-05-291-0/+2
|
* Fix for the failing mysql_stmt_execute() test. Data was cleaned afterAndrey Hristov2009-05-291-6/+6
| | | | | stmt_reset() but it should stay and be freed as later as next stmt_execute()
* Fix a very well hidden error because of not being careful with CPP.Andrey Hristov2009-05-291-18/+18
| | | | | I usually don't make this mistake :)
* Fix a valgrind warning as well as more trace log informationAndrey Hristov2009-05-283-1/+14
|
* Fix a problem with cursors, which did not happen with unbuffered PS forAndrey Hristov2009-05-284-23/+53
| | | | | | | | | some reason. Double free of the data, which led to valgrind warnigns. The fix actually optimizes the code in this cases because the old code used copy_ctor while the new one skips it because it is not needed. Transferring data ownership and nulling works best, for PS where we always copy the string from the result set, unlike the text protocol.
* Fix a bug with mysqlnd_fetch_field(_direct()). With mysqlnd the optimisedAndrey Hristov2009-05-283-3/+23
| | | | | | | | | | 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.
* wsAndrey Hristov2009-05-261-5/+3
|
* Fix a typo, utf8 is 3 byte max, for us, for nowAndrey Hristov2009-05-261-1/+2
| | | | | Add a another cset
* Fix #47535 Compilation failure in ps_fetch_from_1_to_8_bytes()Johannes Schlüter2009-04-201-0/+5
|
* - Sync with 5.3Felipe Pena2009-03-302-11/+12
|
* - Fix #47819 (Getting pdo_mysql.so: undefined symbol: mysqlnd_debug_init atJohannes Schlüter2009-03-302-2/+2
| | | | | startup)
* - Removed leftover UG(unicode) checksFelipe Pena2009-03-271-35/+32
|
* - Removed:Felipe Pena2009-03-278-113/+85
| | | | | | | | - UG(unicode) checks - Changed: - ZEND_STR_TYPE -> IS_UNICODE - convert_to_text -> convert_to_unicode
* - mark mysqlnd's threading (which can be used for background pre-fetching)Johannes Schlüter2009-03-171-1/+1
| | | | | experimental
* Fix the build, because the macro's name has changedAndrey Hristov2009-03-171-4/+5
|
* Add the charsets available from 6.0 as a structure, to be used laterAndrey Hristov2009-02-201-0/+159
|
* - Improve mysqlnd's internal method registrationJohannes Schlüter2009-02-165-26/+71
|
* - Export mysql_refresh to mysqli (mysqli_refresh(), $mysqli->refresh())Johannes Schlüter2009-01-222-0/+20
|
* Bump copyright year, 3 of 3.Sebastian Bergmann2008-12-3128-28/+28
|
* No infinite loop in case the connection brokeJohannes Schlüter2008-11-281-1/+0
|
* - declaration first (fix build win)Pierre Joye2008-11-221-2/+3
|
* mysqlnd fixes for Windows :Andrey Hristov2008-11-206-14/+14
| | | | | | - less warnings - PHPAPI for mysqlnd_poll
* Fix a small bug that mysqlnd::next_result didn't care about an error in aAndrey Hristov2008-11-191-3/+11
| | | | | | multi-statement. In an inner layer the error has been already set, thus it needed better massage on the top level.
* Fix windows build - pure C compilerAndrey Hristov2008-11-181-1/+2
|