summaryrefslogtreecommitdiffstats
path: root/lib/private
diff options
context:
space:
mode:
authorVincent Petry <pvince81@owncloud.com>2014-06-11 17:02:34 +0200
committerThomas Müller <thomas.mueller@tmit.eu>2014-07-14 16:20:09 +0200
commit10a29556b0eca1303fd48caccbc464e1b6231d05 (patch)
tree9ae5f6cbc6addd343c48124ab0b57551a66360f2 /lib/private
parent05ba9b3c64b5c4a109773fe776fd6a2ebd34502a (diff)
downloadnextcloud-server-10a29556b0eca1303fd48caccbc464e1b6231d05.tar.gz
nextcloud-server-10a29556b0eca1303fd48caccbc464e1b6231d05.zip
- Added test to trigger index id error
- re-enable encryption migration tests - sqlite requires reconnect after schema changes
Diffstat (limited to 'lib/private')
-rw-r--r--lib/private/db.php10
-rw-r--r--lib/private/db/mdb2schemamanager.php6
2 files changed, 14 insertions, 2 deletions
diff --git a/lib/private/db.php b/lib/private/db.php
index 6aaf31a30cd..221a369cad2 100644
--- a/lib/private/db.php
+++ b/lib/private/db.php
@@ -106,6 +106,16 @@ class OC_DB {
}
/**
+ * The existing database connection is closed and connected again
+ */
+ public static function reconnect() {
+ if(self::$connection) {
+ self::$connection->close();
+ self::$connection->connect();
+ }
+ }
+
+ /**
* @return \OC\DB\Connection
*/
static public function getConnection() {
diff --git a/lib/private/db/mdb2schemamanager.php b/lib/private/db/mdb2schemamanager.php
index a6d9e30cf80..d3e379c9417 100644
--- a/lib/private/db/mdb2schemamanager.php
+++ b/lib/private/db/mdb2schemamanager.php
@@ -24,8 +24,6 @@ class MDB2SchemaManager {
*/
public function __construct($conn) {
$this->conn = $conn;
- $this->conn->close();
- $this->conn->connect();
}
/**
@@ -150,6 +148,10 @@ class MDB2SchemaManager {
$this->conn->query($sql);
}
$this->conn->commit();
+
+ if ($this->conn->getDatabasePlatform() instanceof SqlitePlatform) {
+ \OC_DB::reconnect();
+ }
return true;
}
}