summaryrefslogtreecommitdiff
path: root/www/wiki/maintenance/sqlite/archives/patch-iwlinks-fix-pk.sql
diff options
context:
space:
mode:
Diffstat (limited to 'www/wiki/maintenance/sqlite/archives/patch-iwlinks-fix-pk.sql')
-rw-r--r--www/wiki/maintenance/sqlite/archives/patch-iwlinks-fix-pk.sql24
1 files changed, 24 insertions, 0 deletions
diff --git a/www/wiki/maintenance/sqlite/archives/patch-iwlinks-fix-pk.sql b/www/wiki/maintenance/sqlite/archives/patch-iwlinks-fix-pk.sql
new file mode 100644
index 00000000..91ce2519
--- /dev/null
+++ b/www/wiki/maintenance/sqlite/archives/patch-iwlinks-fix-pk.sql
@@ -0,0 +1,24 @@
+CREATE TABLE /*_*/iwlinks_tmp (
+ -- page_id of the referring page
+ iwl_from int unsigned NOT NULL default 0,
+
+ -- Interwiki prefix code of the target
+ iwl_prefix varbinary(20) NOT NULL default '',
+
+ -- Title of the target, including namespace
+ iwl_title varchar(255) binary NOT NULL default '',
+ PRIMARY KEY (iwl_from,iwl_prefix,iwl_title)
+) /*$wgDBTableOptions*/;
+
+INSERT INTO /*_*/iwlinks_tmp
+ SELECT * FROM /*_*/iwlinks;
+
+DROP TABLE /*_*/iwlinks;
+
+ALTER TABLE /*_*/iwlinks_tmp RENAME TO /*_*/iwlinks;
+
+-- Index for ApiQueryIWBacklinks
+CREATE INDEX /*i*/iwl_prefix_title_from ON /*_*/iwlinks (iwl_prefix, iwl_title, iwl_from);
+
+-- Index for ApiQueryIWLinks
+CREATE INDEX /*i*/iwl_prefix_from_title ON /*_*/iwlinks (iwl_prefix, iwl_from, iwl_title); \ No newline at end of file