Handle multi-col primary keys, cleanup new tables.
authorGreg Sabino Mullane <greg@users.mediawiki.org>
Tue, 19 May 2009 20:54:52 +0000 (20:54 +0000)
committerGreg Sabino Mullane <greg@users.mediawiki.org>
Tue, 19 May 2009 20:54:52 +0000 (20:54 +0000)
maintenance/postgres/compare_schemas.pl

index 850244b..0a025bd 100644 (file)
@@ -129,6 +129,8 @@ sub parse_sql {
                }
                elsif (m{^CREATE (?:UNIQUE )?(?:FULLTEXT )?INDEX /\*i\*/(\w+) ON /\*_\*/(\w+) \((.+?)\);}) {
                }
+               elsif (m{^\s*PRIMARY KEY \([\w,]+\)}) {
+               }
                else {
                        die "Cannot parse line $. of $oldfile:\n$_\n";
                }
@@ -258,6 +260,9 @@ while (<$newfh>) {
                }
                $lastcomma = $3 ? 1 : 0;
        }
+       elsif (m{^\s*PRIMARY KEY \([\w,]+\)}) {
+               $lastcomma = 0;
+       }
        else {
                die "Cannot parse line $. of $new:\n$_\n";
        }
@@ -324,6 +329,7 @@ keyname           varbinary(255) TEXT # No tablename prefix (objectcache)
 ll_lang           varbinary(20)  TEXT # Language code
 log_params        blob           TEXT # LF separated list of args
 log_type          varbinary(10)  TEXT
+ls_field          varbinary(32)  TEXT
 oi_minor_mime     varbinary(32)  TEXT
 oi_sha1           varbinary(32)  TEXT
 old_flags         tinyblob       TEXT
@@ -343,6 +349,8 @@ rc_params         blob           TEXT
 rlc_to_blob       blob           TEXT
 ts_tags           blob           TEXT
 ug_group          varbinary(16)  TEXT
+up_property       varbinary(32)  TEXT
+up_value          blob           TEXT
 user_email_token  binary(32)     TEXT
 user_ip           varbinary(40)  TEXT
 user_newpassword  tinyblob       TEXT