What happened?
Description
Upgrade of craft4 to craft5 fails with a postgres (14) db exception (Insufficient privilege: 7 ERROR: permission denied) while applying migrations
I am able to perform the upgrade if I grant the db-user superuser permissions:
ALTER USER craftcms WITH SUPERUSER;
Steps to reproduce
- Create user and db and make the user owner of the database (
create database db; create user craftcms identified by 'password'; alter database db owner craftcms;
- Install craft v4
- Update to craft v5
Expected behavior
Not needing any special permissions for upgrade (ownership of database should be enough) or some hint in the upgrade documentation
Actual behavior
php craft up causes
Exception: SQLSTATE[42501]: Insufficient privilege: 7 ERROR: permission denied: "RI_ConstraintTrigger_c_46854" is a system trigger
Full Exception
Exception: SQLSTATE[42501]: Insufficient privilege: 7 ERROR: permission denied: "RI_ConstraintTrigger_c_46854" is a system trigger
The SQL being executed was: ALTER TABLE "public"."addresses" DISABLE TRIGGER ALL; ALTER TABLE "public"."announcements" DISABLE TRIGGER ALL; ALTER TABLE "public"."assetindexdata" DISABLE TRIGGER ALL; ALTER TABLE "public"."assetindexingsessions" DISABLE TRIGGER ALL; ALTER TABLE "public"."assets" DISABLE TRIGGER ALL; ALTER TABLE "public"."assets_sites" DISABLE TRIGGER ALL; ALTER TABLE "public"."authenticator" DISABLE TRIGGER ALL; ALTER TABLE "public"."categories" DISABLE TRIGGER ALL; ALTER TABLE "public"."categorygroups" DISABLE TRIGGER ALL; ALTER TABLE "public"."categorygroups_sites" DISABLE TRIGGER ALL; ALTER TABLE "public"."changedattributes" DISABLE TRIGGER ALL; ALTER TABLE "public"."changedfields" DISABLE TRIGGER ALL; ALTER TABLE "public"."comments_comments" DISABLE TRIGGER ALL; ALTER TABLE "public"."comments_flags" DISABLE TRIGGER ALL; ALTER TABLE "public"."comments_subscribe" DISABLE TRIGGER ALL; ALTER TABLE "public"."comments_votes" DISABLE TRIGGER ALL; ALTER TABLE "public"."craftidtokens" DISABLE TRIGGER ALL; ALTER TABLE "public"."deprecationerrors" DISABLE TRIGGER ALL; ALTER TABLE "public"."drafts" DISABLE TRIGGER ALL; ALTER TABLE "public"."elementactivity" DISABLE TRIGGER ALL; ALTER TABLE "public"."elements" DISABLE TRIGGER ALL; ALTER TABLE "public"."elements_owners" DISABLE TRIGGER ALL; ALTER TABLE "public"."elements_sites" DISABLE TRIGGER ALL; ALTER TABLE "public"."entries" DISABLE TRIGGER ALL; ALTER TABLE "public"."entries_authors" DISABLE TRIGGER ALL; ALTER TABLE "public"."entrytypes" DISABLE TRIGGER ALL; ALTER TABLE "public"."feedme_feeds" DISABLE TRIGGER ALL; ALTER TABLE "public"."fieldlayouts" DISABLE TRIGGER ALL; ALTER TABLE "public"."fields" DISABLE TRIGGER ALL; ALTER TABLE "public"."globalsets" DISABLE TRIGGER ALL; ALTER TABLE "public"."gqlschemas" DISABLE TRIGGER ALL; ALTER TABLE "public"."gqltokens" DISABLE TRIGGER ALL; ALTER TABLE "public"."imagetransformindex" DISABLE TRIGGER ALL; ALTER TABLE "public"."imagetransforms" DISABLE TRIGGER ALL; ALTER TABLE "public"."info" DISABLE TRIGGER ALL; ALTER TABLE "public"."maps" DISABLE TRIGGER ALL; ALTER TABLE "public"."matrixblocks" DISABLE TRIGGER ALL; ALTER TABLE "public"."matrixblocks_owners" DISABLE TRIGGER ALL; ALTER TABLE "public"."matrixblocktypes" DISABLE TRIGGER ALL; ALTER TABLE "public"."migrations" DISABLE TRIGGER ALL; ALTER TABLE "public"."plugins" DISABLE TRIGGER ALL; ALTER TABLE "public"."projectconfig" DISABLE TRIGGER ALL; ALTER TABLE "public"."queue" DISABLE TRIGGER ALL; ALTER TABLE "public"."recoverycodes" DISABLE TRIGGER ALL; ALTER TABLE "public"."relations" DISABLE TRIGGER ALL; ALTER TABLE "public"."resourcepaths" DISABLE TRIGGER ALL; ALTER TABLE "public"."revisions" DISABLE TRIGGER ALL; ALTER TABLE "public"."searchindex" DISABLE TRIGGER ALL; ALTER TABLE "public"."sections" DISABLE TRIGGER ALL; ALTER TABLE "public"."sections_entrytypes" DISABLE TRIGGER ALL; ALTER TABLE "public"."sections_sites" DISABLE TRIGGER ALL; ALTER TABLE "public"."sequences" DISABLE TRIGGER ALL; ALTER TABLE "public"."sessions" DISABLE TRIGGER ALL; ALTER TABLE "public"."shunnedmessages" DISABLE TRIGGER ALL; ALTER TABLE "public"."sitegroups" DISABLE TRIGGER ALL; ALTER TABLE "public"."sites" DISABLE TRIGGER ALL; ALTER TABLE "public"."structureelements" DISABLE TRIGGER ALL; ALTER TABLE "public"."structures" DISABLE TRIGGER ALL; ALTER TABLE "public"."systemmessages" DISABLE TRIGGER ALL; ALTER TABLE "public"."taggroups" DISABLE TRIGGER ALL; ALTER TABLE "public"."tags" DISABLE TRIGGER ALL; ALTER TABLE "public"."tokens" DISABLE TRIGGER ALL; ALTER TABLE "public"."usergroups" DISABLE TRIGGER ALL; ALTER TABLE "public"."usergroups_users" DISABLE TRIGGER ALL; ALTER TABLE "public"."userpermissions" DISABLE TRIGGER ALL; ALTER TABLE "public"."userpermissions_usergroups" DISABLE TRIGGER ALL; ALTER TABLE "public"."userpermissions_users" DISABLE TRIGGER ALL; ALTER TABLE "public"."userpreferences" DISABLE TRIGGER ALL; ALTER TABLE "public"."users" DISABLE TRIGGER ALL; ALTER TABLE "public"."volumefolders" DISABLE TRIGGER ALL; ALTER TABLE "public"."volumes" DISABLE TRIGGER ALL; ALTER TABLE "public"."webauthn" DISABLE TRIGGER ALL; ALTER TABLE "public"."widgets" DISABLE TRIGGER ALL;
Craft CMS version
5.2.2
PHP version
8.2
Operating system and version
Ubuntu 23.10
Database type and version
Postgres 14
Image driver and version
No response
Installed plugins and versions
What happened?
Description
Upgrade of craft4 to craft5 fails with a postgres (14) db exception (
Insufficient privilege: 7 ERROR: permission denied) while applying migrationsI am able to perform the upgrade if I grant the db-user superuser permissions:
ALTER USER craftcms WITH SUPERUSER;Steps to reproduce
create database db; create user craftcms identified by 'password'; alter database db owner craftcms;Expected behavior
Not needing any special permissions for upgrade (ownership of database should be enough) or some hint in the upgrade documentation
Actual behavior
php craft upcausesException: SQLSTATE[42501]: Insufficient privilege: 7 ERROR: permission denied: "RI_ConstraintTrigger_c_46854" is a system triggerFull Exception
Craft CMS version
5.2.2
PHP version
8.2
Operating system and version
Ubuntu 23.10
Database type and version
Postgres 14
Image driver and version
No response
Installed plugins and versions