Files
traxxx/migrations/20260723120000_actors_avatars_profile_not_null.js
2026-07-23 23:55:34 +02:00

25 lines
690 B
JavaScript

exports.up = async function(knex) {
const orphanedAvatars = await knex('actors_avatars')
.whereNull('profile_id');
if (orphanedAvatars.length > 0) {
console.log(`Deleting ${orphanedAvatars.length} actors_avatars rows with no profile_id`);
}
await knex('actors_avatars')
.whereNull('profile_id')
.delete();
await knex.raw(`
DROP INDEX IF EXISTS unique_main_avatars;
ALTER TABLE actors_avatars ALTER COLUMN profile_id SET NOT NULL;
`);
};
exports.down = async function(knex) {
await knex.raw(`
ALTER TABLE actors_avatars ALTER COLUMN profile_id DROP NOT NULL;
CREATE UNIQUE INDEX unique_main_avatars ON actors_avatars (actor_id) WHERE (profile_id IS NULL);
`);
};