From 546111c187ff26bbd000b919a49f5cc73dac36cd Mon Sep 17 00:00:00 2001 From: freakolowsky Date: Wed, 10 Oct 2012 12:29:29 +0200 Subject: [PATCH] * Oracle schema update: rc_moved, cat_hidden, ss_admin * tables.sql + updater patches for *_content_(model|format) fieldswq Change-Id: Ifb0dfbcdf3da10cab2d71c2efa437ef4a878a1f8 --- includes/installer/OracleInstaller.php | 2 +- includes/installer/OracleUpdater.php | 3 +++ .../patch-archive-ar_content_format.sql | 3 +++ .../archives/patch-archive-ar_content_model.sql | 3 +++ .../oracle/archives/patch-cat_hidden.sql | 4 ++++ .../archives/patch-page-page_content_model.sql | 3 +++ maintenance/oracle/archives/patch-rc_moved.sql | 4 ++++ .../patch-revision-rev_content_format.sql | 3 +++ .../patch-revision-rev_content_model.sql | 3 +++ maintenance/oracle/archives/patch-ss_admins.sql | 4 ++++ maintenance/oracle/tables.sql | 17 ++++++++++------- 11 files changed, 41 insertions(+), 8 deletions(-) create mode 100644 maintenance/oracle/archives/patch-archive-ar_content_format.sql create mode 100644 maintenance/oracle/archives/patch-archive-ar_content_model.sql create mode 100644 maintenance/oracle/archives/patch-cat_hidden.sql create mode 100644 maintenance/oracle/archives/patch-page-page_content_model.sql create mode 100644 maintenance/oracle/archives/patch-rc_moved.sql create mode 100644 maintenance/oracle/archives/patch-revision-rev_content_format.sql create mode 100644 maintenance/oracle/archives/patch-revision-rev_content_model.sql create mode 100644 maintenance/oracle/archives/patch-ss_admins.sql diff --git a/includes/installer/OracleInstaller.php b/includes/installer/OracleInstaller.php index 72ec800d55..845816e566 100644 --- a/includes/installer/OracleInstaller.php +++ b/includes/installer/OracleInstaller.php @@ -40,7 +40,7 @@ class OracleInstaller extends DatabaseInstaller { protected $internalDefaults = array( '_OracleDefTS' => 'USERS', '_OracleTempTS' => 'TEMP', - '_InstallUser' => 'SYSDBA', + '_InstallUser' => 'SYSTEM', ); public $minimumVersion = '9.0.1'; // 9iR1 diff --git a/includes/installer/OracleUpdater.php b/includes/installer/OracleUpdater.php index 2f2013571a..f946d59a96 100644 --- a/includes/installer/OracleUpdater.php +++ b/includes/installer/OracleUpdater.php @@ -70,6 +70,7 @@ class OracleUpdater extends DatabaseUpdater { array( 'addTable', 'config', 'patch-config.sql' ), array( 'addIndex', 'ipblocks', 'i05', 'patch-ipblocks_i05_index.sql' ), array( 'addIndex', 'revision', 'i05', 'patch-revision_i05_index.sql' ), + array( 'dropField', 'category', 'cat_hidden', 'patch-cat_hidden.sql' ), //1.21 array( 'addField', 'revision', 'rev_content_format', 'patch-revision-rev_content_format.sql' ), @@ -77,6 +78,8 @@ class OracleUpdater extends DatabaseUpdater { array( 'addField', 'archive', 'ar_content_format', 'patch-archive-ar_content_format.sql' ), array( 'addField', 'archive', 'ar_content_model', 'patch-archive-ar_content_model.sql' ), array( 'addField', 'page', 'page_content_model', 'patch-page-page_content_model.sql' ), + array( 'dropField', 'site_stats', 'ss_admins', 'patch-ss_admins.sql' ), + array( 'dropField', 'recentchanges', 'rc_moved_to_title', 'patch-rc_moved.sql' ), // KEEP THIS AT THE BOTTOM!! array( 'doRebuildDuplicateFunction' ), diff --git a/maintenance/oracle/archives/patch-archive-ar_content_format.sql b/maintenance/oracle/archives/patch-archive-ar_content_format.sql new file mode 100644 index 0000000000..0c0c0d94e5 --- /dev/null +++ b/maintenance/oracle/archives/patch-archive-ar_content_format.sql @@ -0,0 +1,3 @@ +define mw_prefix='{$wgDBprefix}'; + +ALTER TABLE &mw_prefix.archive ADD ar_content_format VARCHAR2(64); diff --git a/maintenance/oracle/archives/patch-archive-ar_content_model.sql b/maintenance/oracle/archives/patch-archive-ar_content_model.sql new file mode 100644 index 0000000000..d18fc9e411 --- /dev/null +++ b/maintenance/oracle/archives/patch-archive-ar_content_model.sql @@ -0,0 +1,3 @@ +define mw_prefix='{$wgDBprefix}'; + +ALTER TABLE &mw_prefix.archive ADD ar_content_model VARCHAR2(32); diff --git a/maintenance/oracle/archives/patch-cat_hidden.sql b/maintenance/oracle/archives/patch-cat_hidden.sql new file mode 100644 index 0000000000..d1649c7c12 --- /dev/null +++ b/maintenance/oracle/archives/patch-cat_hidden.sql @@ -0,0 +1,4 @@ +define mw_prefix='{$wgDBprefix}'; + +ALTER TABLE &mw_prefix.category DROP COLUMN cat_hidden; + diff --git a/maintenance/oracle/archives/patch-page-page_content_model.sql b/maintenance/oracle/archives/patch-page-page_content_model.sql new file mode 100644 index 0000000000..e5839d9af8 --- /dev/null +++ b/maintenance/oracle/archives/patch-page-page_content_model.sql @@ -0,0 +1,3 @@ +define mw_prefix='{$wgDBprefix}'; + +ALTER TABLE &mw_prefix.page ADD page_content_model VARCHAR2(32); diff --git a/maintenance/oracle/archives/patch-rc_moved.sql b/maintenance/oracle/archives/patch-rc_moved.sql new file mode 100644 index 0000000000..2a71315d91 --- /dev/null +++ b/maintenance/oracle/archives/patch-rc_moved.sql @@ -0,0 +1,4 @@ +define mw_prefix='{$wgDBprefix}'; + +ALTER TABLE &mw_prefix.recentchanges DROP ( rc_moved_to_ns, rc_moved_to_title ); + diff --git a/maintenance/oracle/archives/patch-revision-rev_content_format.sql b/maintenance/oracle/archives/patch-revision-rev_content_format.sql new file mode 100644 index 0000000000..ebde71c963 --- /dev/null +++ b/maintenance/oracle/archives/patch-revision-rev_content_format.sql @@ -0,0 +1,3 @@ +define mw_prefix='{$wgDBprefix}'; + +ALTER TABLE &mw_prefix.revision ADD rev_content_format VARCHAR2(64); diff --git a/maintenance/oracle/archives/patch-revision-rev_content_model.sql b/maintenance/oracle/archives/patch-revision-rev_content_model.sql new file mode 100644 index 0000000000..dd2264233f --- /dev/null +++ b/maintenance/oracle/archives/patch-revision-rev_content_model.sql @@ -0,0 +1,3 @@ +define mw_prefix='{$wgDBprefix}'; + +ALTER TABLE &mw_prefix.revision ADD rev_content_model VARCHAR2(32); diff --git a/maintenance/oracle/archives/patch-ss_admins.sql b/maintenance/oracle/archives/patch-ss_admins.sql new file mode 100644 index 0000000000..c2e9242e29 --- /dev/null +++ b/maintenance/oracle/archives/patch-ss_admins.sql @@ -0,0 +1,4 @@ +define mw_prefix='{$wgDBprefix}'; + +ALTER TABLE &mw_prefix.site_stats DROP COLUMN ss_admins; + diff --git a/maintenance/oracle/tables.sql b/maintenance/oracle/tables.sql index 3f9b37614c..d0712e3de3 100644 --- a/maintenance/oracle/tables.sql +++ b/maintenance/oracle/tables.sql @@ -73,7 +73,8 @@ CREATE TABLE &mw_prefix.page ( page_random NUMBER(15,14) NOT NULL, page_touched TIMESTAMP(6) WITH TIME ZONE, page_latest NUMBER DEFAULT 0 NOT NULL, -- FK? - page_len NUMBER DEFAULT 0 NOT NULL + page_len NUMBER DEFAULT 0 NOT NULL, + page_content_model VARCHAR2(32) ); ALTER TABLE &mw_prefix.page ADD CONSTRAINT &mw_prefix.page_pk PRIMARY KEY (page_id); CREATE UNIQUE INDEX &mw_prefix.page_u01 ON &mw_prefix.page (page_namespace,page_title); @@ -83,7 +84,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); + VALUES (0, 0, ' ', NULL, 0, 0, 0, 0, current_timestamp, 0, 0, NULL); /*$mw$*/ CREATE TRIGGER &mw_prefix.page_set_random BEFORE INSERT ON &mw_prefix.page @@ -106,7 +107,9 @@ CREATE TABLE &mw_prefix.revision ( rev_deleted CHAR(1) DEFAULT '0' NOT NULL, rev_len NUMBER NULL, rev_parent_id NUMBER DEFAULT NULL, - rev_sha1 VARCHAR2(32) NULL + rev_sha1 VARCHAR2(32) NULL, + rev_content_model VARCHAR2(32), + rev_content_format VARCHAR2(64) ); ALTER TABLE &mw_prefix.revision ADD CONSTRAINT &mw_prefix.revision_pk PRIMARY KEY (rev_id); ALTER TABLE &mw_prefix.revision ADD CONSTRAINT &mw_prefix.revision_fk1 FOREIGN KEY (rev_page) REFERENCES &mw_prefix.page(page_id) ON DELETE CASCADE DEFERRABLE INITIALLY DEFERRED; @@ -142,7 +145,9 @@ CREATE TABLE &mw_prefix.archive ( ar_len NUMBER, ar_page_id NUMBER, ar_parent_id NUMBER, - ar_sha1 VARCHAR2(32) NULL + ar_sha1 VARCHAR2(32), + ar_content_model VARCHAR2(32), + ar_content_format VARCHAR2(64) ); ALTER TABLE &mw_prefix.archive ADD CONSTRAINT &mw_prefix.archive_fk1 FOREIGN KEY (ar_user) REFERENCES &mw_prefix.mwuser(user_id) ON DELETE SET NULL DEFERRABLE INITIALLY DEFERRED; CREATE INDEX &mw_prefix.archive_i01 ON &mw_prefix.archive (ar_namespace,ar_title,ar_timestamp); @@ -197,8 +202,7 @@ CREATE TABLE &mw_prefix.category ( cat_title VARCHAR2(255) NOT NULL, cat_pages NUMBER DEFAULT 0 NOT NULL, cat_subcats NUMBER DEFAULT 0 NOT NULL, - cat_files NUMBER DEFAULT 0 NOT NULL, - cat_hidden NUMBER DEFAULT 0 NOT NULL + cat_files NUMBER DEFAULT 0 NOT NULL ); ALTER TABLE &mw_prefix.category ADD CONSTRAINT &mw_prefix.category_pk PRIMARY KEY (cat_id); CREATE UNIQUE INDEX &mw_prefix.category_u01 ON &mw_prefix.category (cat_title); @@ -246,7 +250,6 @@ CREATE TABLE &mw_prefix.site_stats ( ss_total_pages NUMBER DEFAULT -1, ss_users NUMBER DEFAULT -1, ss_active_users NUMBER DEFAULT -1, - ss_admins NUMBER DEFAULT -1, ss_images NUMBER DEFAULT 0 ); CREATE UNIQUE INDEX &mw_prefix.site_stats_u01 ON &mw_prefix.site_stats (ss_row_id); -- 2.20.1