Awight has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/191555

Change subject: Support MediaWiki 1.25 schema
......................................................................

Support MediaWiki 1.25 schema

The page_counter column was dropped...

Change-Id: I33ccb873403b89c87eaf36486090b8c3b1ddf99d
---
M README
M src/org/mediawiki/dumper/Dumper.java
M src/org/mediawiki/importer/SqlWriter15.java
A src/org/mediawiki/importer/SqlWriter1_25.java
4 files changed, 62 insertions(+), 4 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/tools/mwdumper 
refs/changes/55/191555/1

diff --git a/README b/README
index 34fcba7..1e98dfb 100644
--- a/README
+++ b/README
@@ -32,8 +32,8 @@
     --output=bzip2:pages_current.xml.bz2 \
       --format=xml \
       --filter=latest \
-    --output=gzip:pages_full_1.5.sql.gz \
-      --format=mysql:1.5 \
+    --output=gzip:pages_full_1.25.sql.gz \
+      --format=mysql:1.25 \
     --output=gzip:pages_full_1.4.sql.gz \
       --format=mysql:1.4 \
     pages_full.xml.gz
@@ -85,6 +85,8 @@
       be already set up in an empty database; use maintenance/tables.sql
       from the MediaWiki distribution.
       (MySQL output format.)
+  --format=mysql:1.25
+      SQL statements formatted for bulk import into MediaWiki 1.25's schema.
   --format=pgsql:1.4
       SQL statements formatted for bulk import in MediaWiki 1.4's schema.
       (PostgreSQL output format.)
diff --git a/src/org/mediawiki/dumper/Dumper.java 
b/src/org/mediawiki/dumper/Dumper.java
index 44b747a..4f0e2e3 100644
--- a/src/org/mediawiki/dumper/Dumper.java
+++ b/src/org/mediawiki/dumper/Dumper.java
@@ -255,6 +255,8 @@
                                ret = new SqlWriter14(tr, sqlStream);
                        else if (param.equals("1.5"))
                                ret = new SqlWriter15(tr, sqlStream);
+                       else if (param.equals("1.25"))
+                               ret = new SqlWriter1_25(tr, sqlStream);
                        else
                                throw new IllegalArgumentException("SQL version 
not known: " + param);
 
diff --git a/src/org/mediawiki/importer/SqlWriter15.java 
b/src/org/mediawiki/importer/SqlWriter15.java
index 4960220..47f8da6 100644
--- a/src/org/mediawiki/importer/SqlWriter15.java
+++ b/src/org/mediawiki/importer/SqlWriter15.java
@@ -89,7 +89,7 @@
                lastRevision = revision;
        }
        
-       private static int lengthUtf8(String s) {
+       protected static int lengthUtf8(String s) {
                final int slen = s.length();
                final char[] buf = Buffer.get(slen);
                s.getChars(0, slen, buf, 0);
@@ -111,7 +111,7 @@
                return len;
        }
        
-       private void updatePage(Page page, Revision revision) throws 
IOException {
+       protected void updatePage(Page page, Revision revision) throws 
IOException {
                bufferInsertRow("page", new Object[][] {
                                {"page_id", new Integer(page.Id)},
                                {"page_namespace", page.Title.Namespace},
diff --git a/src/org/mediawiki/importer/SqlWriter1_25.java 
b/src/org/mediawiki/importer/SqlWriter1_25.java
new file mode 100644
index 0000000..e2f8473
--- /dev/null
+++ b/src/org/mediawiki/importer/SqlWriter1_25.java
@@ -0,0 +1,54 @@
+/*
+ * MediaWiki import/export processing tools
+ * Copyright 2005 by Brion Vibber
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to 
deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 
FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 
THE
+ * SOFTWARE.
+ *
+ * $Id$
+ */
+
+package org.mediawiki.importer;
+
+import java.io.IOException;
+
+public class SqlWriter1_25 extends SqlWriter15 {
+       public SqlWriter1_25(SqlWriter.Traits tr, SqlStream output) {
+               super(tr, output);
+       }
+       
+       public SqlWriter1_25(SqlWriter.Traits tr, SqlStream output, String 
prefix) {
+               super(tr, output, prefix);
+       }
+       
+       protected void updatePage(Page page, Revision revision) throws 
IOException {
+               bufferInsertRow("page", new Object[][] {
+                               {"page_id", new Integer(page.Id)},
+                               {"page_namespace", page.Title.Namespace},
+                               {"page_title", titleFormat(page.Title.Text)},
+                               {"page_restrictions", page.Restrictions},
+                               {"page_is_redirect", page.isRedirect ? ONE : 
ZERO},
+                               {"page_is_new", ZERO},
+                               {"page_random", traits.getRandom()},
+                               {"page_touched", traits.getCurrentTime()},
+                               {"page_latest", new Integer(revision.Id)},
+                               {"page_len", new 
Integer(lengthUtf8(revision.Text))}});
+               checkpoint();
+       }
+
+}

-- 
To view, visit https://gerrit.wikimedia.org/r/191555
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I33ccb873403b89c87eaf36486090b8c3b1ddf99d
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/tools/mwdumper
Gerrit-Branch: master
Gerrit-Owner: Awight <[email protected]>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to