Fix SQL schema issues across all database engines

- Increase password column from varchar(64) to varchar(255) to
  prevent silent truncation of encrypted passwords
- Add missing UNIQUE constraint on iid in MySQL
- Add missing IX_ident_switch_iid index in PostgreSQL
- Remove deprecated int display width in MySQL (int(10) -> int)
- Fix trailing comma syntax error in SQLite 2018121800 migration
- Normalize indentation across all initial SQL files
- Add migration 2026021000 for all engines to fix existing installs
This commit is contained in:
Laurent Dinclaux
2026-02-10 10:35:20 +11:00
parent 958af7769f
commit 3c4d856d60
7 changed files with 113 additions and 31 deletions

View File

@@ -15,14 +15,14 @@ CREATE TABLE ident_switch
username
varchar(64),
password
varchar(64),
varchar(255),
imap_host
varchar(64),
imap_port
integer
CHECK(imap_port > 0 AND imap_port <= 65535),
imap_delimiter
char(1),
char(1),
label
varchar(32),
flags
@@ -30,26 +30,24 @@ CREATE TABLE ident_switch
NOT NULL
DEFAULT(0),
smtp_host
varchar(64),
smtp_port
varchar(64),
smtp_port
integer
CHECK(smtp_port > 0 AND smtp_port <= 65535),
smtp_auth
smallint
NOT NULL
DEFAULT(1),
drafts_mbox
varchar(64),
sent_mbox
varchar(64),
junk_mbox
varchar(64),
trash_mbox
varchar(64),
smallint
NOT NULL
DEFAULT(1),
drafts_mbox
varchar(64),
sent_mbox
varchar(64),
junk_mbox
varchar(64),
trash_mbox
varchar(64),
UNIQUE (user_id, label)
);
CREATE INDEX
IX_ident_switch_user_id
ON
ident_switch(user_id);
CREATE INDEX IX_ident_switch_user_id ON ident_switch(user_id);
CREATE INDEX IX_ident_switch_iid ON ident_switch(iid);