[GH-ISSUE #1725] Cannot change column 'id': used in a foreign key constraint 'koel/interactions_song_id_foreign' of table 'koel/interactions' #948

Closed
opened 2026-02-26 02:34:43 +03:00 by kerem · 4 comments
Owner

Originally created by @axelrindle on GitHub (Nov 22, 2023).
Original GitHub issue: https://github.com/koel/koel/issues/1725

Describe the bug
Running php artisan koel:init within the Docker container results in a migration failure.

To reproduce
Steps to reproduce the behavior:
1 . Start Docker Image phanan/koel:6.11.2
2. Attach to it
3. Run php artisan koel:init

Expected behavior
A clear and concise description of what you expected to happen.

Stacktrace

Click to expand

PDOException: SQLSTATE[HY000]: General error: 1833 Cannot change column 'id': used in a foreign key constraint 'koel/interactions_song_id_foreign' of table 'koel/interactions'

www-data@baee02fad676:~/html$ php artisan koel:init
************************************
*     KOEL INSTALLATION WIZARD     *
************************************

As a reminder, you can always install/upgrade manually following the guide at https://docs.koel.dev

  Clearing caches ......................................................................................................................... 4ms DONE
  Copying .env file ....................................................................................................................... 0ms DONE
  Retrieving app key ...................................................................................................................... 0ms DONE

   INFO  Using app key: base64:LMMDELe8R...  

  Migrating database .................................................................................................................. 1,597ms FAIL
   ERROR  Oops! Koel installation or upgrade didn't finish successfully.  

   ERROR  Please check the error log at storage/logs/laravel.log and try again.  

   ERROR  You can also visit https://docs.koel.dev for other options.  

   ERROR  😥 Sorry for this. You deserve better.  

www-data@baee02fad676:~/html$ cat storage/logs/laravel.log 
[2023-11-22 21:21:52] production.ERROR: PDOException: SQLSTATE[HY000]: General error: 1833 Cannot change column 'id': used in a foreign key constraint 'koel/interactions_song_id_foreign' of table 'koel/interactions' in /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connection.php:545
Stack trace:
#0 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connection.php(545): PDOStatement->execute()
#1 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connection.php(753): Illuminate\Database\Connection->Illuminate\Database\{closure}()
#2 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connection.php(720): Illuminate\Database\Connection->runQueryCallback()
#3 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connection.php(546): Illuminate\Database\Connection->run()
#4 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Schema/Blueprint.php(109): Illuminate\Database\Connection->statement()
#5 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(439): Illuminate\Database\Schema\Blueprint->build()
#6 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(269): Illuminate\Database\Schema\Builder->build()
#7 /var/www/html/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(338): Illuminate\Database\Schema\Builder->table()
#8 /var/www/html/database/migrations/2022_08_01_093952_use_uuids_for_song_ids.php(16): Illuminate\Support\Facades\Facade::__callStatic()
#9 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(488): Illuminate\Database\Migrations\Migration@anonymous->up()
#10 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(406): Illuminate\Database\Migrations\Migrator->runMethod()
#11 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(415): Illuminate\Database\Migrations\Migrator->Illuminate\Database\Migrations\{closure}()
#12 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(216): Illuminate\Database\Migrations\Migrator->runMigration()
#13 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(36): Illuminate\Database\Migrations\Migrator->Illuminate\Database\Migrations\{closure}()
#14 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(749): Illuminate\Console\View\Components\Task->render()
#15 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(216): Illuminate\Database\Migrations\Migrator->write()
#16 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(181): Illuminate\Database\Migrations\Migrator->runUp()
#17 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(124): Illuminate\Database\Migrations\Migrator->runPending()
#18 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(90): Illuminate\Database\Migrations\Migrator->run()
#19 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(626): Illuminate\Database\Console\Migrations\MigrateCommand->Illuminate\Database\Console\Migrations\{closure}()
#20 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(102): Illuminate\Database\Migrations\Migrator->usingConnection()
#21 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\Database\Console\Migrations\MigrateCommand->handle()
#22 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Util.php(41): Illuminate\Container\BoundMethod::Illuminate\Container\{closure}()
#23 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(93): Illuminate\Container\Util::unwrapIfClosure()
#24 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(37): Illuminate\Container\BoundMethod::callBoundMethod()
#25 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(661): Illuminate\Container\BoundMethod::call()
#26 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(183): Illuminate\Container\Container->call()
#27 /var/www/html/vendor/symfony/console/Command/Command.php(291): Illuminate\Console\Command->execute()
#28 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(153): Symfony\Component\Console\Command\Command->run()
#29 /var/www/html/vendor/symfony/console/Application.php(1014): Illuminate\Console\Command->run()
#30 /var/www/html/vendor/symfony/console/Application.php(301): Symfony\Component\Console\Application->doRunCommand()
#31 /var/www/html/vendor/symfony/console/Application.php(171): Symfony\Component\Console\Application->doRun()
#32 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Application.php(102): Symfony\Component\Console\Application->run()
#33 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Application.php(194): Illuminate\Console\Application->run()
#34 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(336): Illuminate\Console\Application->call()
#35 /var/www/html/app/Console/Commands/InitCommand.php(278): Illuminate\Foundation\Console\Kernel->call()
#36 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(36): App\Console\Commands\InitCommand->App\Console\Commands\{closure}()
#37 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/View/Components/Factory.php(58): Illuminate\Console\View\Components\Task->render()
#38 /var/www/html/app/Console/Commands/InitCommand.php(279): Illuminate\Console\View\Components\Factory->__call()
#39 /var/www/html/app/Console/Commands/InitCommand.php(63): App\Console\Commands\InitCommand->migrateDatabase()
#40 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): App\Console\Commands\InitCommand->handle()
#41 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Util.php(41): Illuminate\Container\BoundMethod::Illuminate\Container\{closure}()
#42 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(93): Illuminate\Container\Util::unwrapIfClosure()
#43 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(37): Illuminate\Container\BoundMethod::callBoundMethod()
#44 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(661): Illuminate\Container\BoundMethod::call()
#45 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(183): Illuminate\Container\Container->call()
#46 /var/www/html/vendor/symfony/console/Command/Command.php(291): Illuminate\Console\Command->execute()
#47 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(153): Symfony\Component\Console\Command\Command->run()
#48 /var/www/html/vendor/symfony/console/Application.php(1014): Illuminate\Console\Command->run()
#49 /var/www/html/vendor/symfony/console/Application.php(301): Symfony\Component\Console\Application->doRunCommand()
#50 /var/www/html/vendor/symfony/console/Application.php(171): Symfony\Component\Console\Application->doRun()
#51 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Application.php(102): Symfony\Component\Console\Application->run()
#52 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(155): Illuminate\Console\Application->run()
#53 /var/www/html/artisan(35): Illuminate\Foundation\Console\Kernel->handle()
#54 {main}

Next Illuminate\Database\QueryException: SQLSTATE[HY000]: General error: 1833 Cannot change column 'id': used in a foreign key constraint 'koel/interactions_song_id_foreign' of table 'koel/interactions' (SQL: ALTER TABLE songs CHANGE id id VARCHAR(36) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`) in /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connection.php:760
Stack trace:
#0 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connection.php(720): Illuminate\Database\Connection->runQueryCallback()
#1 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connection.php(546): Illuminate\Database\Connection->run()
#2 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Schema/Blueprint.php(109): Illuminate\Database\Connection->statement()
#3 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(439): Illuminate\Database\Schema\Blueprint->build()
#4 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(269): Illuminate\Database\Schema\Builder->build()
#5 /var/www/html/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(338): Illuminate\Database\Schema\Builder->table()
#6 /var/www/html/database/migrations/2022_08_01_093952_use_uuids_for_song_ids.php(16): Illuminate\Support\Facades\Facade::__callStatic()
#7 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(488): Illuminate\Database\Migrations\Migration@anonymous->up()
#8 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(406): Illuminate\Database\Migrations\Migrator->runMethod()
#9 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(415): Illuminate\Database\Migrations\Migrator->Illuminate\Database\Migrations\{closure}()
#10 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(216): Illuminate\Database\Migrations\Migrator->runMigration()
#11 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(36): Illuminate\Database\Migrations\Migrator->Illuminate\Database\Migrations\{closure}()
#12 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(749): Illuminate\Console\View\Components\Task->render()
#13 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(216): Illuminate\Database\Migrations\Migrator->write()
#14 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(181): Illuminate\Database\Migrations\Migrator->runUp()
#15 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(124): Illuminate\Database\Migrations\Migrator->runPending()
#16 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(90): Illuminate\Database\Migrations\Migrator->run()
#17 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(626): Illuminate\Database\Console\Migrations\MigrateCommand->Illuminate\Database\Console\Migrations\{closure}()
#18 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(102): Illuminate\Database\Migrations\Migrator->usingConnection()
#19 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\Database\Console\Migrations\MigrateCommand->handle()
#20 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Util.php(41): Illuminate\Container\BoundMethod::Illuminate\Container\{closure}()
#21 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(93): Illuminate\Container\Util::unwrapIfClosure()
#22 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(37): Illuminate\Container\BoundMethod::callBoundMethod()
#23 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(661): Illuminate\Container\BoundMethod::call()
#24 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(183): Illuminate\Container\Container->call()
#25 /var/www/html/vendor/symfony/console/Command/Command.php(291): Illuminate\Console\Command->execute()
#26 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(153): Symfony\Component\Console\Command\Command->run()
#27 /var/www/html/vendor/symfony/console/Application.php(1014): Illuminate\Console\Command->run()
#28 /var/www/html/vendor/symfony/console/Application.php(301): Symfony\Component\Console\Application->doRunCommand()
#29 /var/www/html/vendor/symfony/console/Application.php(171): Symfony\Component\Console\Application->doRun()
#30 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Application.php(102): Symfony\Component\Console\Application->run()
#31 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Application.php(194): Illuminate\Console\Application->run()
#32 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(336): Illuminate\Console\Application->call()
#33 /var/www/html/app/Console/Commands/InitCommand.php(278): Illuminate\Foundation\Console\Kernel->call()
#34 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(36): App\Console\Commands\InitCommand->App\Console\Commands\{closure}()
#35 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/View/Components/Factory.php(58): Illuminate\Console\View\Components\Task->render()
#36 /var/www/html/app/Console/Commands/InitCommand.php(279): Illuminate\Console\View\Components\Factory->__call()
#37 /var/www/html/app/Console/Commands/InitCommand.php(63): App\Console\Commands\InitCommand->migrateDatabase()
#38 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): App\Console\Commands\InitCommand->handle()
#39 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Util.php(41): Illuminate\Container\BoundMethod::Illuminate\Container\{closure}()
#40 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(93): Illuminate\Container\Util::unwrapIfClosure()
#41 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(37): Illuminate\Container\BoundMethod::callBoundMethod()
#42 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(661): Illuminate\Container\BoundMethod::call()
#43 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(183): Illuminate\Container\Container->call()
#44 /var/www/html/vendor/symfony/console/Command/Command.php(291): Illuminate\Console\Command->execute()
#45 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(153): Symfony\Component\Console\Command\Command->run()
#46 /var/www/html/vendor/symfony/console/Application.php(1014): Illuminate\Console\Command->run()
#47 /var/www/html/vendor/symfony/console/Application.php(301): Symfony\Component\Console\Application->doRunCommand()
#48 /var/www/html/vendor/symfony/console/Application.php(171): Symfony\Component\Console\Application->doRun()
#49 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Application.php(102): Symfony\Component\Console\Application->run()
#50 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(155): Illuminate\Console\Application->run()
#51 /var/www/html/artisan(35): Illuminate\Foundation\Console\Kernel->handle()
#52 {main}

Environment

  • Using Docker Image phanan/koel:6.11.2
  • Koel version: 6.11.2
  • Docker version: 24.0.7
  • Database version: 10.6.16-MariaDB-1:10.6.16+maria~deb11-log - mariadb.org binary distribution
Originally created by @axelrindle on GitHub (Nov 22, 2023). Original GitHub issue: https://github.com/koel/koel/issues/1725 **Describe the bug** Running `php artisan koel:init` within the Docker container results in a migration failure. **To reproduce** Steps to reproduce the behavior: 1 . Start Docker Image `phanan/koel:6.11.2` 2. Attach to it 3. Run `php artisan koel:init` **Expected behavior** A clear and concise description of what you expected to happen. **Stacktrace** <details> <summary>Click to expand `PDOException: SQLSTATE[HY000]: General error: 1833 Cannot change column 'id': used in a foreign key constraint 'koel/interactions_song_id_foreign' of table 'koel/interactions'` </summary> ``` www-data@baee02fad676:~/html$ php artisan koel:init ************************************ * KOEL INSTALLATION WIZARD * ************************************ As a reminder, you can always install/upgrade manually following the guide at https://docs.koel.dev Clearing caches ......................................................................................................................... 4ms DONE Copying .env file ....................................................................................................................... 0ms DONE Retrieving app key ...................................................................................................................... 0ms DONE INFO Using app key: base64:LMMDELe8R... Migrating database .................................................................................................................. 1,597ms FAIL ERROR Oops! Koel installation or upgrade didn't finish successfully. ERROR Please check the error log at storage/logs/laravel.log and try again. ERROR You can also visit https://docs.koel.dev for other options. ERROR 😥 Sorry for this. You deserve better. www-data@baee02fad676:~/html$ cat storage/logs/laravel.log [2023-11-22 21:21:52] production.ERROR: PDOException: SQLSTATE[HY000]: General error: 1833 Cannot change column 'id': used in a foreign key constraint 'koel/interactions_song_id_foreign' of table 'koel/interactions' in /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connection.php:545 Stack trace: #0 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connection.php(545): PDOStatement->execute() #1 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connection.php(753): Illuminate\Database\Connection->Illuminate\Database\{closure}() #2 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connection.php(720): Illuminate\Database\Connection->runQueryCallback() #3 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connection.php(546): Illuminate\Database\Connection->run() #4 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Schema/Blueprint.php(109): Illuminate\Database\Connection->statement() #5 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(439): Illuminate\Database\Schema\Blueprint->build() #6 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(269): Illuminate\Database\Schema\Builder->build() #7 /var/www/html/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(338): Illuminate\Database\Schema\Builder->table() #8 /var/www/html/database/migrations/2022_08_01_093952_use_uuids_for_song_ids.php(16): Illuminate\Support\Facades\Facade::__callStatic() #9 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(488): Illuminate\Database\Migrations\Migration@anonymous->up() #10 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(406): Illuminate\Database\Migrations\Migrator->runMethod() #11 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(415): Illuminate\Database\Migrations\Migrator->Illuminate\Database\Migrations\{closure}() #12 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(216): Illuminate\Database\Migrations\Migrator->runMigration() #13 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(36): Illuminate\Database\Migrations\Migrator->Illuminate\Database\Migrations\{closure}() #14 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(749): Illuminate\Console\View\Components\Task->render() #15 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(216): Illuminate\Database\Migrations\Migrator->write() #16 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(181): Illuminate\Database\Migrations\Migrator->runUp() #17 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(124): Illuminate\Database\Migrations\Migrator->runPending() #18 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(90): Illuminate\Database\Migrations\Migrator->run() #19 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(626): Illuminate\Database\Console\Migrations\MigrateCommand->Illuminate\Database\Console\Migrations\{closure}() #20 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(102): Illuminate\Database\Migrations\Migrator->usingConnection() #21 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\Database\Console\Migrations\MigrateCommand->handle() #22 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Util.php(41): Illuminate\Container\BoundMethod::Illuminate\Container\{closure}() #23 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(93): Illuminate\Container\Util::unwrapIfClosure() #24 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(37): Illuminate\Container\BoundMethod::callBoundMethod() #25 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(661): Illuminate\Container\BoundMethod::call() #26 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(183): Illuminate\Container\Container->call() #27 /var/www/html/vendor/symfony/console/Command/Command.php(291): Illuminate\Console\Command->execute() #28 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(153): Symfony\Component\Console\Command\Command->run() #29 /var/www/html/vendor/symfony/console/Application.php(1014): Illuminate\Console\Command->run() #30 /var/www/html/vendor/symfony/console/Application.php(301): Symfony\Component\Console\Application->doRunCommand() #31 /var/www/html/vendor/symfony/console/Application.php(171): Symfony\Component\Console\Application->doRun() #32 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Application.php(102): Symfony\Component\Console\Application->run() #33 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Application.php(194): Illuminate\Console\Application->run() #34 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(336): Illuminate\Console\Application->call() #35 /var/www/html/app/Console/Commands/InitCommand.php(278): Illuminate\Foundation\Console\Kernel->call() #36 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(36): App\Console\Commands\InitCommand->App\Console\Commands\{closure}() #37 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/View/Components/Factory.php(58): Illuminate\Console\View\Components\Task->render() #38 /var/www/html/app/Console/Commands/InitCommand.php(279): Illuminate\Console\View\Components\Factory->__call() #39 /var/www/html/app/Console/Commands/InitCommand.php(63): App\Console\Commands\InitCommand->migrateDatabase() #40 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): App\Console\Commands\InitCommand->handle() #41 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Util.php(41): Illuminate\Container\BoundMethod::Illuminate\Container\{closure}() #42 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(93): Illuminate\Container\Util::unwrapIfClosure() #43 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(37): Illuminate\Container\BoundMethod::callBoundMethod() #44 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(661): Illuminate\Container\BoundMethod::call() #45 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(183): Illuminate\Container\Container->call() #46 /var/www/html/vendor/symfony/console/Command/Command.php(291): Illuminate\Console\Command->execute() #47 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(153): Symfony\Component\Console\Command\Command->run() #48 /var/www/html/vendor/symfony/console/Application.php(1014): Illuminate\Console\Command->run() #49 /var/www/html/vendor/symfony/console/Application.php(301): Symfony\Component\Console\Application->doRunCommand() #50 /var/www/html/vendor/symfony/console/Application.php(171): Symfony\Component\Console\Application->doRun() #51 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Application.php(102): Symfony\Component\Console\Application->run() #52 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(155): Illuminate\Console\Application->run() #53 /var/www/html/artisan(35): Illuminate\Foundation\Console\Kernel->handle() #54 {main} Next Illuminate\Database\QueryException: SQLSTATE[HY000]: General error: 1833 Cannot change column 'id': used in a foreign key constraint 'koel/interactions_song_id_foreign' of table 'koel/interactions' (SQL: ALTER TABLE songs CHANGE id id VARCHAR(36) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`) in /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connection.php:760 Stack trace: #0 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connection.php(720): Illuminate\Database\Connection->runQueryCallback() #1 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connection.php(546): Illuminate\Database\Connection->run() #2 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Schema/Blueprint.php(109): Illuminate\Database\Connection->statement() #3 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(439): Illuminate\Database\Schema\Blueprint->build() #4 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(269): Illuminate\Database\Schema\Builder->build() #5 /var/www/html/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(338): Illuminate\Database\Schema\Builder->table() #6 /var/www/html/database/migrations/2022_08_01_093952_use_uuids_for_song_ids.php(16): Illuminate\Support\Facades\Facade::__callStatic() #7 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(488): Illuminate\Database\Migrations\Migration@anonymous->up() #8 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(406): Illuminate\Database\Migrations\Migrator->runMethod() #9 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(415): Illuminate\Database\Migrations\Migrator->Illuminate\Database\Migrations\{closure}() #10 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(216): Illuminate\Database\Migrations\Migrator->runMigration() #11 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(36): Illuminate\Database\Migrations\Migrator->Illuminate\Database\Migrations\{closure}() #12 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(749): Illuminate\Console\View\Components\Task->render() #13 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(216): Illuminate\Database\Migrations\Migrator->write() #14 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(181): Illuminate\Database\Migrations\Migrator->runUp() #15 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(124): Illuminate\Database\Migrations\Migrator->runPending() #16 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(90): Illuminate\Database\Migrations\Migrator->run() #17 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(626): Illuminate\Database\Console\Migrations\MigrateCommand->Illuminate\Database\Console\Migrations\{closure}() #18 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(102): Illuminate\Database\Migrations\Migrator->usingConnection() #19 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\Database\Console\Migrations\MigrateCommand->handle() #20 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Util.php(41): Illuminate\Container\BoundMethod::Illuminate\Container\{closure}() #21 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(93): Illuminate\Container\Util::unwrapIfClosure() #22 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(37): Illuminate\Container\BoundMethod::callBoundMethod() #23 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(661): Illuminate\Container\BoundMethod::call() #24 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(183): Illuminate\Container\Container->call() #25 /var/www/html/vendor/symfony/console/Command/Command.php(291): Illuminate\Console\Command->execute() #26 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(153): Symfony\Component\Console\Command\Command->run() #27 /var/www/html/vendor/symfony/console/Application.php(1014): Illuminate\Console\Command->run() #28 /var/www/html/vendor/symfony/console/Application.php(301): Symfony\Component\Console\Application->doRunCommand() #29 /var/www/html/vendor/symfony/console/Application.php(171): Symfony\Component\Console\Application->doRun() #30 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Application.php(102): Symfony\Component\Console\Application->run() #31 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Application.php(194): Illuminate\Console\Application->run() #32 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(336): Illuminate\Console\Application->call() #33 /var/www/html/app/Console/Commands/InitCommand.php(278): Illuminate\Foundation\Console\Kernel->call() #34 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(36): App\Console\Commands\InitCommand->App\Console\Commands\{closure}() #35 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/View/Components/Factory.php(58): Illuminate\Console\View\Components\Task->render() #36 /var/www/html/app/Console/Commands/InitCommand.php(279): Illuminate\Console\View\Components\Factory->__call() #37 /var/www/html/app/Console/Commands/InitCommand.php(63): App\Console\Commands\InitCommand->migrateDatabase() #38 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): App\Console\Commands\InitCommand->handle() #39 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Util.php(41): Illuminate\Container\BoundMethod::Illuminate\Container\{closure}() #40 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(93): Illuminate\Container\Util::unwrapIfClosure() #41 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(37): Illuminate\Container\BoundMethod::callBoundMethod() #42 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(661): Illuminate\Container\BoundMethod::call() #43 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(183): Illuminate\Container\Container->call() #44 /var/www/html/vendor/symfony/console/Command/Command.php(291): Illuminate\Console\Command->execute() #45 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(153): Symfony\Component\Console\Command\Command->run() #46 /var/www/html/vendor/symfony/console/Application.php(1014): Illuminate\Console\Command->run() #47 /var/www/html/vendor/symfony/console/Application.php(301): Symfony\Component\Console\Application->doRunCommand() #48 /var/www/html/vendor/symfony/console/Application.php(171): Symfony\Component\Console\Application->doRun() #49 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Application.php(102): Symfony\Component\Console\Application->run() #50 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(155): Illuminate\Console\Application->run() #51 /var/www/html/artisan(35): Illuminate\Foundation\Console\Kernel->handle() #52 {main} ``` </details> **Environment** - Using Docker Image `phanan/koel:6.11.2` - Koel version: 6.11.2 - Docker version: 24.0.7 - Database version: 10.6.16-MariaDB-1:10.6.16+maria~deb11-log - mariadb.org binary distribution
kerem closed this issue 2026-02-26 02:34:43 +03:00
Author
Owner

@jSML4ThWwBID69YC commented on GitHub (Dec 26, 2023):

I am seeing a similar error on installation. Due to this, Koel can not be installed.

[ERROR] Slave SQL: Error 'Cannot change column 'id': used in a foreign key constraint '<CENSORED>/interactions_song_id_foreign' of table '<CENSORED>/interactions'' on query. Default database: '<CENSORED>'. Query: 'ALTER TABLE songs CHANGE id id VARCHAR(36) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`', Internal MariaDB error code: 1833

Environment

  • FreeBSD 13.2
  • Koel version: 6.11.2 and 6.11.3
  • Database: MariaDB 10.16.16 using Galera
<!-- gh-comment-id:1869770406 --> @jSML4ThWwBID69YC commented on GitHub (Dec 26, 2023): I am seeing a similar error on installation. Due to this, Koel can not be installed. ``` [ERROR] Slave SQL: Error 'Cannot change column 'id': used in a foreign key constraint '<CENSORED>/interactions_song_id_foreign' of table '<CENSORED>/interactions'' on query. Default database: '<CENSORED>'. Query: 'ALTER TABLE songs CHANGE id id VARCHAR(36) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`', Internal MariaDB error code: 1833 ``` Environment * FreeBSD 13.2 * Koel version: 6.11.2 and 6.11.3 * Database: MariaDB 10.16.16 using Galera
Author
Owner

@phanan commented on GitHub (Dec 27, 2023):

Hmm, I'm using MariaDB 10.11.12 and this problem doesn't exist at all:

❯ php artisan koel:init
************************************
*     KOEL INSTALLATION WIZARD     *
************************************

As a reminder, you can always install/upgrade manually following the guide at https://docs.koel.dev

  Clearing caches ............................................... 124ms DONE
   INFO  .env file exists -- skipping.

  Retrieving app key .............................................. 0ms DONE

   INFO  Using app key: base64:8sA+Mibai...

  Migrating database .......................................... 7,768ms DONE
  Creating default admin account ................................ 113ms DONE
  Seeding data ................................................... 61ms DONE

How viable is it if I ask you to try this specific DB version?

<!-- gh-comment-id:1870269875 --> @phanan commented on GitHub (Dec 27, 2023): Hmm, I'm using MariaDB 10.11.12 and this problem doesn't exist at all: ```bash ❯ php artisan koel:init ************************************ * KOEL INSTALLATION WIZARD * ************************************ As a reminder, you can always install/upgrade manually following the guide at https://docs.koel.dev Clearing caches ............................................... 124ms DONE INFO .env file exists -- skipping. Retrieving app key .............................................. 0ms DONE INFO Using app key: base64:8sA+Mibai... Migrating database .......................................... 7,768ms DONE Creating default admin account ................................ 113ms DONE Seeding data ................................................... 61ms DONE ``` How viable is it if I ask you to try this specific DB version?
Author
Owner

@jSML4ThWwBID69YC commented on GitHub (Dec 28, 2023):

Hello,

I setup MariaDB 10.11.6 with Galera. Unfortunately, it fails with the same error.

2023-12-28 0:11:16 2177 [Warning] WSREP: Ignoring error 'Cannot change column 'id': used in a foreign key constraint 'CENSORED/interactions_song_id_foreign' of table 'CENSORED/interactions'' on query. Default database: 'CENSORED'. Query: 'ALTER TABLE songs CHANGE id id VARCHAR(36) CHARACTER SET utf8mb4 NOT NULL COLLATEutf8mb4_unicode_ci', Error_code: 1833

<!-- gh-comment-id:1870707476 --> @jSML4ThWwBID69YC commented on GitHub (Dec 28, 2023): Hello, I setup MariaDB 10.11.6 with Galera. Unfortunately, it fails with the same error. ` 2023-12-28 0:11:16 2177 [Warning] WSREP: Ignoring error 'Cannot change column 'id': used in a foreign key constraint 'CENSORED/interactions_song_id_foreign' of table 'CENSORED/interactions'' on query. Default database: 'CENSORED'. Query: 'ALTER TABLE songs CHANGE id id VARCHAR(36) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`', Error_code: 1833 `
Author
Owner

@phanan commented on GitHub (Dec 28, 2023):

Weird, I'll take a look.

<!-- gh-comment-id:1871059464 --> @phanan commented on GitHub (Dec 28, 2023): Weird, I'll take a look.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/koel-koel#948
No description provided.