X-Git-Url: https://git.heureux-cyclage.org/?p=lhc%2Fweb%2Fwiklou.git;a=blobdiff_plain;f=includes%2Flibs%2Frdbms%2Fdatabase%2FDatabaseMysqlBase.php;h=1e3fa845a33c394055800dfcbde3de88df2b39b6;hp=417b464b42aaf87a1c702c6f77dafc1e34633d19;hb=c05b8b7c473a7dd9c832f91366c45cb8a35c2df2;hpb=d72f24589b3eece35b334d080e6e609b048fc22f diff --git a/includes/libs/rdbms/database/DatabaseMysqlBase.php b/includes/libs/rdbms/database/DatabaseMysqlBase.php index 417b464b42..1e3fa845a3 100644 --- a/includes/libs/rdbms/database/DatabaseMysqlBase.php +++ b/includes/libs/rdbms/database/DatabaseMysqlBase.php @@ -24,7 +24,7 @@ namespace Wikimedia\Rdbms; use DateTime; use DateTimeZone; -use Wikimedia; +use Wikimedia\AtEase\AtEase; use InvalidArgumentException; use Exception; use RuntimeException; @@ -96,7 +96,7 @@ abstract class DatabaseMysqlBase extends Database { * - sslCiphers : array list of allowable ciphers [default: null] * @param array $params */ - function __construct( array $params ) { + public function __construct( array $params ) { $this->lagDetectionMethod = $params['lagDetectionMethod'] ?? 'Seconds_Behind_Master'; $this->lagDetectionOptions = $params['lagDetectionOptions'] ?? []; $this->useGTIDs = !empty( $params['useGTIDs' ] ); @@ -125,7 +125,7 @@ abstract class DatabaseMysqlBase extends Database { $this->close(); if ( $schema !== null ) { - throw new DBExpectedError( $this, __CLASS__ . ": domain schemas are not supported." ); + throw new DBExpectedError( $this, __CLASS__ . ": cannot use schemas ('$schema')" ); } $this->server = $server; @@ -194,7 +194,10 @@ abstract class DatabaseMysqlBase extends Database { protected function doSelectDomain( DatabaseDomain $domain ) { if ( $domain->getSchema() !== null ) { - throw new DBExpectedError( $this, __CLASS__ . ": domain schemas are not supported." ); + throw new DBExpectedError( + $this, + __CLASS__ . ": domain '{$domain->getId()}' has a schema component" + ); } $database = $domain->getDatabase(); @@ -241,9 +244,9 @@ abstract class DatabaseMysqlBase extends Database { * @throws DBUnexpectedError */ public function freeResult( $res ) { - Wikimedia\suppressWarnings(); + AtEase::suppressWarnings(); $ok = $this->mysqlFreeResult( ResultWrapper::unwrap( $res ) ); - Wikimedia\restoreWarnings(); + AtEase::restoreWarnings(); if ( !$ok ) { throw new DBUnexpectedError( $this, "Unable to free MySQL result" ); } @@ -263,9 +266,9 @@ abstract class DatabaseMysqlBase extends Database { * @throws DBUnexpectedError */ public function fetchObject( $res ) { - Wikimedia\suppressWarnings(); + AtEase::suppressWarnings(); $row = $this->mysqlFetchObject( ResultWrapper::unwrap( $res ) ); - Wikimedia\restoreWarnings(); + AtEase::restoreWarnings(); $errno = $this->lastErrno(); // Unfortunately, mysql_fetch_object does not reset the last errno. @@ -296,9 +299,9 @@ abstract class DatabaseMysqlBase extends Database { * @throws DBUnexpectedError */ public function fetchRow( $res ) { - Wikimedia\suppressWarnings(); + AtEase::suppressWarnings(); $row = $this->mysqlFetchArray( ResultWrapper::unwrap( $res ) ); - Wikimedia\restoreWarnings(); + AtEase::restoreWarnings(); $errno = $this->lastErrno(); // Unfortunately, mysql_fetch_array does not reset the last errno. @@ -332,9 +335,9 @@ abstract class DatabaseMysqlBase extends Database { if ( is_bool( $res ) ) { $n = 0; } else { - Wikimedia\suppressWarnings(); + AtEase::suppressWarnings(); $n = $this->mysqlNumRows( ResultWrapper::unwrap( $res ) ); - Wikimedia\restoreWarnings(); + AtEase::restoreWarnings(); } // Unfortunately, mysql_num_rows does not reset the last errno. @@ -430,12 +433,12 @@ abstract class DatabaseMysqlBase extends Database { public function lastError() { if ( $this->conn ) { # Even if it's non-zero, it can still be invalid - Wikimedia\suppressWarnings(); + AtEase::suppressWarnings(); $error = $this->mysqlError( $this->conn ); if ( !$error ) { $error = $this->mysqlError(); } - Wikimedia\restoreWarnings(); + AtEase::restoreWarnings(); } else { $error = $this->mysqlError(); }