* Oracle schema update to latest (tested with phpunit)
authorJure Kajzer <freakolowsky@users.mediawiki.org>
Tue, 24 Jan 2012 09:48:26 +0000 (09:48 +0000)
committerJure Kajzer <freakolowsky@users.mediawiki.org>
Tue, 24 Jan 2012 09:48:26 +0000 (09:48 +0000)
* Fixed a message typo in DatabaseUpdater

includes/installer/DatabaseUpdater.php
includes/installer/OracleUpdater.php
maintenance/oracle/archives/patch-job_timestamp_field.sql [new file with mode: 0644]
maintenance/oracle/archives/patch-job_timestamp_index.sql [new file with mode: 0644]
maintenance/oracle/archives/patch-us_chunk_inx_field.sql [new file with mode: 0644]
maintenance/oracle/tables.sql

index ef8228d..f2e36ae 100644 (file)
@@ -465,9 +465,9 @@ abstract class DatabaseUpdater {
         */
        protected function addIndex( $table, $index, $patch, $fullpath = false ) {
                if ( $this->db->indexExists( $table, $index, __METHOD__ ) ) {
-                       $this->output( "...$index key already set on $table table.\n" );
+                       $this->output( "...index $index already set on $table table.\n" );
                } else {
-                       $this->output( "Adding $index key to table $table... " );
+                       $this->output( "Adding index $index to table $table... " );
                        $this->applyPatch( $patch, $fullpath );
                        $this->output( "done.\n" );
                }
index d94b47b..366cd44 100644 (file)
@@ -49,6 +49,9 @@ class OracleUpdater extends DatabaseUpdater {
                        array( 'doRemoveNotNullEmptyDefaults2' ),
                        array( 'addIndex', 'page', 'i03', 'patch-page_redirect_namespace_len.sql' ),
                        array( 'modifyField', 'user', 'ug_group', 'patch-ug_group-length-increase.sql' ),
+                       array( 'addField', 'uploadstash', 'us_chunk_inx', 'patch-us_chunk_inx_field.sql' ),
+                       array( 'addField', 'job', 'job_timestamp', 'patch-job_timestamp_field.sql' ),
+                       array( 'addIndex', 'job', 'i02', 'patch-job_timestamp_index.sql' ),
 
                        // KEEP THIS AT THE BOTTOM!!
                        array( 'doRebuildDuplicateFunction' ),
diff --git a/maintenance/oracle/archives/patch-job_timestamp_field.sql b/maintenance/oracle/archives/patch-job_timestamp_field.sql
new file mode 100644 (file)
index 0000000..4901c87
--- /dev/null
@@ -0,0 +1,4 @@
+define mw_prefix='{$wgDBprefix}';
+
+ALTER TABLE &mw_prefix.job ADD job_timestamp            TIMESTAMP(6) WITH TIME ZONE NULL;
+
diff --git a/maintenance/oracle/archives/patch-job_timestamp_index.sql b/maintenance/oracle/archives/patch-job_timestamp_index.sql
new file mode 100644 (file)
index 0000000..6db4304
--- /dev/null
@@ -0,0 +1,4 @@
+define mw_prefix='{$wgDBprefix}';
+
+CREATE INDEX &mw_prefix.job_i02 ON &mw_prefix.job (job_timestamp);
+
diff --git a/maintenance/oracle/archives/patch-us_chunk_inx_field.sql b/maintenance/oracle/archives/patch-us_chunk_inx_field.sql
new file mode 100644 (file)
index 0000000..43ee16e
--- /dev/null
@@ -0,0 +1,4 @@
+define mw_prefix='{$wgDBprefix}';
+
+ALTER TABLE &mw_prefix.uploadstash ADD us_chunk_inx              NUMBER;
+
index cf5bf3c..9f875ae 100644 (file)
@@ -375,6 +375,7 @@ CREATE TABLE &mw_prefix.uploadstash (
        us_source_type                          VARCHAR2(50),
   us_timestamp          TIMESTAMP(6) WITH TIME ZONE,
        us_status                                                       VARCHAR2(50) NOT NULL,
+       us_chunk_inx                                            NUMBER,
        us_size                                                         NUMBER NOT NULL,
        us_sha1                                                         VARCHAR2(32) NOT NULL,
        us_mime                                                         VARCHAR2(255),
@@ -518,10 +519,12 @@ CREATE TABLE &mw_prefix.job (
   job_cmd        VARCHAR2(60)      NOT NULL,
   job_namespace  NUMBER  DEFAULT 0 NOT NULL,
   job_title      VARCHAR2(255)      NOT NULL,
+  job_timestamp         TIMESTAMP(6) WITH TIME ZONE NULL,
   job_params     CLOB      NOT NULL
 );
 ALTER TABLE &mw_prefix.job ADD CONSTRAINT &mw_prefix.job_pk PRIMARY KEY (job_id);
 CREATE INDEX &mw_prefix.job_i01 ON &mw_prefix.job (job_cmd, job_namespace, job_title);
+CREATE INDEX &mw_prefix.job_i02 ON &mw_prefix.job (job_timestamp);
 
 CREATE TABLE &mw_prefix.querycache_info (
   qci_type       VARCHAR2(32) NOT NULL,