forked from DebaucheryLibrarian/traxxx
Indexed media table foreign keys for improved delete performance. Staged media flushing.
This commit is contained in:
53
migrations/20250304025013_media_indexes.js
Normal file
53
migrations/20250304025013_media_indexes.js
Normal file
@@ -0,0 +1,53 @@
|
||||
exports.up = async (knex) => {
|
||||
await knex.schema.alterTable('media', (table) => table.index('sfw_media_id'));
|
||||
await knex.schema.alterTable('actors_profiles', (table) => table.index('avatar_media_id'));
|
||||
await knex.schema.alterTable('actors_avatars', (table) => table.index('media_id'));
|
||||
await knex.schema.alterTable('actors_photos', (table) => table.index('media_id'));
|
||||
await knex.schema.alterTable('chapters_photos', (table) => table.index('media_id'));
|
||||
await knex.schema.alterTable('chapters_posters', (table) => table.index('media_id'));
|
||||
await knex.schema.alterTable('movies_covers', (table) => table.index('media_id'));
|
||||
await knex.schema.alterTable('movies_photos', (table) => table.index('media_id'));
|
||||
await knex.schema.alterTable('movies_posters', (table) => table.index('media_id'));
|
||||
await knex.schema.alterTable('movies_teasers', (table) => table.index('media_id'));
|
||||
await knex.schema.alterTable('movies_trailers', (table) => table.index('media_id'));
|
||||
await knex.schema.alterTable('releases_caps', (table) => table.index('media_id'));
|
||||
await knex.schema.alterTable('releases_covers', (table) => table.index('media_id'));
|
||||
await knex.schema.alterTable('releases_posters', (table) => table.index('media_id'));
|
||||
await knex.schema.alterTable('releases_photos', (table) => table.index('media_id'));
|
||||
await knex.schema.alterTable('releases_teasers', (table) => table.index('media_id'));
|
||||
await knex.schema.alterTable('releases_trailers', (table) => table.index('media_id'));
|
||||
await knex.schema.alterTable('series_covers', (table) => table.index('media_id'));
|
||||
await knex.schema.alterTable('series_photos', (table) => table.index('media_id'));
|
||||
await knex.schema.alterTable('series_posters', (table) => table.index('media_id'));
|
||||
await knex.schema.alterTable('series_teasers', (table) => table.index('media_id'));
|
||||
await knex.schema.alterTable('series_trailers', (table) => table.index('media_id'));
|
||||
await knex.schema.alterTable('tags_photos', (table) => table.index('media_id'));
|
||||
await knex.schema.alterTable('tags_posters', (table) => table.index('media_id'));
|
||||
};
|
||||
|
||||
exports.down = async (knex) => {
|
||||
await knex.schema.alterTable('media', (table) => table.dropIndex('sfw_media_id'));
|
||||
await knex.schema.alterTable('actors_profiles', (table) => table.dropIndex('avatar_media_id'));
|
||||
await knex.schema.alterTable('actors_avatars', (table) => table.dropIndex('media_id'));
|
||||
await knex.schema.alterTable('actors_photos', (table) => table.dropIndex('media_id'));
|
||||
await knex.schema.alterTable('chapters_photos', (table) => table.dropIndex('media_id'));
|
||||
await knex.schema.alterTable('chapters_posters', (table) => table.dropIndex('media_id'));
|
||||
await knex.schema.alterTable('movies_covers', (table) => table.dropIndex('media_id'));
|
||||
await knex.schema.alterTable('movies_photos', (table) => table.dropIndex('media_id'));
|
||||
await knex.schema.alterTable('movies_posters', (table) => table.dropIndex('media_id'));
|
||||
await knex.schema.alterTable('movies_teasers', (table) => table.dropIndex('media_id'));
|
||||
await knex.schema.alterTable('movies_trailers', (table) => table.dropIndex('media_id'));
|
||||
await knex.schema.alterTable('releases_caps', (table) => table.dropIndex('media_id'));
|
||||
await knex.schema.alterTable('releases_covers', (table) => table.dropIndex('media_id'));
|
||||
await knex.schema.alterTable('releases_posters', (table) => table.dropIndex('media_id'));
|
||||
await knex.schema.alterTable('releases_photos', (table) => table.dropIndex('media_id'));
|
||||
await knex.schema.alterTable('releases_teasers', (table) => table.dropIndex('media_id'));
|
||||
await knex.schema.alterTable('releases_trailers', (table) => table.dropIndex('media_id'));
|
||||
await knex.schema.alterTable('series_covers', (table) => table.dropIndex('media_id'));
|
||||
await knex.schema.alterTable('series_photos', (table) => table.dropIndex('media_id'));
|
||||
await knex.schema.alterTable('series_posters', (table) => table.dropIndex('media_id'));
|
||||
await knex.schema.alterTable('series_teasers', (table) => table.dropIndex('media_id'));
|
||||
await knex.schema.alterTable('series_trailers', (table) => table.dropIndex('media_id'));
|
||||
await knex.schema.alterTable('tags_photos', (table) => table.dropIndex('media_id'));
|
||||
await knex.schema.alterTable('tags_posters', (table) => table.dropIndex('media_id'));
|
||||
};
|
||||
Reference in New Issue
Block a user