rdbms: suppress warnings during DatabaseMysqli::doQuery()
authorAaron Schulz <aschulz@wikimedia.org>
Thu, 5 Sep 2019 18:22:31 +0000 (11:22 -0700)
committerAaron Schulz <aschulz@wikimedia.org>
Thu, 5 Sep 2019 18:22:34 +0000 (11:22 -0700)
There is already logging and error handling via SPI and exceptions.
Having warnings just makes redundant log entries, some of which are
for minor things like recoverable disconnections.

Bug: T228092
Change-Id: I582b5e431c80cebeab177bacfb6445f8588e8cdb

includes/libs/rdbms/database/DatabaseMysqli.php

index 106772b..b9a1af6 100644 (file)
@@ -26,6 +26,7 @@ use mysqli;
 use mysqli_result;
 use IP;
 use stdClass;
+use Wikimedia\AtEase\AtEase;
 
 /**
  * Database abstraction object for PHP extension mysqli.
@@ -41,7 +42,11 @@ class DatabaseMysqli extends DatabaseMysqlBase {
         * @return mysqli_result|bool
         */
        protected function doQuery( $sql ) {
-               return $this->getBindingHandle()->query( $sql );
+               AtEase::suppressWarnings();
+               $res = $this->getBindingHandle()->query( $sql );
+               AtEase::restoreWarnings();
+
+               return $res;
        }
 
        /**