Cleanup r55984: rename new $wgDisableTooltipsAndAccesskeys to $wgEnableTooltipsAndAcc...
[lhc/web/wiklou.git] / maintenance / ora / tables.sql
index 61211fb..66fc60a 100644 (file)
@@ -1,4 +1,5 @@
-DEFINE mw_prefix='';
+-- defines must comply with ^define\s*([^\s=]*)\s*=\s?'\{\$([^\}]*)\}';
+define mw_prefix='{$wgDBprefix}';
 
 
 CREATE SEQUENCE user_user_id_seq MINVALUE 0 START WITH 0;
@@ -45,7 +46,7 @@ CREATE INDEX &mw_prefix.user_newtalk_i02 ON &mw_prefix.user_newtalk (user_ip);
 CREATE TABLE &mw_prefix.user_properties (
   up_user NUMBER NOT NULL,
   up_property VARCHAR2(32) NOT NULL,
-  up_value BLOB
+  up_value CLOB
 );
 CREATE UNIQUE INDEX &mw_prefix.user_properties_u01 on &mw_prefix.user_properties (up_user,up_property);
 CREATE INDEX &mw_prefix.user_properties_i01 on &mw_prefix.user_properties (up_property);
@@ -70,12 +71,13 @@ CREATE UNIQUE INDEX &mw_prefix.page_u01 ON &mw_prefix.page (page_namespace,page_
 CREATE INDEX &mw_prefix.page_i01 ON &mw_prefix.page (page_random);
 CREATE INDEX &mw_prefix.page_i02 ON &mw_prefix.page (page_len);
 
+/*$mw$*/
 CREATE TRIGGER &mw_prefix.page_set_random BEFORE INSERT ON &mw_prefix.page
-        FOR EACH ROW WHEN (new.page_random IS NULL)
-        BEGIN
-                SELECT dbms_random.value INTO :NEW.page_random FROM dual;
-        END;
-/
+       FOR EACH ROW WHEN (new.page_random IS NULL)
+BEGIN
+       SELECT dbms_random.value INTO :NEW.page_random FROM dual;
+END;
+/*$mw$*/
 
 CREATE SEQUENCE rev_rev_id_val;
 CREATE TABLE &mw_prefix.revision (
@@ -118,7 +120,10 @@ CREATE TABLE &mw_prefix.archive (
   ar_flags       VARCHAR2(255),
   ar_rev_id      NUMBER,
   ar_text_id     NUMBER,
-  ar_deleted     NUMBER      DEFAULT '0' NOT NULL
+  ar_deleted     NUMBER      DEFAULT '0' NOT NULL,
+  ar_len         NUMBER,
+  ar_page_id     NUMBER,
+  ar_parent_id   NUMBER
 );
 CREATE INDEX &mw_prefix.archive_i01 ON &mw_prefix.archive (ar_namespace,ar_title,ar_timestamp);
 CREATE INDEX &mw_prefix.archive_i02 ON &mw_prefix.archive (ar_user_text,ar_timestamp);
@@ -232,7 +237,7 @@ CREATE INDEX &mw_prefix.ipblocks_i02 ON &mw_prefix.ipblocks (ipb_range_start, ip
 CREATE INDEX &mw_prefix.ipblocks_i03 ON &mw_prefix.ipblocks (ipb_timestamp);
 CREATE INDEX &mw_prefix.ipblocks_i04 ON &mw_prefix.ipblocks (ipb_expiry);
 
-CREATE TABLE image (
+CREATE TABLE &mw_prefix.image (
   img_name         VARCHAR2(255)      NOT NULL,
   img_size         NUMBER   NOT NULL,
   img_width        NUMBER   NOT NULL,
@@ -358,8 +363,8 @@ CREATE INDEX &mw_prefix.watchlist_i01 ON &mw_prefix.watchlist (wl_namespace, wl_
 
 
 CREATE TABLE &mw_prefix.math (
-  math_inputhash              VARCHAR2(16)      NOT NULL,
-  math_outputhash             VARCHAR2(16)      NOT NULL,
+  math_inputhash              VARCHAR2(32)      NOT NULL,
+  math_outputhash             VARCHAR2(32)      NOT NULL,
   math_html_conservativeness  NUMBER  NOT NULL,
   math_html                   CLOB,
   math_mathml                 CLOB
@@ -463,7 +468,9 @@ CREATE UNIQUE INDEX &mw_prefix.querycache_info_u01 ON &mw_prefix.querycache_info
 CREATE TABLE &mw_prefix.redirect (
   rd_from       NUMBER  NOT NULL  REFERENCES &mw_prefix.page(page_id) ON DELETE CASCADE,
   rd_namespace  NUMBER NOT NULL,
-  rd_title      VARCHAR2(255)     NOT NULL
+  rd_title      VARCHAR2(255)     NOT NULL,
+  rd_interwiki  VARCHAR2(32),
+  rd_fragment   VARCHAR2(255)
 );
 CREATE INDEX &mw_prefix.redirect_i01 ON &mw_prefix.redirect (rd_namespace,rd_title,rd_from);
 
@@ -558,6 +565,13 @@ ALTER TABLE &mw_prefix.valid_tag ADD CONSTRAINT &mw_prefix.valid_tag_pk PRIMARY
 CREATE INDEX si_title_idx ON &mw_prefix.searchindex(si_title) INDEXTYPE IS ctxsys.context;
 CREATE INDEX si_text_idx ON &mw_prefix.searchindex(si_text) INDEXTYPE IS ctxsys.context;
 
+CREATE TABLE &mw_prefix.l10n_cache (
+  lc_lang varchar2(32) NOT NULL,
+  lc_key varchar2(255) NOT NULL,
+  lc_value clob NOT NULL
+);
+CREATE INDEX &mw_prefix.l10n_cache_u01 ON &mw_prefix.l10n_cache (lc_lang, lc_key);
+
 CREATE TABLE &mw_prefix.wiki_field_info_full (
 table_name VARCHAR2(35) NOT NULL,
 column_name VARCHAR2(35) NOT NULL,
@@ -571,6 +585,7 @@ nonuniq NUMBER(1)
 );
 ALTER TABLE &mw_prefix.wiki_field_info_full ADD CONSTRAINT &mw_prefix.wiki_field_info_full_pk PRIMARY KEY (table_name, column_name);
 
+/*$mw$*/
 CREATE PROCEDURE &mw_prefix.fill_wiki_info IS
        BEGIN
                DELETE      &mw_prefix.wiki_field_info_full;
@@ -619,12 +634,25 @@ CREATE PROCEDURE &mw_prefix.fill_wiki_info IS
                END LOOP;
                COMMIT;
 END;
+/*$mw$*/
 
+/*$mw$*/
 BEGIN 
        &mw_prefix.fill_wiki_info;
 END;
+/*$mw$*/
 
+/*$mw$*/
 CREATE OR REPLACE FUNCTION BITOR (x IN NUMBER, y IN NUMBER) RETURN NUMBER AS
 BEGIN
   RETURN (x + y - BITAND(x, y));
 END;
+/*$mw$*/
+
+/*$mw$*/
+CREATE OR REPLACE FUNCTION BITNOT (x IN NUMBER) RETURN NUMBER AS
+BEGIN
+  RETURN (4294967295 - x);
+END;
+/*$mw$*/
+