diff --git a/src/Simplex/FileTransfer/Server/Store/Postgres/Migrations.hs b/src/Simplex/FileTransfer/Server/Store/Postgres/Migrations.hs index 1914ecbd6..84f6b209e 100644 --- a/src/Simplex/FileTransfer/Server/Store/Postgres/Migrations.hs +++ b/src/Simplex/FileTransfer/Server/Store/Postgres/Migrations.hs @@ -14,7 +14,8 @@ import Text.RawString.QQ (r) xftpSchemaMigrations :: [(String, Text, Maybe Text)] xftpSchemaMigrations = - [ ("20260325_initial", m20260325_initial, Nothing) + [ ("20260325_initial", m20260325_initial, Nothing), + ("20260402_file_size_check", m20260402_file_size_check, Just down_m20260402_file_size_check) ] -- | The list of migrations in ascending order by date @@ -45,3 +46,15 @@ CREATE TABLE recipients ( CREATE INDEX idx_recipients_sender_id ON recipients (sender_id); CREATE INDEX idx_files_created_at ON files (created_at); |] + +m20260402_file_size_check :: Text +m20260402_file_size_check = + [r| +ALTER TABLE files ADD CONSTRAINT check_file_size_positive CHECK (file_size > 0); +|] + +down_m20260402_file_size_check :: Text +down_m20260402_file_size_check = + [r| +ALTER TABLE files DROP CONSTRAINT check_file_size_positive; +|]