| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|\ \ \
| |/ /
| | |
| | |
| | | |
* PHP-8.0:
Don't assume libmysqlclient library name
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
By simply dropping the additional checks, in line with the general
guideline of trusting the output of config scripts (this should
be migrated to pkg-config though).
Also drop the code for manually adding -z if mysql_config does not
-- that's not our problem.
|
|\ \ \
| |/ /
| | |
| | |
| | | |
* PHP-8.0:
Fix tests for MariaDB
|
| | |
| | |
| | |
| | | |
Closes GH-6390.
|
|\ \ \
| |/ /
| | |
| | |
| | | |
* PHP-8.0:
Handle errors during PDO row fetch
|
| |\ \
| | |/
| | |
| | |
| | | |
* PHP-7.4:
Handle errors during PDO row fetch
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The EOF flag also gets set on error, so we always end up ignoring
errors here.
However, we should only check errors for unbuffered results. For
buffered results, this function is guaranteed not to error, and
querying the errno may return an unrelated error.
|
|\ \ \
| |/ /
| | |
| | |
| | | |
* PHP-8.0:
Fixed bug #66528
|
| |\ \
| | |/
| | |
| | |
| | | |
* PHP-7.4:
Fixed bug #66528
|
| | |
| | |
| | |
| | | |
Report errors in commit, rollback and autocommit handlers.
|
|\ \ \
| |/ /
| | |
| | |
| | | |
* PHP-8.0:
Fix bug #79375
|
| |\ \
| | |/
| | |
| | |
| | | |
* PHP-7.4:
Fix bug #79375
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Make sure deadlock errors are properly propagated and reports in
a number of places in mysqli and PDO MySQL.
This also fixes a memory and a segfault that can occur under these
conditions.
|
|\ \ \
| |/ /
| | |
| | |
| | | |
* PHP-8.0:
Fix inconsistency in PDO transaction state
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This addresses an issue introduced by #4996 and reported in
https://bugs.php.net/bug.php?id=80260.
Now that PDO::inTransaction() reports the real transaction state
of the connection, there may be a mismatch with PDOs internal
transaction state (in_tcx). This is compounded by the fact that
MySQL performs implicit commits for DDL queries.
This patch fixes the issue by making beginTransaction/commit/rollBack
work on the real transaction state provided by the driver as well
(or falling back to in_tcx if the driver does not support it).
This does mean that writing something like
$pdo->beginTransaction();
$pdo->exec('CREATE DATABASE ...');
$pdo->rollBack(); // <- illegal
will now result in an error, because the CREATE DATABASE already
committed the transaction. I believe this behavior is both correct
and desired -- otherwise, there is no indication that the code did
not behave correctly and the rollBack() was effectively ignored.
However, this is also a BC break.
Closes GH-6355.
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| | |
Add a get_gc method that can be implemented by drivers, which can
be used to add additional zvals to the GC buffer.
Implement GC support for PDO SQLite callbacks in particular.
Closes GH-6262.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Followup to previous changes:
* Use camel case, as PDO uses a camel case OO API.
* Use &$var instead of &$bind_var or &$param.
* Use $column instead of $index. We have cases (both inside PDO
and in other DB exts) where columns can also be represented as
strings, so $column is the safer generic name.
Closes GH-6272.
|
| |
| |
| |
| | |
Closes GH-6220
|
| |
| |
| |
| | |
Also make internal function return type more accurate to inform usage
|
| |
| |
| |
| |
| |
| |
| | |
This includes TypeErrors, ValueErrors, Error for uninitialized objects
and invalid user classes/callable instanciation
Closes GH-6212
|
| |
| |
| |
| |
| |
| | |
This test is marked as XFAIL so it doesn't get looked at.
It checks that the method is called without arguments which is a ZPP concern
|
| |
| |
| |
| | |
Closes GH-4996.
|
| | |
|
|\ \
| |/
| |
| |
| | |
* PHP-7.4:
Support NO_BACKSLASH_ESCAPES with newer libmysqlclient
|
| |\
| | |
| | |
| | |
| | | |
* PHP-7.3:
Support NO_BACKSLASH_ESCAPES with newer libmysqlclient
|
| | |
| | |
| | |
| | | |
Requires the use of mysql_real_escape_string_quote().
|
| | |
| | |
| | |
| | |
| | | |
This should fix most of the remaining issues with tabs and spaces
being mixed in tests.
|
| | | |
|
| | |
| | |
| | |
| | | |
At least for version 8.0 this is warning free now.
|
|\ \ \
| |/ /
| | |
| | |
| | |
| | |
| | | |
* PHP-7.4:
pdo_mysql/mysqli (native) libmysqlclient_r no-longer used
mysql: native mysql-8.0 uses _Bool
mysqli: use native api
|
| |\ \
| | |/
| | |
| | |
| | |
| | |
| | | |
* PHP-7.3:
pdo_mysql/mysqli (native) libmysqlclient_r no-longer used
mysql: native mysql-8.0 uses _Bool
mysqli: use native api
|
| | |
| | |
| | |
| | |
| | |
| | | |
The mysqlclient_r library exists in mysql-5.6 for compatibility only.
Later versions have it removed.
|
| | |
| | |
| | |
| | | |
MySQL-8.0 removes option MYSQLI_OPT_SSL_VERIFY_SERVER_CERT
|
| |\ \
| | |/
| | |
| | |
| | | |
* PHP-7.3:
Fix #80027 Terrible performance using $query->fetch on queries with many bind parameters
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
bind parameters
Added new flags that allow skipping param_evt(s) that are not used by drivers,
in a backwards and forward compatible manner. Updated the pgsql, mysql, sqlite
and oci drivers to properly use the new flags. I've left out pdo_dblib, which
doesn't have a param_hook, and pdo_firebird, which seems to be using
PARAM_EVT_NORMALIZE in a wrong context (param type vs event type).
|
| | |
| | |
| | |
| | | |
Closes GH-6120
|
| | |
| | |
| | |
| | | |
Closes GH-5999
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
bind parameters
Added new flags that allow skipping param_evt(s) that are not used by drivers,
in a backwards and forward compatible manner. Updated the pgsql, mysql, sqlite
and oci drivers to properly use the new flags. I've left out pdo_dblib, which
doesn't have a param_hook, and pdo_firebird, which seems to be using
PARAM_EVT_NORMALIZE in a wrong context (param type vs event type).
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The current signature is incorrect, because the $ctor_args parameter
is not required to be an array (it can at least also be null, and
isn't enforced by an exception anyway).
I'm going for the variadic signature here, because we already use
the same variadic signature in PDO::query() and
PDOStatement::setFetchMode(), all of them accepting essentially the
same arguments.
|
| | |
| | |
| | |
| | | |
Instead of implementing custom logic.
|
| | |
| | |
| | |
| | | |
Closes GH-5955
|
|\ \ \
| |/ /
| | |
| | |
| | | |
* PHP-7.4:
Fix #64705 errorInfo property of PDOException is null when PDO::__construct() fails
|
| |\ \
| | |/
| | |
| | |
| | | |
* PHP-7.3:
Fix #64705 errorInfo property of PDOException is null when PDO::__construct() fails
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
PDO::__construct() fails
PDO driver constructors are throwing PdoException without setting
errorInfo, so create a new reusable function that throws exceptions
for PDO and will also set the errorInfo. Use this function in
pdo_mysql, pdo_sqlite, and pdo_pgsql.
|
| | |
| | |
| | |
| | | |
Closes GH-5958
|
| | |
| | |
| | |
| | | |
Closes GH-5917
|
| | | |
|
| | |
| | |
| | |
| | | |
Closes GH-5590
|
| | |
| | |
| | |
| | | |
Closes GH-5758
|
| | | |
|