From af572f50e3864bbd86e08560b13fe2ad65d9ca5c Mon Sep 17 00:00:00 2001 From: Aaron Schulz Date: Thu, 31 May 2007 15:26:15 +0000 Subject: [PATCH] *Restore oldimage schema changes removed temporarily in r21957 (with some index modifications) --- maintenance/archives/patch-oi_metadata.sql | 16 ++++++++++++++++ maintenance/ora/tables.sql | 12 +++++++++--- maintenance/postgres/tables.sql | 12 +++++++++--- maintenance/tables.sql | 9 ++++++++- 4 files changed, 42 insertions(+), 7 deletions(-) create mode 100644 maintenance/archives/patch-oi_metadata.sql diff --git a/maintenance/archives/patch-oi_metadata.sql b/maintenance/archives/patch-oi_metadata.sql new file mode 100644 index 0000000000..4a5b3621ee --- /dev/null +++ b/maintenance/archives/patch-oi_metadata.sql @@ -0,0 +1,16 @@ +-- +-- patch-indexes.sql +-- +-- Add data to allow for direct reference to old images +-- They can be included into pages +-- + +ALTER TABLE /*$wgDBprefix*/oldimage + DROP INDEX oi_name, + ADD INDEX oi_name_timestamp (oi_name,oi_timestamp), + ADD INDEX oi_name_archive_name (oi_name,oi_archive_name), + ADD oi_metadata mediumblob NOT NULL, + ADD oi_media_type ENUM("UNKNOWN", "BITMAP", "DRAWING", "AUDIO", "VIDEO", "MULTIMEDIA", "OFFICE", "TEXT", "EXECUTABLE", "ARCHIVE") default NULL, + ADD oi_major_mime ENUM("unknown", "application", "audio", "image", "text", "video", "message", "model", "multipart") NOT NULL default "unknown", + ADD oi_minor_mime varchar(32) NOT NULL default "unknown", + ADD oi_deleted tinyint(1) unsigned NOT NULL default '0', \ No newline at end of file diff --git a/maintenance/ora/tables.sql b/maintenance/ora/tables.sql index 7b8dc80a3d..6d4b8ed503 100644 --- a/maintenance/ora/tables.sql +++ b/maintenance/ora/tables.sql @@ -244,9 +244,15 @@ CREATE TABLE oldimage ( oi_description CLOB, oi_user INTEGER NULL REFERENCES mwuser(user_id) ON DELETE SET NULL, oi_user_text CLOB NOT NULL, - oi_timestamp TIMESTAMP WITH TIME ZONE NOT NULL -); -CREATE INDEX oi_name ON oldimage (oi_name); + oi_timestamp TIMESTAMP WITH TIME ZONE NOT NULL, + oi_metadata CLOB, + oi_media_type VARCHAR(10) DEFAULT NULL, + oi_major_mime VARCHAR(11) DEFAULT 'unknown', + oi_minor_mime VARCHAR(32) DEFAULT 'unknown', + oi_deleted INTEGER DEFAULT 0 NOT NULL +); +CREATE INDEX oi_name_timestamp ON oldimage (oi_name,oi_timestamp); +CREATE INDEX oi_name_archive_name ON oldimage (oi_name,oi_archive_name); CREATE SEQUENCE filearchive_fa_id_seq; CREATE TABLE filearchive ( diff --git a/maintenance/postgres/tables.sql b/maintenance/postgres/tables.sql index 1c7c42dcb0..8bcf3a5de6 100644 --- a/maintenance/postgres/tables.sql +++ b/maintenance/postgres/tables.sql @@ -262,9 +262,15 @@ CREATE TABLE oldimage ( oi_description TEXT, oi_user INTEGER NULL REFERENCES mwuser(user_id) ON DELETE SET NULL, oi_user_text TEXT NOT NULL, - oi_timestamp TIMESTAMPTZ NOT NULL -); -CREATE INDEX oi_name ON oldimage (oi_name); + oi_timestamp TIMESTAMPTZ NOT NULL, + oi_metadata BYTEA NOT NULL, + oi_media_type TEXT NULL, + oi_major_mime TEXT NOT NULL DEFAULT 'unknown', + oi_minor_mime TEXT NOT NULL DEFAULT 'unknown', + oi_deleted CHAR NOT NULL DEFAULT '0' +); +CREATE INDEX oi_name_timestamp ON oldimage (oi_name,oi_timestamp); +CREATE INDEX oi_name_archive_name ON oldimage (oi_name,oi_archive_name); CREATE TABLE filearchive ( diff --git a/maintenance/tables.sql b/maintenance/tables.sql index 2e50070492..5818543ec3 100644 --- a/maintenance/tables.sql +++ b/maintenance/tables.sql @@ -716,7 +716,14 @@ CREATE TABLE /*$wgDBprefix*/oldimage ( oi_user_text varchar(255) binary NOT NULL, oi_timestamp char(14) binary NOT NULL default '', - INDEX oi_name (oi_name(10)) + oi_metadata mediumblob NOT NULL, + oi_media_type ENUM("UNKNOWN", "BITMAP", "DRAWING", "AUDIO", "VIDEO", "MULTIMEDIA", "OFFICE", "TEXT", "EXECUTABLE", "ARCHIVE") default NULL, + oi_major_mime ENUM("unknown", "application", "audio", "image", "text", "video", "message", "model", "multipart") NOT NULL default "unknown", + oi_minor_mime varchar(32) NOT NULL default "unknown", + oi_deleted tinyint(1) unsigned NOT NULL default '0', + + INDEX oi_name_timestamp (oi_name,oi_timestamp), + INDEX oi_name_archive_name (oi_name,oi_archive_name) ) /*$wgDBTableOptions*/; -- 2.20.1