summaryrefslogtreecommitdiff
path: root/ext/mysqli
Commit message (Collapse)AuthorAgeFilesLines
...
* | | Merge branch 'PHP-7.4'Nikita Popov2020-09-181-26/+24
|\ \ \ | |/ / | | | | | | | | | * PHP-7.4: Fix #78179: mysqli/mysqlnd transaction extensions
| * | Merge branch 'PHP-7.3' into PHP-7.4Nikita Popov2020-09-181-26/+24
| |\ \ | | |/ | | | | | | | | | * PHP-7.3: Fix #78179: mysqli/mysqlnd transaction extensions
| | * Fix #78179: mysqli/mysqlnd transaction extensionsDaniel Black2020-09-181-26/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | MariaDB versioning created a mess with regarding testing features based on version. We sidestep the problem here by assuming the extensions are present, and if a syntax error occurs with a SQL mode TRANS_START_READ_WRITE | TRANS_START_READ_ONLY enabled, then output the same warning as before.
* | | Merge branch 'PHP-7.4'Nikita Popov2020-09-181-3/+6
|\ \ \ | |/ / | | | | | | | | | * PHP-7.4: Support NO_BACKSLASH_ESCAPES with newer libmysqlclient
| * | Merge branch 'PHP-7.3' into PHP-7.4Nikita Popov2020-09-181-1/+6
| |\ \ | | |/ | | | | | | | | | * PHP-7.3: Support NO_BACKSLASH_ESCAPES with newer libmysqlclient
| | * Support NO_BACKSLASH_ESCAPES with newer libmysqlclientNikita Popov2020-09-181-1/+6
| | | | | | | | | | | | Requires the use of mysql_real_escape_string_quote().
* | | mysqli_set_charset now throws an mysqli_sql_exception when incorrect charset ↵Dharman2020-09-182-1/+18
| | | | | | | | | | | | | | | | | | is provided Closes GH-6142.
* | | Assert that all switch cases are coveredNikita Popov2020-09-181-0/+1
| | |
* | | Merge branch 'PHP-7.4'Nikita Popov2020-09-181-1/+1
|\ \ \ | |/ / | | | | | | | | | * PHP-7.4: Use MyISAM engine for new test
| * | Merge branch 'PHP-7.3' into PHP-7.4Nikita Popov2020-09-181-1/+1
| |\ \ | | |/ | | | | | | | | | * PHP-7.3: Use MyISAM engine for new test
| | * Use MyISAM engine for new testNikita Popov2020-09-181-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Travis on 7.3 is showing this error: > The size of BLOB/TEXT data inserted in one transaction is greater > than 10% of redo log size. Increase the redo log size using > innodb_log_file_size. Force MyISAM engine to avoid this.
* | | Run tidyNikita Popov2020-09-18256-776/+776
| | | | | | | | | | | | | | | This should fix most of the remaining issues with tabs and spaces being mixed in tests.
* | | Merge branch 'PHP-7.4'Nikita Popov2020-09-181-0/+57
|\ \ \ | |/ / | | | | | | | | | | | | * PHP-7.4: Fix bug #80107: Handling of large compressed packets Bug #80107 Add test for mysqli_query() fails for ~16 MB long query when compression is enabled
| * | Merge branch 'PHP-7.3' into PHP-7.4Nikita Popov2020-09-181-0/+57
| |\ \ | | |/ | | | | | | | | | | | | * PHP-7.3: Fix bug #80107: Handling of large compressed packets Bug #80107 Add test for mysqli_query() fails for ~16 MB long query when compression is enabled
| | * Fix bug #80107: Handling of large compressed packetsNikita Popov2020-09-181-8/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There's two layers of packet splitting going on. First, packets need to be split into having a payload of exactly 2^24-1 bytes or being the last packet. If the split packet has size between 2^24-5 and 2^24-1 bytes, the compressed packets also needs to be split, though the choice of split doesn't matter here. I'm splitting off the first 8192 bytes, as that's what I observe libmysqlclient to be doing.
| | * Bug #80107 Add test for mysqli_query() fails for ~16 MB long query when ↵Máté Kocsis2020-09-181-0/+51
| | | | | | | | | | | | compression is enabled
* | | Remove vestiges of embedded mysql from testsNikita Popov2020-09-17261-295/+2
| | |
* | | Merge branch 'PHP-7.4'Nikita Popov2020-09-172-2/+2
|\ \ \ | |/ / | | | | | | | | | * PHP-7.4: Fix mysqli_release_savepoint() on mysqlnd
| * | Merge branch 'PHP-7.3' into PHP-7.4Nikita Popov2020-09-172-2/+2
| |\ \ | | |/ | | | | | | | | | * PHP-7.3: Fix mysqli_release_savepoint() on mysqlnd
| | * Fix mysqli_release_savepoint() on mysqlndNikita Popov2020-09-172-2/+2
| | | | | | | | | | | | mysqli_release_savepoint() was not actually releasing a savepoint...
* | | Fix some tests for libmysqlNikita Popov2020-09-175-4/+12
| | |
* | | Remove checks for old libmysqlclient versions in testsNikita Popov2020-09-1711-194/+142
| | |
* | | Fix warnings when building against libmysqlclientNikita Popov2020-09-172-5/+4
| | | | | | | | | | | | At least for version 8.0 this is warning free now.
* | | Drop support for libmysqlclient < 5.5Nikita Popov2020-09-174-35/+5
| | | | | | | | | | | | | | | Given how little maintenance the libmysqlclient driver sees, be more aggressive in dropping old version support here.
* | | Add missing mysqlnd checks to stubsNikita Popov2020-09-172-26/+70
| | |
* | | Merge branch 'PHP-7.4'Nikita Popov2020-09-175-25/+12
|\ \ \ | |/ / | | | | | | | | | | | | | | | * PHP-7.4: pdo_mysql/mysqli (native) libmysqlclient_r no-longer used mysql: native mysql-8.0 uses _Bool mysqli: use native api
| * | Merge branch 'PHP-7.3' into PHP-7.4Nikita Popov2020-09-175-25/+12
| |\ \ | | |/ | | | | | | | | | | | | | | | * PHP-7.3: pdo_mysql/mysqli (native) libmysqlclient_r no-longer used mysql: native mysql-8.0 uses _Bool mysqli: use native api
| | * pdo_mysql/mysqli (native) libmysqlclient_r no-longer usedDaniel Black2020-09-171-3/+0
| | | | | | | | | | | | | | | | | | The mysqlclient_r library exists in mysql-5.6 for compatibility only. Later versions have it removed.
| | * mysql: native mysql-8.0 uses _BoolDaniel Black2020-09-172-3/+3
| | | | | | | | | | | | MySQL-8.0 removes option MYSQLI_OPT_SSL_VERIFY_SERVER_CERT
| | * mysqli: use native apiDaniel Black2020-09-173-17/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Tested with: * mysql-5.6.49-linux-glibc2.12-x86_64 * mysql-5.7.31-linux-glibc2.12-x86_64 * mysql-8.0.21-linux-glibc2.17-x86_64 * mariadb-10.5.6 configure --with-mysqli=/usr/local/$version/bin/mysql_config --with-pdo-mysql=/usr/local/$version MySQL-8.0 removed my_bool Some options where deprecated in mysql-8.0 MY_CHARSET_INFO used with exposed api mysql_get_character_set_info rather than internal structures.
* | | mysqli: Promote warning in field_seekDharman2020-09-173-11/+14
| | | | | | | | | | | | Aligning the behaviour of fetch_field and field_seek.
* | | Changed the wording of the error messageDharman2020-09-166-9/+9
| | | | | | | | | | | | | | | | | | "cannot be used in MYSQLI_USE_RESULT mode" sounds more correct than "cannot be used with MYSQLI_USE_RESULT" Closes GH-6137.
* | | Fix testMatteo Beccati2020-09-161-6/+12
| | | | | | | | | | | | follow-up to 7a95e94 for MySQL < 5.6
* | | Promote warnings to Error in MySQLi extensionGeorge Peter Banyard2020-09-1537-355/+541
| | | | | | | | | | | | Closes GH-5803
* | | Remove unintendedly committed testMáté Kocsis2020-09-151-33/+0
| | |
* | | Promote a few remaining errors in ext/standardMáté Kocsis2020-09-151-0/+33
| | | | | | | | | | | | Closes GH-6110
* | | Convert E_ERROR to Error exception in mysqli_result iteratorNikita Popov2020-09-141-1/+3
| | | | | | | | | | | | The same condition uses Error exceptions in lots of other classes.
* | | Improve error messages mentioning parameters instead of argumentsMáté Kocsis2020-09-094-4/+4
| | | | | | | | | | | | Closes GH-5999
* | | Merge branch 'PHP-7.4'Nikita Popov2020-08-251-4/+1
|\ \ \ | |/ / | | | | | | | | | * PHP-7.4: Remove bogus REGISTER_LONG_CONSTANT
| * | Merge branch 'PHP-7.3' into PHP-7.4Nikita Popov2020-08-251-4/+1
| |\ \ | | |/ | | | | | | | | | * PHP-7.3: Remove bogus REGISTER_LONG_CONSTANT
| | * Remove bogus REGISTER_LONG_CONSTANTNikita Popov2020-08-251-4/+1
| | | | | | | | | | | | This shouldn't be in this function, probably a copy/paste mistake...
* | | Improve test portabilityChristoph M. Becker2020-08-141-1/+1
| | | | | | | | | | | | | | | | | | We have to ensure that the attempted connection to the MySQL server fails, and do that by passing an unknown host instead of falling back to localhost.
* | | Fix newly introduced test for WindowsChristoph M. Becker2020-08-141-3/+1
| | | | | | | | | | | | | | | The warning message is rather different there, but since that is irrelevant for this test case, we just suppress the warning.
* | | Don't assert mysql->mysql is non-nullNikita Popov2020-08-142-1/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | There is an edge case in constructor behavior where we can end up with mysql->mysql being NULL (rather than mysql itself already being NULL). I think that ultimately that's a bug in the constructor code, and we should probably be destroying the outer structure on construction failure as well. However it's pretty hard to unravel with when considering all the construction permutations.
* | | Simplify mysqli_stmt_bind_param() implementationNikita Popov2020-08-141-44/+14
| | | | | | | | | | | | By using zpp.
* | | Use normal zpp in mysqli_result::__construct()Nikita Popov2020-08-141-13/+2
| | | | | | | | | | | | This method doesn't need any special handling...
* | | Remove dummy aliases for mysqli constructorsNikita Popov2020-08-144-28/+10
| | | | | | | | | | | | | | | These are only available as methods. Directly declare them as such instead of aliasing to functions that don't actually exist.
* | | Avoid fatal error on not found class in mysqli_fetch_object()Nikita Popov2020-08-133-19/+17
| | | | | | | | | | | | Instead use C zpp modifier and throw TypeError.
* | | Add many missing closing PHP tags to testsMáté Kocsis2020-08-096-0/+6
| | | | | | | | | | | | Closes GH-5958
* | | Drop '#if 0' in mysqlnd_debug() from the MySQLnd extensionGeorge Peter Banyard2020-08-071-0/+57
| | | | | | | | | | | | Closes GH-5587