From f73f14207c6c0792396a2cab92ff33b806500867 Mon Sep 17 00:00:00 2001 From: Joas Schilling Date: Wed, 19 Jul 2023 23:14:43 +0200 Subject: fix(db): Move missing core columns to typed event Signed-off-by: Joas Schilling --- core/Command/Db/AddMissingColumns.php | 37 +---------------------------------- 1 file changed, 1 insertion(+), 36 deletions(-) (limited to 'core/Command') diff --git a/core/Command/Db/AddMissingColumns.php b/core/Command/Db/AddMissingColumns.php index 93e346e498c..46642f7d0d4 100644 --- a/core/Command/Db/AddMissingColumns.php +++ b/core/Command/Db/AddMissingColumns.php @@ -66,8 +66,6 @@ class AddMissingColumns extends Command { protected function execute(InputInterface $input, OutputInterface $output): int { $dryRun = $input->getOption('dry-run'); - $updated = $this->addCoreColumns($output, $dryRun); - // Dispatch event so apps can also update columns if needed $event = new GenericEvent($output); $this->legacyDispatcher->dispatch(IDBConnection::ADD_MISSING_COLUMNS_EVENT, $event); @@ -75,6 +73,7 @@ class AddMissingColumns extends Command { $event = new AddMissingColumnsEvent(); $this->dispatcher->dispatchTyped($event); $missingColumns = $event->getMissingColumns(); + $updated = false; if (!empty($missingColumns)) { $schema = new SchemaWrapper($this->connection); @@ -102,38 +101,4 @@ class AddMissingColumns extends Command { return 0; } - - /** - * Add missing column for core tables - * - * @param OutputInterface $output - * @param bool $dryRun If true, will return the sql queries instead of running them. - * @return bool True when the schema changed - * @throws \Doctrine\DBAL\Schema\SchemaException - */ - private function addCoreColumns(OutputInterface $output, bool $dryRun): bool { - $output->writeln('Check columns of the comments table.'); - - $schema = new SchemaWrapper($this->connection); - $updated = false; - - if ($schema->hasTable('comments')) { - $table = $schema->getTable('comments'); - if (!$table->hasColumn('reference_id')) { - $output->writeln('Adding additional reference_id column to the comments table, this can take some time...'); - $table->addColumn('reference_id', Types::STRING, [ - 'notnull' => false, - 'length' => 64, - ]); - $sqlQueries = $this->connection->migrateToSchema($schema->getWrappedSchema(), $dryRun); - if ($dryRun && $sqlQueries !== null) { - $output->writeln($sqlQueries); - } - $updated = true; - $output->writeln('Comments table updated successfully.'); - } - } - - return $updated; - } } -- cgit v1.2.3