array( 'addTable', 'config', 'patch-config.sql' ),
array( 'addIndex', 'logging', 'type_action', 'patch-logging-type-action-index.sql'),
array( 'doMigrateUserOptions' ),
+ array( 'dropField', 'user', 'user_options', 'patch-drop-user_options.sql' ),
);
}
user_newpassword tinyblob NOT NULL,
user_newpass_time binary(14),
user_email tinytext NOT NULL,
+ user_options blob NOT NULL,
user_touched binary(14) NOT NULL default '',
user_token binary(32) NOT NULL default '',
user_email_authenticated binary(14),
--- /dev/null
+-- Remove user_options field from user table\r
+\r
+CREATE TABLE /*_*/user_tmp (\r
+ user_id int unsigned NOT NULL PRIMARY KEY AUTO_INCREMENT,\r
+ user_name varchar(255) binary NOT NULL default '',\r
+ user_real_name varchar(255) binary NOT NULL default '',\r
+ user_password tinyblob NOT NULL,\r
+ user_newpassword tinyblob NOT NULL,\r
+ user_newpass_time binary(14),\r
+ user_email tinytext NOT NULL,\r
+ user_touched binary(14) NOT NULL default '',\r
+ user_token binary(32) NOT NULL default '',\r
+ user_email_authenticated binary(14),\r
+ user_email_token binary(32),\r
+ user_email_token_expires binary(14),\r
+ user_registration binary(14),\r
+ user_editcount int\r
+) /*$wgDBTableOptions*/;\r
+\r
+INSERT INTO /*_*/user_tmp\r
+ SELECT user_id, user_name, user_real_name, user_password, user_newpassword, user_newpass_time, user_email, user_touched,\r
+ user_token, user_email_authenticated, user_email_token, user_email_token_expires, user_registration, user_editcount\r
+ FROM /*_*/user;\r
+\r
+DROP TABLE /*_*/user;\r
+\r
+ALTER TABLE /*_*/user_tmp RENAME TO /*_*/user;\r
+\r
+CREATE UNIQUE INDEX /*i*/user_name ON /*_*/user (user_name);\r
+CREATE INDEX /*i*/user_email_token ON /*_*/user (user_email_token);\r
+CREATE INDEX /*i*/user_email ON /*_*/user (user_email(50));\r
// Mismatches for these columns we can safely ignore
$ignoredColumns = array(
'user_newtalk.user_last_timestamp', // r84185
- 'user.user_options',
);
$currentDB = new DatabaseSqliteStandalone( ':memory:' );
user_newpassword tinyblob ,
user_newpass_time BLOB,
user_email tinytext ,
+ user_options blob ,
user_touched BLOB default '',
user_token BLOB default '',
user_email_authenticated BLOB,
user_newpassword tinyblob NOT NULL,
user_newpass_time binary(14),
user_email tinytext NOT NULL,
+ user_options blob NOT NULL,
user_touched binary(14) NOT NULL default '',
user_token binary(32) NOT NULL default '',
user_email_authenticated binary(14),
user_newpassword tinyblob NOT NULL,
user_newpass_time binary(14),
user_email tinytext NOT NULL,
+ user_options blob NOT NULL,
user_touched binary(14) NOT NULL default '',
user_token binary(32) NOT NULL default '',
user_email_authenticated binary(14),
user_newpassword tinyblob NOT NULL,
user_newpass_time binary(14),
user_email tinytext NOT NULL,
+ user_options blob NOT NULL,
user_touched binary(14) NOT NULL default '',
user_token binary(32) NOT NULL default '',
user_email_authenticated binary(14),