#
a8c92700 |
| 06-Mar-2024 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Skip validity and length calls when the byte cannot be part of a multibyte sequence Almost every character set can be given a number N such that a multibyte sequence starts with a byte h
Skip validity and length calls when the byte cannot be part of a multibyte sequence Almost every character set can be given a number N such that a multibyte sequence starts with a byte higher than that number N. This allows us to skip a lot of work. To ensure the correctness of this, a sanity check is implemented that exhaustively tries every 4-byte sequence for every character set and checks for consistency issues. This finally gives: Time (mean ± σ): 120.2 ms ± 1.2 ms [User: 116.9 ms, System: 2.8 ms] Range (min … max): 118.0 ms … 122.9 ms 24 runs
show more ...
|
#
0e5128c2 |
| 17-Jan-2023 |
Kamil Tekiela |
Remove mysqlnd_shutdown() (#10355)
|
Revision tags: php-8.2.0RC1, php-8.1.10, php-8.0.23, php-8.0.23RC1, php-8.1.10RC1, php-8.2.0beta3, php-8.2.0beta2, php-8.1.9, php-8.0.22, php-8.1.9RC1, php-8.2.0beta1, php-8.0.22RC1, php-8.0.21, php-8.1.8, php-8.2.0alpha3, php-8.1.8RC1, php-8.2.0alpha2, php-8.0.21RC1, php-8.0.20, php-8.1.7, php-8.2.0alpha1, php-7.4.30, php-8.1.7RC1, php-8.0.20RC1, php-8.1.6, php-8.0.19, php-8.1.6RC1, php-8.0.19RC1, php-8.0.18, php-8.1.5, php-7.4.29, php-8.1.5RC1, php-8.0.18RC1, php-8.1.4, php-8.0.17, php-8.1.4RC1, php-8.0.17RC1, php-8.1.3, php-8.0.16, php-7.4.28, php-8.1.3RC1, php-8.0.16RC1, php-8.1.2, php-8.0.15, php-8.1.2RC1, php-8.0.15RC1, php-8.0.14, php-8.1.1, php-7.4.27, php-8.1.1RC1, php-8.0.14RC1, php-7.4.27RC1, php-8.1.0, php-8.0.13, php-7.4.26, php-7.3.33, php-8.1.0RC6, php-7.4.26RC1, php-8.0.13RC1, php-8.1.0RC5, php-7.3.32 |
|
#
885dca37 |
| 21-Oct-2021 |
Kamil Tekiela |
Remove mysqlnd_unbuffered_skip_result and voidify skip_result |
Revision tags: php-7.4.25, php-8.0.12, php-8.1.0RC4, php-8.0.12RC1, php-7.4.25RC1, php-8.1.0RC3, php-8.0.11, php-7.4.24, php-7.3.31, php-8.1.0RC2, php-7.4.24RC1, php-8.0.11RC1, php-8.1.0RC1, php-7.4.23, php-8.0.10, php-7.3.30, php-8.1.0beta3 |
|
#
277e169e |
| 12-Aug-2021 |
Nikita Popov |
Remove mysqlnd local_tx functionality These are not used in-tree and cause unnecessary complexity and untestable failure modes. |
Revision tags: php-8.0.10RC1, php-7.4.23RC1, php-8.1.0beta2, php-8.0.9 |
|
#
fb85731c |
| 28-Jul-2021 |
Kamil Tekiela |
Remove get_parameter_metadata |
#
254d1641 |
| 28-Jul-2021 |
Kamil Tekiela |
Remove mysqlnd_field_type_name |
Revision tags: php-7.4.22, php-8.1.0beta1, php-7.4.22RC1, php-8.0.9RC1, php-8.1.0alpha3, php-7.4.21, php-7.3.29, php-8.0.8, php-8.1.0alpha2, php-7.4.21RC1, php-8.0.8RC1, php-8.1.0alpha1, php-8.0.7, php-7.4.20 |
|
#
b0961f2d |
| 26-May-2021 |
Nikita Popov |
Remove uses of TRUE/FALSE in mysqli/pdo_mysql Replace with standard uses of true/false. |
Revision tags: php-8.0.7RC1, php-7.4.20RC1 |
|
#
01b3fc03 |
| 06-May-2021 |
KsaR |
Update http->https in license (#6945) 1. Update: http://www.php.net/license/3_01.txt to https, as there is anyway server header "Location:" to https. 2. Update few license 3.0 to 3.01 as
Update http->https in license (#6945) 1. Update: http://www.php.net/license/3_01.txt to https, as there is anyway server header "Location:" to https. 2. Update few license 3.0 to 3.01 as 3.0 states "php 5.1.1, 4.1.1, and earlier". 3. In some license comments is "at through the world-wide-web" while most is without "at", so deleted. 4. fixed indentation in some files before |
show more ...
|
Revision tags: php-8.0.6, php-7.4.19, php-7.4.18, php-7.3.28, php-8.0.5, php-8.0.5RC1, php-7.4.18RC1, php-8.0.4RC1, php-7.4.17RC1, php-8.0.3, php-7.4.16, php-8.0.3RC1, php-7.4.16RC1, php-8.0.2, php-7.4.15, php-7.3.27, php-8.0.2RC1, php-7.4.15RC2, php-7.4.15RC1 |
|
#
3e01f5af |
| 15-Jan-2021 |
Nikita Popov |
Replace zend_bool uses with bool We're starting to see a mix between uses of zend_bool and bool. Replace all usages with the standard bool type everywhere. Of course, zend_bool
Replace zend_bool uses with bool We're starting to see a mix between uses of zend_bool and bool. Replace all usages with the standard bool type everywhere. Of course, zend_bool is retained as an alias.
show more ...
|
Revision tags: php-8.0.1, php-7.4.14, php-7.3.26 |
|
#
037512cf |
| 18-Dec-2020 |
Nikita Popov |
Move fetch_all implementation out of mysqlnd There doesn't seem to be any compelling reason to implement this in mysqlnd rather than mysqli. It's just a loop over fetch_into. Th
Move fetch_all implementation out of mysqlnd There doesn't seem to be any compelling reason to implement this in mysqlnd rather than mysqli. It's just a loop over fetch_into. This makes the function available under libmysqlclient as well, and thus fixes bug #79372.
show more ...
|
#
108d1e9a |
| 17-Dec-2020 |
Nikita Popov |
MySQLnd: Remove mnd_malloc/free etc. There were only two uses of non-zmm allocation functions left, which really did not need to use the system allocator. Remove them, and remove the
MySQLnd: Remove mnd_malloc/free etc. There were only two uses of non-zmm allocation functions left, which really did not need to use the system allocator. Remove them, and remove the system allocator based APIs.
show more ...
|
#
c18b1aea |
| 15-Dec-2020 |
Nikita Popov |
PDO MySQL: Use native types for results Previously, PDO MySQL only fetched data as native int/float if native prepared statements were used. This patch updates PDO to have the same b
PDO MySQL: Use native types for results Previously, PDO MySQL only fetched data as native int/float if native prepared statements were used. This patch updates PDO to have the same behavior for emulated prepared statements, and thus removes the largest remaining discrepancy between these two modes. Note that PDO already has a ATTR_STRINGIFY_FETCHES option to control whether native types are desired or not. The previous output can be restored by enabling this option. Most of the tests make use of that option, because this allows the tests to work under libmysqlclient as well, which currently always returns string results (independently of whether native or emulated PS are used).
show more ...
|
Revision tags: php-7.4.14RC1, php-8.0.1RC1, php-7.3.26RC1 |
|
#
33e90491 |
| 14-Dec-2020 |
Nikita Popov |
MySQLnd: Clean up and optimize mysqlnd result set handling This is a larger overhaul of the mysqlnd result set infrastructure: * Drop support for two different types of buffered re
MySQLnd: Clean up and optimize mysqlnd result set handling This is a larger overhaul of the mysqlnd result set infrastructure: * Drop support for two different types of buffered results sets ("c" and "zval"). Possibly these made sense at some earlier time, but now (with minor adjustments) one option is strictly worse than the other. Buffered result sets already buffer the full row packets, from which zvals can be decoded. The "zval" style additionally also buffered the decoded zvals. As result sets, even buffered ones, are generally only traversed once, this just ends up wasting memory. Now, a potentially useful variation here would be to buffer the decoded zvals instead of the row packets, but that's not what the code was doing. * To make it really strictly better, pre-allocate the zval row buffer and reuse it for all rows. Previously the "c" style always allocated a new buffer for each row. * The fetch_row API now provides a populated zval[]. The task of populating an array is deferred to fetch_row_into, which also avoids duplicating this code in multiple places. The fetch_row_c API is also implemented on top of fetch_row now, rather than duplicating large parts of the code. * The row fetching code for prepared statements and normal result sets has been mostly merged. These already used the same infrastructure, but prepared statements used separate row fetching functions that were nearly the same as the normal ones. This requires passing the stmt into the result set, rather than just a flag. The only part that remains separate is reading of unbuffered results in the presence of PS cursors.
show more ...
|
#
362c2924 |
| 15-Dec-2020 |
Nikita Popov |
Remove mysqlnd_extension enum ext/mysql is no longer supported, drop handling for it from mysqlnd. |
#
be4f73f3 |
| 15-Dec-2020 |
Nikita Popov |
MySQLnd: Remove unused fetch_field_data method This method is not used, and is implemented in a very dubious way. |
#
141eb346 |
| 14-Dec-2020 |
Nikita Popov |
Remove MYSQLND_STRING_TO_INT_CONVERSION define This has been unconditionally enabled for a long time already (the actual conversion is behind an additional runtime flag). |
#
86e317ad |
| 14-Dec-2020 |
Nikita Popov |
MySQLnd: Remove fail thresholds from infallible allocators emalloc() etc are infallibe by design. Having a failure threshold for them is a violation of the API contract. |
Revision tags: php-8.0.0, php-7.3.25, php-7.4.13, php-8.0.0RC5, php-7.4.13RC1, php-8.0.0RC4, php-7.3.25RC1, php-7.4.12, php-8.0.0RC3, php-7.3.24, php-8.0.0RC2, php-7.4.12RC1, php-7.3.24RC1, php-7.2.34, php-8.0.0rc1, php-7.4.11, php-7.3.23, php-8.0.0beta4, php-7.4.11RC1, php-7.3.23RC1, php-8.0.0beta3, php-7.4.10, php-7.3.22, php-8.0.0beta2, php-7.3.22RC1, php-7.4.10RC1, php-8.0.0beta1, php-7.4.9, php-7.2.33, php-7.3.21, php-8.0.0alpha3, php-7.4.9RC1, php-7.3.21RC1, php-7.4.8, php-7.2.32, php-8.0.0alpha2, php-7.3.20, php-8.0.0alpha1, php-7.4.8RC1, php-7.3.20RC1, php-7.4.7, php-7.3.19 |
|
#
1b85e749 |
| 06-Jun-2020 |
twosee |
Fix warning of strict-prototypes Closes GH-5673. |
#
4984bd10 |
| 04-Jun-2020 |
Nikita Popov |
Remove MYSQLND_COMPRESSION_WANTED define Instead directly define MYSQLND_COMPRESSION_ENABLED. This also matches what config.w32 does. |
#
fc458eee |
| 04-Jun-2020 |
Nikita Popov |
Merge branch 'PHP-7.4' * PHP-7.4: mysqlnd: Remove unnecessary check for HAVE_ZLIB
|
#
a230717f |
| 03-Jun-2020 |
talyz |
mysqlnd: Remove unnecessary check for HAVE_ZLIB If MYSQLND_COMPRESSION_WANTED is set, we already guarantee that zlib is linked, but don't necessarily set HAVE_ZLIB. Closes GH-56
mysqlnd: Remove unnecessary check for HAVE_ZLIB If MYSQLND_COMPRESSION_WANTED is set, we already guarantee that zlib is linked, but don't necessarily set HAVE_ZLIB. Closes GH-5658.
show more ...
|
Revision tags: php-7.4.7RC1, php-7.3.19RC1 |
|
#
13303595 |
| 17-May-2020 |
George Peter Banyard |
Fix [-Wundef] warning in MySQLnd extension |
Revision tags: php-7.4.6, php-7.2.31, php-7.4.6RC1, php-7.3.18RC1, php-7.2.30, php-7.4.5, php-7.3.17, php-7.4.5RC1, php-7.3.17RC1, php-7.3.18, php-7.4.4, php-7.2.29, php-7.3.16, php-7.4.4RC1, php-7.3.16RC1, php-7.4.3, php-7.2.28, php-7.3.15RC1, php-7.4.3RC1, php-7.3.15, php-7.2.27, php-7.4.2, php-7.3.14, php-7.3.14RC1, php-7.4.2RC1, php-7.4.1, php-7.2.26, php-7.3.13, php-7.4.1RC1, php-7.3.13RC1, php-7.2.26RC1, php-7.4.0, php-7.2.25, php-7.3.12, php-7.4.0RC6, php-7.3.12RC1, php-7.2.25RC1, php-7.4.0RC5, php-7.1.33, php-7.2.24, php-7.3.11, php-7.4.0RC4, php-7.3.11RC1, php-7.2.24RC1, php-7.4.0RC3 |
|
#
5d6e923d |
| 24-Sep-2019 |
Gabriel Caruso |
Remove mention of PHP major version in Copyright headers Closes GH-4732. |
Revision tags: php-7.2.23, php-7.3.10, php-7.4.0RC2, php-7.2.23RC1, php-7.3.10RC1, php-7.4.0RC1, php-7.1.32, php-7.2.22, php-7.3.9, php-7.4.0beta4, php-7.2.22RC1, php-7.3.9RC1, php-7.4.0beta2, php-7.1.31, php-7.2.21, php-7.3.8, php-7.4.0beta1, php-7.2.21RC1, php-7.3.8RC1 |
|
#
37043e07 |
| 15-Jul-2019 |
Christoph M. Becker |
Sync mysqlnd version with PHP version Since mysqlnd is solely developed in the php-src repository, it makes not much sense to have its own version number, particularly since nobody c
Sync mysqlnd version with PHP version Since mysqlnd is solely developed in the php-src repository, it makes not much sense to have its own version number, particularly since nobody cares to update it. Therefore we use PHP's version number, but stick with the "mysqlnd" prefix which can be important to distinguish the mysqli driver (libmysqlclient vs. mysqlnd).
show more ...
|
Revision tags: php-7.4.0alpha3, php-7.3.7, php-7.2.20, php-7.4.0alpha2, php-7.3.7RC3, php-7.3.7RC2, php-7.2.20RC2, php-7.4.0alpha1, php-7.3.7RC1, php-7.2.20RC1, php-7.2.19, php-7.3.6, php-7.1.30, php-7.2.19RC1, php-7.3.6RC1, php-7.1.29, php-7.2.18, php-7.3.5, php-7.2.18RC1, php-7.3.5RC1, php-7.2.17, php-7.3.4, php-7.1.28, php-7.3.4RC1, php-7.2.17RC1, php-7.1.27, php-7.3.3, php-7.2.16, php-7.3.3RC1, php-7.2.16RC1, php-7.2.15, php-7.3.2 |
|
#
c245898b |
| 03-Feb-2019 |
Peter Kokot |
Update and fix remaining year ranges (2019) This patch follows previous license year ranges updates. With new approach source code files now have simplified headers with license info
Update and fix remaining year ranges (2019) This patch follows previous license year ranges updates. With new approach source code files now have simplified headers with license information without year ranges.
show more ...
|