diff options
author | Thomas Müller <thomas.mueller@tmit.eu> | 2015-01-19 17:20:49 +0100 |
---|---|---|
committer | Thomas Müller <thomas.mueller@tmit.eu> | 2015-01-19 17:20:49 +0100 |
commit | baefefbbc81e76671943d377c7e49017f60d2432 (patch) | |
tree | fa743e27edaebd4384f0932832b35b4949471865 | |
parent | 4894a2c458f49b2c6b49b18cc0055ae087bff1b2 (diff) | |
download | nextcloud-server-baefefbbc81e76671943d377c7e49017f60d2432.tar.gz nextcloud-server-baefefbbc81e76671943d377c7e49017f60d2432.zip |
set MySQL autocommit on connection setup
-rw-r--r-- | lib/private/db/connectionfactory.php | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/lib/private/db/connectionfactory.php b/lib/private/db/connectionfactory.php index 9c75baf887d..44b598dcda0 100644 --- a/lib/private/db/connectionfactory.php +++ b/lib/private/db/connectionfactory.php @@ -7,6 +7,9 @@ */ namespace OC\DB; +use Doctrine\DBAL\Event\Listeners\OracleSessionInit; +use Doctrine\DBAL\Event\Listeners\SQLSessionInit; +use Doctrine\DBAL\Event\Listeners\MysqlSessionInit; /** * Takes care of creating and configuring Doctrine connections. @@ -84,10 +87,12 @@ class ConnectionFactory { case 'mysql': // Send "SET NAMES utf8". Only required on PHP 5.3 below 5.3.6. // See http://stackoverflow.com/questions/4361459/php-pdo-charset-set-names#4361485 - $eventManager->addEventSubscriber(new \Doctrine\DBAL\Event\Listeners\MysqlSessionInit); + $eventManager->addEventSubscriber(new MysqlSessionInit); + $eventManager->addEventSubscriber( + new SQLSessionInit("SET SESSION AUTOCOMMIT=1")); break; case 'oci': - $eventManager->addEventSubscriber(new \Doctrine\DBAL\Event\Listeners\OracleSessionInit); + $eventManager->addEventSubscriber(new OracleSessionInit); break; case 'sqlite3': $journalMode = $additionalConnectionParams['sqlite.journal_mode']; @@ -136,8 +141,8 @@ class ConnectionFactory { $name = $config->getValue('dbname', 'owncloud'); if ($this->normalizeType($type) === 'sqlite3') { - $datadir = $config->getValue("datadirectory", \OC::$SERVERROOT . '/data'); - $connectionParams['path'] = $datadir . '/' . $name . '.db'; + $dataDir = $config->getValue("datadirectory", \OC::$SERVERROOT . '/data'); + $connectionParams['path'] = $dataDir . '/' . $name . '.db'; } else { $host = $config->getValue('dbhost', ''); if (strpos($host, ':')) { |