diff --git a/_database/sql/migrations/2026-06-19-181006-0000_uploaded_videos/up.sql b/_database/sql/migrations/2026-06-19-181006-0000_uploaded_videos/up.sql index 144276645d..6fd0c27103 100644 --- a/_database/sql/migrations/2026-06-19-181006-0000_uploaded_videos/up.sql +++ b/_database/sql/migrations/2026-06-19-181006-0000_uploaded_videos/up.sql @@ -42,6 +42,12 @@ CREATE TABLE uploaded_videos ( -- IP address that last updated the row. Wide enough for IPv4/IPv6. maybe_updated_ip_address VARCHAR(40) DEFAULT NULL, + -- ========== VERSION ========== + + -- Optimistic-concurrency "vector clock". Bump by 1 on every update — set in + -- the UPDATE statement (MySQL can't auto-increment a plain column via schema). + version INT(8) UNSIGNED NOT NULL DEFAULT 0, + -- ========== TIMESTAMPS ========== created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, diff --git a/_database/sql/migrations/2026-06-19-181008-0000_uploaded_video_notes/up.sql b/_database/sql/migrations/2026-06-19-181008-0000_uploaded_video_notes/up.sql index e537ece265..a0377e6b6b 100644 --- a/_database/sql/migrations/2026-06-19-181008-0000_uploaded_video_notes/up.sql +++ b/_database/sql/migrations/2026-06-19-181008-0000_uploaded_video_notes/up.sql @@ -31,6 +31,17 @@ CREATE TABLE uploaded_video_notes ( -- Free-form comments from the submitter. maybe_comments VARCHAR(1024) DEFAULT NULL, + -- ========== CONTACT & FLAGS ========== + + -- Optional email address for follow-up. + email_address VARCHAR(255) DEFAULT NULL, + + -- Whether the submitter consents to us sharing the report. + can_share_report BOOLEAN NOT NULL DEFAULT FALSE, + + -- Whether the submitter believes they were scammed. + was_scammed BOOLEAN NOT NULL DEFAULT FALSE, + -- ========== IP ADDRESSES ========== -- IP address that submitted the note. Wide enough for IPv4/IPv6. @@ -39,6 +50,12 @@ CREATE TABLE uploaded_video_notes ( -- IP address that last updated the note. Wide enough for IPv4/IPv6. maybe_comment_update_ip_address VARCHAR(40) DEFAULT NULL, + -- ========== VERSION ========== + + -- Optimistic-concurrency "vector clock". Bump by 1 on every update — set in + -- the UPDATE statement (MySQL can't auto-increment a plain column via schema). + version INT(8) UNSIGNED NOT NULL DEFAULT 0, + -- ========== TIMESTAMPS ========== created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, diff --git a/_database/sql/migrations_squashed/uploaded_video_notes.sql b/_database/sql/migrations_squashed/uploaded_video_notes.sql index e537ece265..a0377e6b6b 100644 --- a/_database/sql/migrations_squashed/uploaded_video_notes.sql +++ b/_database/sql/migrations_squashed/uploaded_video_notes.sql @@ -31,6 +31,17 @@ CREATE TABLE uploaded_video_notes ( -- Free-form comments from the submitter. maybe_comments VARCHAR(1024) DEFAULT NULL, + -- ========== CONTACT & FLAGS ========== + + -- Optional email address for follow-up. + email_address VARCHAR(255) DEFAULT NULL, + + -- Whether the submitter consents to us sharing the report. + can_share_report BOOLEAN NOT NULL DEFAULT FALSE, + + -- Whether the submitter believes they were scammed. + was_scammed BOOLEAN NOT NULL DEFAULT FALSE, + -- ========== IP ADDRESSES ========== -- IP address that submitted the note. Wide enough for IPv4/IPv6. @@ -39,6 +50,12 @@ CREATE TABLE uploaded_video_notes ( -- IP address that last updated the note. Wide enough for IPv4/IPv6. maybe_comment_update_ip_address VARCHAR(40) DEFAULT NULL, + -- ========== VERSION ========== + + -- Optimistic-concurrency "vector clock". Bump by 1 on every update — set in + -- the UPDATE statement (MySQL can't auto-increment a plain column via schema). + version INT(8) UNSIGNED NOT NULL DEFAULT 0, + -- ========== TIMESTAMPS ========== created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, diff --git a/_database/sql/migrations_squashed/uploaded_videos.sql b/_database/sql/migrations_squashed/uploaded_videos.sql index 144276645d..6fd0c27103 100644 --- a/_database/sql/migrations_squashed/uploaded_videos.sql +++ b/_database/sql/migrations_squashed/uploaded_videos.sql @@ -42,6 +42,12 @@ CREATE TABLE uploaded_videos ( -- IP address that last updated the row. Wide enough for IPv4/IPv6. maybe_updated_ip_address VARCHAR(40) DEFAULT NULL, + -- ========== VERSION ========== + + -- Optimistic-concurrency "vector clock". Bump by 1 on every update — set in + -- the UPDATE statement (MySQL can't auto-increment a plain column via schema). + version INT(8) UNSIGNED NOT NULL DEFAULT 0, + -- ========== TIMESTAMPS ========== created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,