From 5cb1e789daafc3f683171c13976868b94de6e8d4 Mon Sep 17 00:00:00 2001 From: Brandon Thomas Date: Fri, 23 Aug 2024 02:35:27 -0400 Subject: [PATCH] Add two new columns to media_files: watermark, upload --- .../down.sql | 5 +++++ .../up.sql | 12 ++++++++++++ .../down.sql | 5 +++++ .../up.sql | 8 ++++++++ _sql/migrations_squashed/media_files.sql | 9 +++++++++ 5 files changed, 39 insertions(+) create mode 100644 _sql/migrations/2024-08-23-062514_alter_media_files_add_is_user_upload/down.sql create mode 100644 _sql/migrations/2024-08-23-062514_alter_media_files_add_is_user_upload/up.sql create mode 100644 _sql/migrations/2024-08-23-062529_alter_media_files_add_has_watermark/down.sql create mode 100644 _sql/migrations/2024-08-23-062529_alter_media_files_add_has_watermark/up.sql diff --git a/_sql/migrations/2024-08-23-062514_alter_media_files_add_is_user_upload/down.sql b/_sql/migrations/2024-08-23-062514_alter_media_files_add_is_user_upload/down.sql new file mode 100644 index 0000000000..c68fcb16f4 --- /dev/null +++ b/_sql/migrations/2024-08-23-062514_alter_media_files_add_is_user_upload/down.sql @@ -0,0 +1,5 @@ +-- noinspection SqlDialectInspectionForFile +-- noinspection SqlNoDataSourceInspectionForFile +-- noinspection SqlResolveForFile + +ALTER TABLE media_files DROP COLUMN is_user_upload; diff --git a/_sql/migrations/2024-08-23-062514_alter_media_files_add_is_user_upload/up.sql b/_sql/migrations/2024-08-23-062514_alter_media_files_add_is_user_upload/up.sql new file mode 100644 index 0000000000..9c2362689b --- /dev/null +++ b/_sql/migrations/2024-08-23-062514_alter_media_files_add_is_user_upload/up.sql @@ -0,0 +1,12 @@ +-- noinspection SqlDialectInspectionForFile +-- noinspection SqlNoDataSourceInspectionForFile +-- noinspection SqlResolveForFile + +ALTER TABLE media_files + ADD COLUMN is_user_upload BOOLEAN NOT NULL DEFAULT FALSE + AFTER maybe_batch_token; + + ALTER TABLE media_files + ADD INDEX index_media_files_is_user_upload (is_user_upload), + ALGORITHM=INPLACE, LOCK=NONE; + diff --git a/_sql/migrations/2024-08-23-062529_alter_media_files_add_has_watermark/down.sql b/_sql/migrations/2024-08-23-062529_alter_media_files_add_has_watermark/down.sql new file mode 100644 index 0000000000..096e74c918 --- /dev/null +++ b/_sql/migrations/2024-08-23-062529_alter_media_files_add_has_watermark/down.sql @@ -0,0 +1,5 @@ +-- noinspection SqlDialectInspectionForFile +-- noinspection SqlNoDataSourceInspectionForFile +-- noinspection SqlResolveForFile + +ALTER TABLE media_files DROP COLUMN has_watermark; diff --git a/_sql/migrations/2024-08-23-062529_alter_media_files_add_has_watermark/up.sql b/_sql/migrations/2024-08-23-062529_alter_media_files_add_has_watermark/up.sql new file mode 100644 index 0000000000..b800e1b0fe --- /dev/null +++ b/_sql/migrations/2024-08-23-062529_alter_media_files_add_has_watermark/up.sql @@ -0,0 +1,8 @@ +-- noinspection SqlDialectInspectionForFile +-- noinspection SqlNoDataSourceInspectionForFile +-- noinspection SqlResolveForFile + +ALTER TABLE media_files + ADD COLUMN has_watermark BOOLEAN NOT NULL DEFAULT FALSE + AFTER checksum_sha2; + diff --git a/_sql/migrations_squashed/media_files.sql b/_sql/migrations_squashed/media_files.sql index d461d4bb7a..426bfd8bc2 100644 --- a/_sql/migrations_squashed/media_files.sql +++ b/_sql/migrations_squashed/media_files.sql @@ -80,6 +80,10 @@ CREATE TABLE media_files ( -- ========== METADATA ========== + -- If the file is a user upload (not including studio renders). + -- Users can see these, but we may want to filter them out of most views. + is_user_upload BOOLEAN NOT NULL DEFAULT FALSE, + -- If the file is generated as an intermediate step that we won't share. -- Eg. cover image uploads, 3D engine renders, etc. is_intermediate_system_file BOOLEAN NOT NULL DEFAULT FALSE, @@ -192,6 +196,10 @@ CREATE TABLE media_files ( -- and produces different lengths output depending on the choice of algorithm. checksum_sha2 CHAR(64) NOT NULL, + -- Whether the image or video has a visible watermark. + -- If so, we may not need to add a watermark downstream in further processing steps. + has_watermark BOOLEAN NOT NULL DEFAULT FALSE, + -- ========== UPLOAD, TRANSCODING, AND TRUNCATION DETAILS ========== -- The hash for the bucket directory that contains the original upload @@ -295,6 +303,7 @@ CREATE TABLE media_files ( KEY fk_maybe_origin_model_token (maybe_origin_model_token), KEY fk_maybe_origin_model_type_and_token (maybe_origin_model_type, maybe_origin_model_token), KEY index_maybe_batch_token (maybe_batch_token), + KEY index_is_user_upload (is_user_upload), KEY index_is_intermediate_system_file (is_intermediate_system_file), KEY index_maybe_scene_source_media_file_token (maybe_scene_source_media_file_token), KEY index_nsfw_status (nsfw_status),