diff options
author | Robin Appelman <robin@icewind.nl> | 2021-02-09 16:12:15 +0100 |
---|---|---|
committer | Robin Appelman <robin@icewind.nl> | 2021-02-09 16:40:09 +0100 |
commit | 111fa47f104522d88bab6619dcf1f761dd814b4b (patch) | |
tree | bda69bcd4150da85ffe71430c5d14824f1516eb4 /lib/private | |
parent | f797a943936fc1bee9ccc0a893bd41a90416436d (diff) | |
download | nextcloud-server-111fa47f104522d88bab6619dcf1f761dd814b4b.tar.gz nextcloud-server-111fa47f104522d88bab6619dcf1f761dd814b4b.zip |
remove ReconnectWrapper
dbal now handles it's own reconnections: https://github.com/doctrine/dbal/blob/3.0.x/UPGRADE.md#the-pingableconnection-interface-is-removed
Signed-off-by: Robin Appelman <robin@icewind.nl>
Diffstat (limited to 'lib/private')
-rw-r--r-- | lib/private/DB/Connection.php | 5 | ||||
-rw-r--r-- | lib/private/DB/ReconnectWrapper.php | 55 |
2 files changed, 4 insertions, 56 deletions
diff --git a/lib/private/DB/Connection.php b/lib/private/DB/Connection.php index cb7af4d51e2..4d9433122ce 100644 --- a/lib/private/DB/Connection.php +++ b/lib/private/DB/Connection.php @@ -53,7 +53,7 @@ use OCP\DB\QueryBuilder\IQueryBuilder; use OCP\ILogger; use OCP\PreConditionNotMetException; -class Connection extends ReconnectWrapper { +class Connection extends \Doctrine\DBAL\Connection { /** @var string */ protected $tablePrefix; @@ -172,6 +172,9 @@ class Connection extends ReconnectWrapper { if (!isset($params['tablePrefix'])) { throw new \Exception('tablePrefix not set'); } + /** + * @psalm-suppress InternalMethod + */ parent::__construct($params, $driver, $config, $eventManager); $this->adapter = new $params['adapter']($this); $this->tablePrefix = $params['tablePrefix']; diff --git a/lib/private/DB/ReconnectWrapper.php b/lib/private/DB/ReconnectWrapper.php deleted file mode 100644 index a0170152862..00000000000 --- a/lib/private/DB/ReconnectWrapper.php +++ /dev/null @@ -1,55 +0,0 @@ -<?php -/** - * @copyright Copyright (c) 2018 Robin Appelman <robin@icewind.nl> - * - * @author Christoph Wurst <christoph@winzerhof-wurst.at> - * @author Robin Appelman <robin@icewind.nl> - * - * @license GNU AGPL version 3 or any later version - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - * - */ - -namespace OC\DB; - -use Doctrine\Common\EventManager; -use Doctrine\DBAL\Configuration; -use Doctrine\DBAL\Driver; - -class ReconnectWrapper extends \Doctrine\DBAL\Connection { - public const CHECK_CONNECTION_INTERVAL = 60; - - private $lastConnectionCheck = null; - - public function __construct(array $params, Driver $driver, Configuration $config = null, EventManager $eventManager = null) { - parent::__construct($params, $driver, $config, $eventManager); - $this->lastConnectionCheck = time(); - } - - public function connect() { - $now = time(); - $checkTime = $now - self::CHECK_CONNECTION_INTERVAL; - - if ($this->lastConnectionCheck > $checkTime || $this->isTransactionActive()) { - return parent::connect(); - } - - $this->lastConnectionCheck = $now; - if (!$this->isConnected()) { - $this->close(); - } - return parent::connect(); - } -} |