aboutsummaryrefslogtreecommitdiffstats
path: root/apps/settings/lib/Controller/CheckSetupController.php
diff options
context:
space:
mode:
authorJoas Schilling <coding@schilljs.com>2020-11-10 09:34:57 +0100
committerJoas Schilling <coding@schilljs.com>2020-11-10 15:36:27 +0100
commitd5df033ede1f2b19b87c365b1f808130023edf17 (patch)
treed00503789c2e1188d59726e221dd9445e858f784 /apps/settings/lib/Controller/CheckSetupController.php
parent5b5aebbf66e7559aac73eb82b236b052b6a1ae3e (diff)
downloadnextcloud-server-d5df033ede1f2b19b87c365b1f808130023edf17.tar.gz
nextcloud-server-d5df033ede1f2b19b87c365b1f808130023edf17.zip
Create primary keys on all tables and add a command to create the afterwards
Signed-off-by: Joas Schilling <coding@schilljs.com>
Diffstat (limited to 'apps/settings/lib/Controller/CheckSetupController.php')
-rw-r--r--apps/settings/lib/Controller/CheckSetupController.php11
1 files changed, 11 insertions, 0 deletions
diff --git a/apps/settings/lib/Controller/CheckSetupController.php b/apps/settings/lib/Controller/CheckSetupController.php
index 0f9dd84febb..6984b0f5aea 100644
--- a/apps/settings/lib/Controller/CheckSetupController.php
+++ b/apps/settings/lib/Controller/CheckSetupController.php
@@ -49,6 +49,7 @@ use OC\AppFramework\Http;
use OC\DB\Connection;
use OC\DB\MissingColumnInformation;
use OC\DB\MissingIndexInformation;
+use OC\DB\MissingPrimaryKeyInformation;
use OC\DB\SchemaWrapper;
use OC\IntegrityCheck\Checker;
use OC\Lock\NoopLockingProvider;
@@ -452,6 +453,15 @@ Raw output
return $indexInfo->getListOfMissingIndexes();
}
+ protected function hasMissingPrimaryKeys(): array {
+ $info = new MissingPrimaryKeyInformation();
+ // Dispatch event so apps can also hint for pending index updates if needed
+ $event = new GenericEvent($info);
+ $this->dispatcher->dispatch(IDBConnection::CHECK_MISSING_PRIMARY_KEYS_EVENT, $event);
+
+ return $info->getListOfMissingPrimaryKeys();
+ }
+
protected function hasMissingColumns(): array {
$indexInfo = new MissingColumnInformation();
// Dispatch event so apps can also hint for pending index updates if needed
@@ -722,6 +732,7 @@ Raw output
'phpOpcacheDocumentation' => $this->urlGenerator->linkToDocs('admin-php-opcache'),
'isSettimelimitAvailable' => $this->isSettimelimitAvailable(),
'hasFreeTypeSupport' => $this->hasFreeTypeSupport(),
+ 'missingPrimaryKeys' => $this->hasMissingPrimaryKeys(),
'missingIndexes' => $this->hasMissingIndexes(),
'missingColumns' => $this->hasMissingColumns(),
'isSqliteUsed' => $this->isSqliteUsed(),