From 78922b9877e72c6962ac67f5afe28476914139ad Mon Sep 17 00:00:00 2001 From: freakolowsky Date: Thu, 6 Feb 2014 08:15:38 +0100 Subject: [PATCH] Fix Oracle 1.23 missing patches (rebase) also fixed wrong definition of password expire filed DEFAULT was unnecessary and faulty (has to be before NULLABLE clause) and changed the null-user insert Change-Id: Ia91ed19bd4e3380f396ef895745dbd2014e1eb8b --- includes/installer/OracleUpdater.php | 2 ++ .../oracle/archives/patch-page_links_updated.sql | 4 ++++ maintenance/oracle/archives/patch-rc_source.sql | 3 +++ .../oracle/archives/patch-user_password_expire.sql | 2 +- maintenance/oracle/tables.sql | 11 +++++++---- 5 files changed, 17 insertions(+), 5 deletions(-) create mode 100644 maintenance/oracle/archives/patch-page_links_updated.sql create mode 100644 maintenance/oracle/archives/patch-rc_source.sql diff --git a/includes/installer/OracleUpdater.php b/includes/installer/OracleUpdater.php index 02116eada2..edb0cb128d 100644 --- a/includes/installer/OracleUpdater.php +++ b/includes/installer/OracleUpdater.php @@ -97,6 +97,8 @@ class OracleUpdater extends DatabaseUpdater { array( 'addIndex', 'logging', 'i06', 'patch-logging_user_text_type_time_index.sql' ), array( 'addIndex', 'logging', 'i07', 'patch-logging_user_text_time_index.sql' ), array( 'addField', 'user', 'user_password_expires', 'patch-user_password_expire.sql' ), + array( 'addField', 'page', 'page_links_updated', 'patch-page_links_updated.sql' ), + array( 'addField', 'recentchanges', 'rc_source', 'patch-rc_source.sql' ), // KEEP THIS AT THE BOTTOM!! array( 'doRebuildDuplicateFunction' ), diff --git a/maintenance/oracle/archives/patch-page_links_updated.sql b/maintenance/oracle/archives/patch-page_links_updated.sql new file mode 100644 index 0000000000..5360329476 --- /dev/null +++ b/maintenance/oracle/archives/patch-page_links_updated.sql @@ -0,0 +1,4 @@ +define mw_prefix='{$wgDBprefix}'; + +ALTER TABLE &mw_prefix.page ADD page_links_updated TIMESTAMP(6) WITH TIME ZONE; + diff --git a/maintenance/oracle/archives/patch-rc_source.sql b/maintenance/oracle/archives/patch-rc_source.sql new file mode 100644 index 0000000000..0c80afab1a --- /dev/null +++ b/maintenance/oracle/archives/patch-rc_source.sql @@ -0,0 +1,3 @@ +define mw_prefix='{$wgDBprefix}'; + +ALTER TABLE &mw_prefix.recentchanges ADD rc_source VARCHAR2(16); diff --git a/maintenance/oracle/archives/patch-user_password_expire.sql b/maintenance/oracle/archives/patch-user_password_expire.sql index 8e752dae4e..824cc82094 100644 --- a/maintenance/oracle/archives/patch-user_password_expire.sql +++ b/maintenance/oracle/archives/patch-user_password_expire.sql @@ -1,3 +1,3 @@ define mw_prefix='{$wgDBprefix}'; -ALTER TABLE &mw_prefix.mwuser ADD user_password_expires TIMESTAMP(6) WITH TIME ZONE NULL DEFAULT NULL; +ALTER TABLE &mw_prefix.mwuser ADD user_password_expires TIMESTAMP(6) WITH TIME ZONE; diff --git a/maintenance/oracle/tables.sql b/maintenance/oracle/tables.sql index f05c0cc16e..ff8485851e 100644 --- a/maintenance/oracle/tables.sql +++ b/maintenance/oracle/tables.sql @@ -19,7 +19,7 @@ CREATE TABLE &mw_prefix.mwuser ( -- replace reserved word 'user' user_touched TIMESTAMP(6) WITH TIME ZONE, user_registration TIMESTAMP(6) WITH TIME ZONE, user_editcount NUMBER, - user_password_expires TIMESTAMP(6) WITH TIME ZONE NULL DEFAULT NULL + user_password_expires TIMESTAMP(6) WITH TIME ZONE ); ALTER TABLE &mw_prefix.mwuser ADD CONSTRAINT &mw_prefix.mwuser_pk PRIMARY KEY (user_id); CREATE UNIQUE INDEX &mw_prefix.mwuser_u01 ON &mw_prefix.mwuser (user_name); @@ -28,7 +28,8 @@ CREATE INDEX &mw_prefix.mwuser_i02 ON &mw_prefix.mwuser (user_email, user_name); -- Create a dummy user to satisfy fk contraints especially with revisions INSERT INTO &mw_prefix.mwuser - VALUES (0,'Anonymous',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL, '', current_timestamp, current_timestamp, 0); + (user_id, user_name, user_options, user_touched, user_registration, user_editcount) + VALUES (0,'Anonymous','', current_timestamp, current_timestamp,0); CREATE TABLE &mw_prefix.user_groups ( ug_user NUMBER DEFAULT 0 NOT NULL, @@ -73,6 +74,7 @@ CREATE TABLE &mw_prefix.page ( page_is_new CHAR(1) DEFAULT '0' NOT NULL, page_random NUMBER(15,14) NOT NULL, page_touched TIMESTAMP(6) WITH TIME ZONE, + page_links_updated TIMESTAMP(6) WITH TIME ZONE, page_latest NUMBER DEFAULT 0 NOT NULL, -- FK? page_len NUMBER DEFAULT 0 NOT NULL, page_content_model VARCHAR2(32) @@ -85,7 +87,7 @@ CREATE INDEX &mw_prefix.page_i03 ON &mw_prefix.page (page_is_redirect, page_name -- Create a dummy page to satisfy fk contraints especially with revisions INSERT INTO &mw_prefix.page - VALUES (0, 0, ' ', NULL, 0, 0, 0, 0, current_timestamp, 0, 0, NULL); + VALUES (0, 0, ' ', NULL, 0, 0, 0, 0, current_timestamp, NULL, 0, 0, NULL); /*$mw$*/ CREATE TRIGGER &mw_prefix.page_set_random BEFORE INSERT ON &mw_prefix.page @@ -403,7 +405,7 @@ CREATE SEQUENCE recentchanges_rc_id_seq; CREATE TABLE &mw_prefix.recentchanges ( rc_id NUMBER NOT NULL, rc_timestamp TIMESTAMP(6) WITH TIME ZONE NOT NULL, - rc_cur_time TIMESTAMP(6) WITH TIME ZONE NOT NULL, + rc_cur_time TIMESTAMP(6) WITH TIME ZONE, rc_user NUMBER DEFAULT 0 NOT NULL, rc_user_text VARCHAR2(255) NOT NULL, rc_namespace NUMBER DEFAULT 0 NOT NULL, @@ -416,6 +418,7 @@ CREATE TABLE &mw_prefix.recentchanges ( rc_this_oldid NUMBER DEFAULT 0 NOT NULL, rc_last_oldid NUMBER DEFAULT 0 NOT NULL, rc_type CHAR(1) DEFAULT '0' NOT NULL, + rc_source VARCHAR2(16), rc_patrolled CHAR(1) DEFAULT '0' NOT NULL, rc_ip VARCHAR2(15), rc_old_len NUMBER, -- 2.20.1