Merge pull request #9083 from annando/persistent

Configuration if the database is opened with persistent connections
This commit is contained in:
Tobias Diekershoff 2020-08-27 13:11:45 +02:00 committed by GitHub
commit e4207408ee
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 10 additions and 1 deletions

View file

@ -134,6 +134,8 @@ class Database
return false;
}
$persistent = (bool)$this->configCache->get('database', 'persistent');
$this->emulate_prepares = (bool)$this->configCache->get('database', 'emulate_prepares');
$this->pdo_emulate_prepares = (bool)$this->configCache->get('database', 'pdo_emulate_prepares');
@ -150,7 +152,7 @@ class Database
}
try {
$this->connection = @new PDO($connect, $user, $pass);
$this->connection = @new PDO($connect, $user, $pass, [PDO::ATTR_PERSISTENT => $persistent]);
$this->connection->setAttribute(PDO::ATTR_EMULATE_PREPARES, $this->pdo_emulate_prepares);
$this->connected = true;
} catch (PDOException $e) {

View file

@ -62,6 +62,13 @@ return [
// disable_pdo (Boolean)
// PDO is used by default (if available). Otherwise MySQLi will be used.
'disable_pdo' => false,
// persistent (Boolean)
// This controls if the system should use persistent connections or not.
// Persistent connections increase the performance.
// On the other hand the number of open connections are higher,
// this will most likely increase the system load.
'persistent' => false,
],
'config' => [
// admin_email (Comma-separated list)