Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/server.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJulius Härtl <jus@bitgrid.net>2020-09-25 10:12:26 +0300
committerJulius Härtl <jus@bitgrid.net>2020-12-09 14:13:32 +0300
commit7518f67f33af5b90721c898367b0f3a569201a14 (patch)
tree7b561014cd8f830d50dcd4a9fa96d7d0848e3bf0 /lib/private/Repair/Owncloud/SaveAccountsTableData.php
parent96071d7b7723b5002fc111370868b9c181d394ad (diff)
Drop fk constraints on locks table
Signed-off-by: Julius Härtl <jus@bitgrid.net>
Diffstat (limited to 'lib/private/Repair/Owncloud/SaveAccountsTableData.php')
-rw-r--r--lib/private/Repair/Owncloud/SaveAccountsTableData.php9
1 files changed, 9 insertions, 0 deletions
diff --git a/lib/private/Repair/Owncloud/SaveAccountsTableData.php b/lib/private/Repair/Owncloud/SaveAccountsTableData.php
index 6ca46934d71..89c331a7d71 100644
--- a/lib/private/Repair/Owncloud/SaveAccountsTableData.php
+++ b/lib/private/Repair/Owncloud/SaveAccountsTableData.php
@@ -78,6 +78,15 @@ class SaveAccountsTableData implements IRepairStep {
$numUsers = $this->runStep($offset);
}
+ // oc_persistent_locks will be removed later on anyways so we can just drop and ignore any foreign key constraints here
+ $tableName = $this->config->getSystemValue('dbtableprefix', 'oc_') . 'persistent_locks';
+ $schema = $this->db->createSchema();
+ $table = $schema->getTable($tableName);
+ foreach ($table->getForeignKeys() as $foreignKey) {
+ $table->removeForeignKey($foreignKey->getName());
+ }
+ $this->db->migrateToSchema($schema);
+
// Remove the table
if ($this->hasForeignKeyOnPersistentLocks) {
$this->db->dropTable('persistent_locks');