Browse Source

Remove attempt to migrate from existing SMTP since it is unsafe in multi user environments and confusing + breaks relationships when entries are de-duped.

pull/169/head
William Woodson 5 years ago
parent
commit
5afaea8d6d
1 changed files with 1 additions and 31 deletions
  1. +1
    -31
      db/migrations/20160227180335_0.1.2_store-smtp-settings.sql

+ 1
- 31
db/migrations/20160227180335_0.1.2_store-smtp-settings.sql View File

@ -3,24 +3,8 @@
-- SQL in section 'Up' is executed when this migration is applied
-- Move the relationship between campaigns and smtp to campaigns
ALTER TABLE campaigns ADD COLUMN "smtp_id" bigint;
UPDATE campaigns
SET smtp_id = (
SELECT smtp.smtp_id
FROM smtp,campaigns
WHERE campaigns.id=smtp.campaign_id
)
;
-- Add the appropriate user_id to each smtp record
ALTER TABLE smtp ADD COLUMN "user_id" bigint;
UPDATE smtp
SET user_id = (
SELECT campaigns.user_id
FROM smtp,campaigns
WHERE smtp.smtp_id=campaigns.smtp_id
)
;
-- Create a new table to store smtp records
ALTER TABLE smtp RENAME TO smtp_old;
DROP TABLE smtp;
CREATE TABLE smtp(
id integer primary key autoincrement,
user_id bigint,
@ -33,20 +17,6 @@ CREATE TABLE smtp(
modified_date datetime default CURRENT_TIMESTAMP,
ignore_cert_errors BOOLEAN
);
-- Import existing smtp records into new format and drop the old table
INSERT INTO smtp (id,user_id,interface_type,name,host,username,from_address,ignore_cert_errors)
SELECT smtp_id,user_id,'SMTP',
'Imported campaign via ' || COALESCE(host,'') || ' from ' || COALESCE(from_address,''),
host,username,from_address,ignore_cert_errors
FROM smtp_old
-- Prevent insertion of duplicate records
WHERE smtp_id IN (
SELECT smtp_id
FROM smtp_old
GROUP BY user_id,host,from_address
)
;
DROP TABLE smtp_old;
-- +goose Down
-- SQL section 'Down' is executed when this migration is rolled back

Loading…
Cancel
Save