diff options
Diffstat (limited to 'tests/phpunit/includes/db')
-rw-r--r-- | tests/phpunit/includes/db/DatabaseSqliteTest.php | 14 | ||||
-rw-r--r-- | tests/phpunit/includes/db/DatabaseTest.php | 32 | ||||
-rw-r--r-- | tests/phpunit/includes/db/sqlite/tables-1.13.sql | 342 | ||||
-rw-r--r-- | tests/phpunit/includes/db/sqlite/tables-1.15.sql | 454 | ||||
-rw-r--r-- | tests/phpunit/includes/db/sqlite/tables-1.16.sql | 483 | ||||
-rw-r--r-- | tests/phpunit/includes/db/sqlite/tables-1.17.sql | 516 |
6 files changed, 39 insertions, 1802 deletions
diff --git a/tests/phpunit/includes/db/DatabaseSqliteTest.php b/tests/phpunit/includes/db/DatabaseSqliteTest.php index 914ab27c..067c731a 100644 --- a/tests/phpunit/includes/db/DatabaseSqliteTest.php +++ b/tests/phpunit/includes/db/DatabaseSqliteTest.php @@ -19,6 +19,7 @@ class MockDatabaseSqlite extends DatabaseSqliteStandalone { /** * @group sqlite + * @group Database */ class DatabaseSqliteTest extends MediaWikiTestCase { var $db; @@ -98,7 +99,7 @@ class DatabaseSqliteTest extends MediaWikiTestCase { $this->assertEquals( 'sqlite_master', $db->tableName( 'sqlite_master' ) ); $this->assertEquals( 'foobar', $db->tableName( 'bar' ) ); } - + public function testDuplicateTableStructure() { $db = new DatabaseSqliteStandalone( ':memory:' ); $db->query( 'CREATE TABLE foo(foo, barfoo)' ); @@ -119,7 +120,7 @@ class DatabaseSqliteTest extends MediaWikiTestCase { 'Create a temporary duplicate only' ); } - + public function testDuplicateTableStructureVirtual() { $db = new DatabaseSqliteStandalone( ':memory:' ); if ( $db->getFulltextSearchModule() != 'FTS3' ) { @@ -191,13 +192,14 @@ class DatabaseSqliteTest extends MediaWikiTestCase { '1.15', '1.16', '1.17', + '1.18', ); // Mismatches for these columns we can safely ignore $ignoredColumns = array( 'user_newtalk.user_last_timestamp', // r84185 ); - + $currentDB = new DatabaseSqliteStandalone( ':memory:' ); $currentDB->sourceFile( "$IP/maintenance/tables.sql" ); $currentTables = $this->getTables( $currentDB ); @@ -254,9 +256,10 @@ class DatabaseSqliteTest extends MediaWikiTestCase { $maint = new FakeMaintenance(); $maint->loadParamsAndArgs( null, array( 'quiet' => 1 ) ); } - + + global $IP; $db = new DatabaseSqliteStandalone( ':memory:' ); - $db->sourceFile( dirname( __FILE__ ) . "/sqlite/tables-$version.sql" ); + $db->sourceFile( "$IP/tests/phpunit/data/db/sqlite/tables-$version.sql" ); $updater = DatabaseUpdater::newForDB( $db, false, $maint ); $updater->doUpdates( array( 'core' ) ); return $db; @@ -266,6 +269,7 @@ class DatabaseSqliteTest extends MediaWikiTestCase { $list = array_flip( $db->listTables() ); $excluded = array( 'math', // moved out of core in 1.18 + 'trackbacks', // removed from core in 1.19 'searchindex', 'searchindex_content', 'searchindex_segments', diff --git a/tests/phpunit/includes/db/DatabaseTest.php b/tests/phpunit/includes/db/DatabaseTest.php index d480ac6e..672e6645 100644 --- a/tests/phpunit/includes/db/DatabaseTest.php +++ b/tests/phpunit/includes/db/DatabaseTest.php @@ -2,12 +2,20 @@ /** * @group Database + * @group DatabaseBase */ class DatabaseTest extends MediaWikiTestCase { - var $db; + var $db, $functionTest = false; function setUp() { - $this->db = wfGetDB( DB_SLAVE ); + $this->db = wfGetDB( DB_MASTER ); + } + + function tearDown() { + if ( $this->functionTest ) { + $this->dropFunctions(); + $this->functionTest = false; + } } function testAddQuotesNull() { @@ -90,6 +98,26 @@ class DatabaseTest extends MediaWikiTestCase { $sql ); } + /** + * @group Broken + */ + function testStoredFunctions() { + if ( !in_array( wfGetDB( DB_MASTER )->getType(), array( 'mysql', 'postgres' ) ) ) { + $this->markTestSkipped( 'MySQL or Postgres required' ); + } + global $IP; + $this->dropFunctions(); + $this->functionTest = true; + $this->assertTrue( $this->db->sourceFile( "$IP/tests/phpunit/data/db/{$this->db->getType()}/functions.sql" ) ); + $res = $this->db->query( 'SELECT mw_test_function() AS test', __METHOD__ ); + $this->assertEquals( 42, $res->fetchObject()->test ); + } + + private function dropFunctions() { + $this->db->query( 'DROP FUNCTION IF EXISTS mw_test_function' + . ( $this->db->getType() == 'postgres' ? '()' : '' ) + ); + } } diff --git a/tests/phpunit/includes/db/sqlite/tables-1.13.sql b/tests/phpunit/includes/db/sqlite/tables-1.13.sql deleted file mode 100644 index a0dcb553..00000000 --- a/tests/phpunit/includes/db/sqlite/tables-1.13.sql +++ /dev/null @@ -1,342 +0,0 @@ --- This is a copy of SQLite schema from MediaWiki 1.13 used for updater testing - -CREATE TABLE /*$wgDBprefix*/user ( - user_id INTEGER PRIMARY KEY AUTOINCREMENT, - user_name varchar(255) default '', - user_real_name varchar(255) default '', - user_password tinyblob , - 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_email_token BLOB, - user_email_token_expires BLOB, - user_registration BLOB, - user_editcount int) /*$wgDBTableOptions*/; - -CREATE TABLE /*$wgDBprefix*/user_groups ( - ug_user INTEGER default '0', - ug_group varBLOB default '') /*$wgDBTableOptions*/; - -CREATE TABLE /*$wgDBprefix*/user_newtalk ( - user_id INTEGER default '0', - user_ip varBLOB default '', - user_last_timestamp BLOB default '') /*$wgDBTableOptions*/; - -CREATE TABLE /*$wgDBprefix*/page ( - page_id INTEGER PRIMARY KEY AUTOINCREMENT, - page_namespace INTEGER , - page_title varchar(255) , - page_restrictions tinyblob , - page_counter bigint default '0', - page_is_redirect tinyint default '0', - page_is_new tinyint default '0', - page_random real , - page_touched BLOB default '', - page_latest INTEGER , - page_len INTEGER ) /*$wgDBTableOptions*/; - -CREATE TABLE /*$wgDBprefix*/revision ( - rev_id INTEGER PRIMARY KEY AUTOINCREMENT, - rev_page INTEGER , - rev_text_id INTEGER , - rev_comment tinyblob , - rev_user INTEGER default '0', - rev_user_text varchar(255) default '', - rev_timestamp BLOB default '', - rev_minor_edit tinyint default '0', - rev_deleted tinyint default '0', - rev_len int, - rev_parent_id INTEGER default NULL) /*$wgDBTableOptions*/ ; - -CREATE TABLE /*$wgDBprefix*/text ( - old_id INTEGER PRIMARY KEY AUTOINCREMENT, - old_text mediumblob , - old_flags tinyblob ) /*$wgDBTableOptions*/ ; - -CREATE TABLE /*$wgDBprefix*/archive ( - ar_namespace INTEGER default '0', - ar_title varchar(255) default '', - ar_text mediumblob , - ar_comment tinyblob , - ar_user INTEGER default '0', - ar_user_text varchar(255) , - ar_timestamp BLOB default '', - ar_minor_edit tinyint default '0', - ar_flags tinyblob , - ar_rev_id int, - ar_text_id int, - ar_deleted tinyint default '0', - ar_len int, - ar_page_id int, - ar_parent_id INTEGER default NULL) /*$wgDBTableOptions*/; - -CREATE TABLE /*$wgDBprefix*/pagelinks ( - pl_from INTEGER default '0', - pl_namespace INTEGER default '0', - pl_title varchar(255) default '') /*$wgDBTableOptions*/; - -CREATE TABLE /*$wgDBprefix*/templatelinks ( - tl_from INTEGER default '0', - tl_namespace INTEGER default '0', - tl_title varchar(255) default '') /*$wgDBTableOptions*/; - -CREATE TABLE /*$wgDBprefix*/imagelinks ( - il_from INTEGER default '0', - il_to varchar(255) default '') /*$wgDBTableOptions*/; - -CREATE TABLE /*$wgDBprefix*/categorylinks ( - cl_from INTEGER default '0', - cl_to varchar(255) default '', - cl_sortkey varchar(70) default '', - cl_timestamp timestamp ) /*$wgDBTableOptions*/; - -CREATE TABLE /*$wgDBprefix*/category ( - cat_id INTEGER PRIMARY KEY AUTOINCREMENT, - cat_title varchar(255) , - cat_pages INTEGER signed default 0, - cat_subcats INTEGER signed default 0, - cat_files INTEGER signed default 0, - cat_hidden tinyint default 0) /*$wgDBTableOptions*/; - -CREATE TABLE /*$wgDBprefix*/externallinks ( - el_from INTEGER default '0', - el_to blob , - el_index blob ) /*$wgDBTableOptions*/; - -CREATE TABLE /*$wgDBprefix*/langlinks ( - ll_from INTEGER default '0', - ll_lang varBLOB default '', - ll_title varchar(255) default '') /*$wgDBTableOptions*/; - -CREATE TABLE /*$wgDBprefix*/site_stats ( - ss_row_id INTEGER , - ss_total_views bigint default '0', - ss_total_edits bigint default '0', - ss_good_articles bigint default '0', - ss_total_pages bigint default '-1', - ss_users bigint default '-1', - ss_admins INTEGER default '-1', - ss_images INTEGER default '0') /*$wgDBTableOptions*/; - -CREATE TABLE /*$wgDBprefix*/hitcounter ( - hc_id INTEGER -) ; - -CREATE TABLE /*$wgDBprefix*/ipblocks ( - ipb_id INTEGER PRIMARY KEY AUTOINCREMENT, - ipb_address tinyblob , - ipb_user INTEGER default '0', - ipb_by INTEGER default '0', - ipb_by_text varchar(255) default '', - ipb_reason tinyblob , - ipb_timestamp BLOB default '', - ipb_auto bool default 0, - ipb_anon_only bool default 0, - ipb_create_account bool default 1, - ipb_enable_autoblock bool default '1', - ipb_expiry varBLOB default '', - ipb_range_start tinyblob , - ipb_range_end tinyblob , - ipb_deleted bool default 0, - ipb_block_email bool default 0) /*$wgDBTableOptions*/; - -CREATE TABLE /*$wgDBprefix*/image ( - img_name varchar(255) default '', - img_size INTEGER default '0', - img_width INTEGER default '0', - img_height INTEGER default '0', - img_metadata mediumblob , - img_bits INTEGER default '0', - img_media_type TEXT default NULL, - img_major_mime TEXT default "unknown", - img_minor_mime varBLOB default "unknown", - img_description tinyblob , - img_user INTEGER default '0', - img_user_text varchar(255) , - img_timestamp varBLOB default '', - img_sha1 varBLOB default '') /*$wgDBTableOptions*/; - -CREATE TABLE /*$wgDBprefix*/oldimage ( - oi_name varchar(255) default '', - oi_archive_name varchar(255) default '', - oi_size INTEGER default 0, - oi_width INTEGER default 0, - oi_height INTEGER default 0, - oi_bits INTEGER default 0, - oi_description tinyblob , - oi_user INTEGER default '0', - oi_user_text varchar(255) , - oi_timestamp BLOB default '', - oi_metadata mediumblob , - oi_media_type TEXT default NULL, - oi_major_mime TEXT default "unknown", - oi_minor_mime varBLOB default "unknown", - oi_deleted tinyint default '0', - oi_sha1 varBLOB default '') /*$wgDBTableOptions*/; - -CREATE TABLE /*$wgDBprefix*/filearchive ( - fa_id INTEGER PRIMARY KEY AUTOINCREMENT, - fa_name varchar(255) default '', - fa_archive_name varchar(255) default '', - fa_storage_group varBLOB, - fa_storage_key varBLOB default '', - fa_deleted_user int, - fa_deleted_timestamp BLOB default '', - fa_deleted_reason text, - fa_size INTEGER default '0', - fa_width INTEGER default '0', - fa_height INTEGER default '0', - fa_metadata mediumblob, - fa_bits INTEGER default '0', - fa_media_type TEXT default NULL, - fa_major_mime TEXT default "unknown", - fa_minor_mime varBLOB default "unknown", - fa_description tinyblob, - fa_user INTEGER default '0', - fa_user_text varchar(255) , - fa_timestamp BLOB default '', - fa_deleted tinyint default '0') /*$wgDBTableOptions*/; - -CREATE TABLE /*$wgDBprefix*/recentchanges ( - rc_id INTEGER PRIMARY KEY AUTOINCREMENT, - rc_timestamp varBLOB default '', - rc_cur_time varBLOB default '', - rc_user INTEGER default '0', - rc_user_text varchar(255) , - rc_namespace INTEGER default '0', - rc_title varchar(255) default '', - rc_comment varchar(255) default '', - rc_minor tinyint default '0', - rc_bot tinyint default '0', - rc_new tinyint default '0', - rc_cur_id INTEGER default '0', - rc_this_oldid INTEGER default '0', - rc_last_oldid INTEGER default '0', - rc_type tinyint default '0', - rc_moved_to_ns tinyint default '0', - rc_moved_to_title varchar(255) default '', - rc_patrolled tinyint default '0', - rc_ip varBLOB default '', - rc_old_len int, - rc_new_len int, - rc_deleted tinyint default '0', - rc_logid INTEGER default '0', - rc_log_type varBLOB NULL default NULL, - rc_log_action varBLOB NULL default NULL, - rc_params blob NULL) /*$wgDBTableOptions*/; - -CREATE TABLE /*$wgDBprefix*/watchlist ( - wl_user INTEGER , - wl_namespace INTEGER default '0', - wl_title varchar(255) default '', - wl_notificationtimestamp varBLOB) /*$wgDBTableOptions*/; - -CREATE TABLE /*$wgDBprefix*/math ( - math_inputhash varBLOB , - math_outputhash varBLOB , - math_html_conservativeness tinyint , - math_html text, - math_mathml text) /*$wgDBTableOptions*/; - -CREATE TABLE /*$wgDBprefix*/searchindex ( - si_page INTEGER , - si_title varchar(255) default '', - si_text mediumtext ) ; - -CREATE TABLE /*$wgDBprefix*/interwiki ( - iw_prefix varchar(32) , - iw_url blob , - iw_local bool , - iw_trans tinyint default 0) /*$wgDBTableOptions*/; - -CREATE TABLE /*$wgDBprefix*/querycache ( - qc_type varBLOB , - qc_value INTEGER default '0', - qc_namespace INTEGER default '0', - qc_title varchar(255) default '') /*$wgDBTableOptions*/; - -CREATE TABLE /*$wgDBprefix*/objectcache ( - keyname varBLOB default '', - value mediumblob, - exptime datetime) /*$wgDBTableOptions*/; - -CREATE TABLE /*$wgDBprefix*/transcache ( - tc_url varBLOB , - tc_contents text, - tc_time INTEGER ) /*$wgDBTableOptions*/; - -CREATE TABLE /*$wgDBprefix*/logging ( - log_id INTEGER PRIMARY KEY AUTOINCREMENT, - log_type varBLOB default '', - log_action varBLOB default '', - log_timestamp BLOB default '19700101000000', - log_user INTEGER default 0, - log_namespace INTEGER default 0, - log_title varchar(255) default '', - log_comment varchar(255) default '', - log_params blob , - log_deleted tinyint default '0') /*$wgDBTableOptions*/; - -CREATE TABLE /*$wgDBprefix*/trackbacks ( - tb_id INTEGER PRIMARY KEY AUTOINCREMENT, - tb_page INTEGER REFERENCES /*$wgDBprefix*/page(page_id) ON DELETE CASCADE, - tb_title varchar(255) , - tb_url blob , - tb_ex text, - tb_name varchar(255)) /*$wgDBTableOptions*/; - -CREATE TABLE /*$wgDBprefix*/job ( - job_id INTEGER PRIMARY KEY AUTOINCREMENT, - job_cmd varBLOB default '', - job_namespace INTEGER , - job_title varchar(255) , - job_params blob ) /*$wgDBTableOptions*/; - -CREATE TABLE /*$wgDBprefix*/querycache_info ( - qci_type varBLOB default '', - qci_timestamp BLOB default '19700101000000') /*$wgDBTableOptions*/; - -CREATE TABLE /*$wgDBprefix*/redirect ( - rd_from INTEGER default '0', - rd_namespace INTEGER default '0', - rd_title varchar(255) default '') /*$wgDBTableOptions*/; - -CREATE TABLE /*$wgDBprefix*/querycachetwo ( - qcc_type varBLOB , - qcc_value INTEGER default '0', - qcc_namespace INTEGER default '0', - qcc_title varchar(255) default '', - qcc_namespacetwo INTEGER default '0', - qcc_titletwo varchar(255) default '') /*$wgDBTableOptions*/; - -CREATE TABLE /*$wgDBprefix*/page_restrictions ( - pr_page INTEGER , - pr_type varBLOB , - pr_level varBLOB , - pr_cascade tinyint , - pr_user INTEGER NULL, - pr_expiry varBLOB NULL, - pr_id INTEGER PRIMARY KEY AUTOINCREMENT) /*$wgDBTableOptions*/; - -CREATE TABLE /*$wgDBprefix*/protected_titles ( - pt_namespace INTEGER , - pt_title varchar(255) , - pt_user INTEGER , - pt_reason tinyblob, - pt_timestamp BLOB , - pt_expiry varBLOB default '', - pt_create_perm varBLOB ) /*$wgDBTableOptions*/; - -CREATE TABLE /*$wgDBprefix*/page_props ( - pp_page INTEGER , - pp_propname varBLOB , - pp_value blob ) /*$wgDBTableOptions*/; - -CREATE TABLE /*$wgDBprefix*/updatelog ( - ul_key varchar(255) ) /*$wgDBTableOptions*/; - - diff --git a/tests/phpunit/includes/db/sqlite/tables-1.15.sql b/tests/phpunit/includes/db/sqlite/tables-1.15.sql deleted file mode 100644 index 901bac52..00000000 --- a/tests/phpunit/includes/db/sqlite/tables-1.15.sql +++ /dev/null @@ -1,454 +0,0 @@ --- This is a copy of MediaWiki 1.15 schema shared by MySQL and SQLite. --- It is used for updater testing. Comments are stripped to decrease --- file size, as we don't need to maintain it. - -CREATE TABLE /*_*/user ( - user_id int unsigned NOT NULL PRIMARY KEY AUTO_INCREMENT, - user_name varchar(255) binary NOT NULL default '', - user_real_name varchar(255) binary NOT NULL default '', - user_password tinyblob NOT NULL, - 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_email_token binary(32), - user_email_token_expires binary(14), - user_registration binary(14), - user_editcount int -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/user_name ON /*_*/user (user_name); -CREATE INDEX /*i*/user_email_token ON /*_*/user (user_email_token); -CREATE TABLE /*_*/user_groups ( - ug_user int unsigned NOT NULL default 0, - ug_group varbinary(16) NOT NULL default '' -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/ug_user_group ON /*_*/user_groups (ug_user,ug_group); -CREATE INDEX /*i*/ug_group ON /*_*/user_groups (ug_group); -CREATE TABLE /*_*/user_newtalk ( - user_id int NOT NULL default 0, - user_ip varbinary(40) NOT NULL default '', - user_last_timestamp binary(14) NOT NULL default '' -) /*$wgDBTableOptions*/; -CREATE INDEX /*i*/un_user_id ON /*_*/user_newtalk (user_id); -CREATE INDEX /*i*/un_user_ip ON /*_*/user_newtalk (user_ip); -CREATE TABLE /*_*/page ( - page_id int unsigned NOT NULL PRIMARY KEY AUTO_INCREMENT, - page_namespace int NOT NULL, - page_title varchar(255) binary NOT NULL, - page_restrictions tinyblob NOT NULL, - page_counter bigint unsigned NOT NULL default 0, - page_is_redirect tinyint unsigned NOT NULL default 0, - page_is_new tinyint unsigned NOT NULL default 0, - page_random real unsigned NOT NULL, - page_touched binary(14) NOT NULL default '', - page_latest int unsigned NOT NULL, - page_len int unsigned NOT NULL -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/name_title ON /*_*/page (page_namespace,page_title); -CREATE INDEX /*i*/page_random ON /*_*/page (page_random); -CREATE INDEX /*i*/page_len ON /*_*/page (page_len); -CREATE TABLE /*_*/revision ( - rev_id int unsigned NOT NULL PRIMARY KEY AUTO_INCREMENT, - rev_page int unsigned NOT NULL, - rev_text_id int unsigned NOT NULL, - rev_comment tinyblob NOT NULL, - rev_user int unsigned NOT NULL default 0, - rev_user_text varchar(255) binary NOT NULL default '', - rev_timestamp binary(14) NOT NULL default '', - rev_minor_edit tinyint unsigned NOT NULL default 0, - rev_deleted tinyint unsigned NOT NULL default 0, - rev_len int unsigned, - rev_parent_id int unsigned default NULL -) /*$wgDBTableOptions*/ MAX_ROWS=10000000 AVG_ROW_LENGTH=1024; -CREATE UNIQUE INDEX /*i*/rev_page_id ON /*_*/revision (rev_page, rev_id); -CREATE INDEX /*i*/rev_timestamp ON /*_*/revision (rev_timestamp); -CREATE INDEX /*i*/page_timestamp ON /*_*/revision (rev_page,rev_timestamp); -CREATE INDEX /*i*/user_timestamp ON /*_*/revision (rev_user,rev_timestamp); -CREATE INDEX /*i*/usertext_timestamp ON /*_*/revision (rev_user_text,rev_timestamp); -CREATE TABLE /*_*/text ( - old_id int unsigned NOT NULL PRIMARY KEY AUTO_INCREMENT, - old_text mediumblob NOT NULL, - old_flags tinyblob NOT NULL -) /*$wgDBTableOptions*/ MAX_ROWS=10000000 AVG_ROW_LENGTH=10240; -CREATE TABLE /*_*/archive ( - ar_namespace int NOT NULL default 0, - ar_title varchar(255) binary NOT NULL default '', - ar_text mediumblob NOT NULL, - ar_comment tinyblob NOT NULL, - ar_user int unsigned NOT NULL default 0, - ar_user_text varchar(255) binary NOT NULL, - ar_timestamp binary(14) NOT NULL default '', - ar_minor_edit tinyint NOT NULL default 0, - ar_flags tinyblob NOT NULL, - ar_rev_id int unsigned, - ar_text_id int unsigned, - ar_deleted tinyint unsigned NOT NULL default 0, - ar_len int unsigned, - ar_page_id int unsigned, - ar_parent_id int unsigned default NULL -) /*$wgDBTableOptions*/; -CREATE INDEX /*i*/name_title_timestamp ON /*_*/archive (ar_namespace,ar_title,ar_timestamp); -CREATE INDEX /*i*/ar_usertext_timestamp ON /*_*/archive (ar_user_text,ar_timestamp); -CREATE TABLE /*_*/pagelinks ( - pl_from int unsigned NOT NULL default 0, - pl_namespace int NOT NULL default 0, - pl_title varchar(255) binary NOT NULL default '' -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/pl_from ON /*_*/pagelinks (pl_from,pl_namespace,pl_title); -CREATE UNIQUE INDEX /*i*/pl_namespace ON /*_*/pagelinks (pl_namespace,pl_title,pl_from); -CREATE TABLE /*_*/templatelinks ( - tl_from int unsigned NOT NULL default 0, - tl_namespace int NOT NULL default 0, - tl_title varchar(255) binary NOT NULL default '' -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/tl_from ON /*_*/templatelinks (tl_from,tl_namespace,tl_title); -CREATE UNIQUE INDEX /*i*/tl_namespace ON /*_*/templatelinks (tl_namespace,tl_title,tl_from); -CREATE TABLE /*_*/imagelinks ( - il_from int unsigned NOT NULL default 0, - il_to varchar(255) binary NOT NULL default '' -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/il_from ON /*_*/imagelinks (il_from,il_to); -CREATE UNIQUE INDEX /*i*/il_to ON /*_*/imagelinks (il_to,il_from); -CREATE TABLE /*_*/categorylinks ( - cl_from int unsigned NOT NULL default 0, - cl_to varchar(255) binary NOT NULL default '', - cl_sortkey varchar(70) binary NOT NULL default '', - cl_timestamp timestamp NOT NULL -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/cl_from ON /*_*/categorylinks (cl_from,cl_to); -CREATE INDEX /*i*/cl_sortkey ON /*_*/categorylinks (cl_to,cl_sortkey,cl_from); -CREATE INDEX /*i*/cl_timestamp ON /*_*/categorylinks (cl_to,cl_timestamp); -CREATE TABLE /*_*/category ( - cat_id int unsigned NOT NULL PRIMARY KEY AUTO_INCREMENT, - cat_title varchar(255) binary NOT NULL, - cat_pages int signed NOT NULL default 0, - cat_subcats int signed NOT NULL default 0, - cat_files int signed NOT NULL default 0, - cat_hidden tinyint unsigned NOT NULL default 0 -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/cat_title ON /*_*/category (cat_title); -CREATE INDEX /*i*/cat_pages ON /*_*/category (cat_pages); -CREATE TABLE /*_*/externallinks ( - el_from int unsigned NOT NULL default 0, - el_to blob NOT NULL, - el_index blob NOT NULL -) /*$wgDBTableOptions*/; -CREATE INDEX /*i*/el_from ON /*_*/externallinks (el_from, el_to(40)); -CREATE INDEX /*i*/el_to ON /*_*/externallinks (el_to(60), el_from); -CREATE INDEX /*i*/el_index ON /*_*/externallinks (el_index(60)); -CREATE TABLE /*_*/langlinks ( - ll_from int unsigned NOT NULL default 0, - - ll_lang varbinary(20) NOT NULL default '', - ll_title varchar(255) binary NOT NULL default '' -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/ll_from ON /*_*/langlinks (ll_from, ll_lang); -CREATE INDEX /*i*/ll_lang ON /*_*/langlinks (ll_lang, ll_title); -CREATE TABLE /*_*/site_stats ( - ss_row_id int unsigned NOT NULL, - ss_total_views bigint unsigned default 0, - ss_total_edits bigint unsigned default 0, - ss_good_articles bigint unsigned default 0, - ss_total_pages bigint default '-1', - ss_users bigint default '-1', - ss_active_users bigint default '-1', - ss_admins int default '-1', - ss_images int default 0 -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/ss_row_id ON /*_*/site_stats (ss_row_id); -CREATE TABLE /*_*/hitcounter ( - hc_id int unsigned NOT NULL -) ENGINE=HEAP MAX_ROWS=25000; -CREATE TABLE /*_*/ipblocks ( - ipb_id int NOT NULL PRIMARY KEY AUTO_INCREMENT, - ipb_address tinyblob NOT NULL, - ipb_user int unsigned NOT NULL default 0, - ipb_by int unsigned NOT NULL default 0, - ipb_by_text varchar(255) binary NOT NULL default '', - ipb_reason tinyblob NOT NULL, - ipb_timestamp binary(14) NOT NULL default '', - ipb_auto bool NOT NULL default 0, - ipb_anon_only bool NOT NULL default 0, - ipb_create_account bool NOT NULL default 1, - ipb_enable_autoblock bool NOT NULL default '1', - ipb_expiry varbinary(14) NOT NULL default '', - ipb_range_start tinyblob NOT NULL, - ipb_range_end tinyblob NOT NULL, - ipb_deleted bool NOT NULL default 0, - ipb_block_email bool NOT NULL default 0, - ipb_allow_usertalk bool NOT NULL default 0 -) /*$wgDBTableOptions*/; - -CREATE UNIQUE INDEX /*i*/ipb_address ON /*_*/ipblocks (ipb_address(255), ipb_user, ipb_auto, ipb_anon_only); -CREATE INDEX /*i*/ipb_user ON /*_*/ipblocks (ipb_user); -CREATE INDEX /*i*/ipb_range ON /*_*/ipblocks (ipb_range_start(8), ipb_range_end(8)); -CREATE INDEX /*i*/ipb_timestamp ON /*_*/ipblocks (ipb_timestamp); -CREATE INDEX /*i*/ipb_expiry ON /*_*/ipblocks (ipb_expiry); -CREATE TABLE /*_*/image ( - img_name varchar(255) binary NOT NULL default '' PRIMARY KEY, - img_size int unsigned NOT NULL default 0, - img_width int NOT NULL default 0, - img_height int NOT NULL default 0, - img_metadata mediumblob NOT NULL, - img_bits int NOT NULL default 0, - img_media_type ENUM("UNKNOWN", "BITMAP", "DRAWING", "AUDIO", "VIDEO", "MULTIMEDIA", "OFFICE", "TEXT", "EXECUTABLE", "ARCHIVE") default NULL, - img_major_mime ENUM("unknown", "application", "audio", "image", "text", "video", "message", "model", "multipart") NOT NULL default "unknown", - img_minor_mime varbinary(32) NOT NULL default "unknown", - img_description tinyblob NOT NULL, - img_user int unsigned NOT NULL default 0, - img_user_text varchar(255) binary NOT NULL, - img_timestamp varbinary(14) NOT NULL default '', - img_sha1 varbinary(32) NOT NULL default '' -) /*$wgDBTableOptions*/; -CREATE INDEX /*i*/img_usertext_timestamp ON /*_*/image (img_user_text,img_timestamp); -CREATE INDEX /*i*/img_size ON /*_*/image (img_size); -CREATE INDEX /*i*/img_timestamp ON /*_*/image (img_timestamp); -CREATE INDEX /*i*/img_sha1 ON /*_*/image (img_sha1); -CREATE TABLE /*_*/oldimage ( - oi_name varchar(255) binary NOT NULL default '', - oi_archive_name varchar(255) binary NOT NULL default '', - oi_size int unsigned NOT NULL default 0, - oi_width int NOT NULL default 0, - oi_height int NOT NULL default 0, - oi_bits int NOT NULL default 0, - oi_description tinyblob NOT NULL, - oi_user int unsigned NOT NULL default 0, - oi_user_text varchar(255) binary NOT NULL, - oi_timestamp binary(14) NOT NULL default '', - oi_metadata mediumblob NOT NULL, - oi_media_type ENUM("UNKNOWN", "BITMAP", "DRAWING", "AUDIO", "VIDEO", "MULTIMEDIA", "OFFICE", "TEXT", "EXECUTABLE", "ARCHIVE") default NULL, - oi_major_mime ENUM("unknown", "application", "audio", "image", "text", "video", "message", "model", "multipart") NOT NULL default "unknown", - oi_minor_mime varbinary(32) NOT NULL default "unknown", - oi_deleted tinyint unsigned NOT NULL default 0, - oi_sha1 varbinary(32) NOT NULL default '' -) /*$wgDBTableOptions*/; -CREATE INDEX /*i*/oi_usertext_timestamp ON /*_*/oldimage (oi_user_text,oi_timestamp); -CREATE INDEX /*i*/oi_name_timestamp ON /*_*/oldimage (oi_name,oi_timestamp); -CREATE INDEX /*i*/oi_name_archive_name ON /*_*/oldimage (oi_name,oi_archive_name(14)); -CREATE INDEX /*i*/oi_sha1 ON /*_*/oldimage (oi_sha1); -CREATE TABLE /*_*/filearchive ( - fa_id int NOT NULL PRIMARY KEY AUTO_INCREMENT, - fa_name varchar(255) binary NOT NULL default '', - fa_archive_name varchar(255) binary default '', - fa_storage_group varbinary(16), - fa_storage_key varbinary(64) default '', - fa_deleted_user int, - fa_deleted_timestamp binary(14) default '', - fa_deleted_reason text, - fa_size int unsigned default 0, - fa_width int default 0, - fa_height int default 0, - fa_metadata mediumblob, - fa_bits int default 0, - fa_media_type ENUM("UNKNOWN", "BITMAP", "DRAWING", "AUDIO", "VIDEO", "MULTIMEDIA", "OFFICE", "TEXT", "EXECUTABLE", "ARCHIVE") default NULL, - fa_major_mime ENUM("unknown", "application", "audio", "image", "text", "video", "message", "model", "multipart") default "unknown", - fa_minor_mime varbinary(32) default "unknown", - fa_description tinyblob, - fa_user int unsigned default 0, - fa_user_text varchar(255) binary, - fa_timestamp binary(14) default '', - fa_deleted tinyint unsigned NOT NULL default 0 -) /*$wgDBTableOptions*/; -CREATE INDEX /*i*/fa_name ON /*_*/filearchive (fa_name, fa_timestamp); -CREATE INDEX /*i*/fa_storage_group ON /*_*/filearchive (fa_storage_group, fa_storage_key); -CREATE INDEX /*i*/fa_deleted_timestamp ON /*_*/filearchive (fa_deleted_timestamp); -CREATE INDEX /*i*/fa_user_timestamp ON /*_*/filearchive (fa_user_text,fa_timestamp); -CREATE TABLE /*_*/recentchanges ( - rc_id int NOT NULL PRIMARY KEY AUTO_INCREMENT, - rc_timestamp varbinary(14) NOT NULL default '', - rc_cur_time varbinary(14) NOT NULL default '', - rc_user int unsigned NOT NULL default 0, - rc_user_text varchar(255) binary NOT NULL, - rc_namespace int NOT NULL default 0, - rc_title varchar(255) binary NOT NULL default '', - rc_comment varchar(255) binary NOT NULL default '', - rc_minor tinyint unsigned NOT NULL default 0, - rc_bot tinyint unsigned NOT NULL default 0, - rc_new tinyint unsigned NOT NULL default 0, - rc_cur_id int unsigned NOT NULL default 0, - rc_this_oldid int unsigned NOT NULL default 0, - rc_last_oldid int unsigned NOT NULL default 0, - rc_type tinyint unsigned NOT NULL default 0, - rc_moved_to_ns tinyint unsigned NOT NULL default 0, - rc_moved_to_title varchar(255) binary NOT NULL default '', - rc_patrolled tinyint unsigned NOT NULL default 0, - rc_ip varbinary(40) NOT NULL default '', - rc_old_len int, - rc_new_len int, - rc_deleted tinyint unsigned NOT NULL default 0, - rc_logid int unsigned NOT NULL default 0, - rc_log_type varbinary(255) NULL default NULL, - rc_log_action varbinary(255) NULL default NULL, - rc_params blob NULL -) /*$wgDBTableOptions*/; -CREATE INDEX /*i*/rc_timestamp ON /*_*/recentchanges (rc_timestamp); -CREATE INDEX /*i*/rc_namespace_title ON /*_*/recentchanges (rc_namespace, rc_title); -CREATE INDEX /*i*/rc_cur_id ON /*_*/recentchanges (rc_cur_id); -CREATE INDEX /*i*/new_name_timestamp ON /*_*/recentchanges (rc_new,rc_namespace,rc_timestamp); -CREATE INDEX /*i*/rc_ip ON /*_*/recentchanges (rc_ip); -CREATE INDEX /*i*/rc_ns_usertext ON /*_*/recentchanges (rc_namespace, rc_user_text); -CREATE INDEX /*i*/rc_user_text ON /*_*/recentchanges (rc_user_text, rc_timestamp); -CREATE TABLE /*_*/watchlist ( - wl_user int unsigned NOT NULL, - wl_namespace int NOT NULL default 0, - wl_title varchar(255) binary NOT NULL default '', - wl_notificationtimestamp varbinary(14) -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/wl_user ON /*_*/watchlist (wl_user, wl_namespace, wl_title); -CREATE INDEX /*i*/namespace_title ON /*_*/watchlist (wl_namespace, wl_title); -CREATE TABLE /*_*/math ( - math_inputhash varbinary(16) NOT NULL, - math_outputhash varbinary(16) NOT NULL, - math_html_conservativeness tinyint NOT NULL, - math_html text, - math_mathml text -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/math_inputhash ON /*_*/math (math_inputhash); -CREATE TABLE /*_*/searchindex ( - si_page int unsigned NOT NULL, - si_title varchar(255) NOT NULL default '', - si_text mediumtext NOT NULL -) ENGINE=MyISAM; -CREATE UNIQUE INDEX /*i*/si_page ON /*_*/searchindex (si_page); -CREATE FULLTEXT INDEX /*i*/si_title ON /*_*/searchindex (si_title); -CREATE FULLTEXT INDEX /*i*/si_text ON /*_*/searchindex (si_text); -CREATE TABLE /*_*/interwiki ( - iw_prefix varchar(32) NOT NULL, - iw_url blob NOT NULL, - iw_local bool NOT NULL, - iw_trans tinyint NOT NULL default 0 -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/iw_prefix ON /*_*/interwiki (iw_prefix); -CREATE TABLE /*_*/querycache ( - qc_type varbinary(32) NOT NULL, - qc_value int unsigned NOT NULL default 0, - qc_namespace int NOT NULL default 0, - qc_title varchar(255) binary NOT NULL default '' -) /*$wgDBTableOptions*/; -CREATE INDEX /*i*/qc_type ON /*_*/querycache (qc_type,qc_value); -CREATE TABLE /*_*/objectcache ( - keyname varbinary(255) NOT NULL default '' PRIMARY KEY, - value mediumblob, - exptime datetime -) /*$wgDBTableOptions*/; -CREATE INDEX /*i*/exptime ON /*_*/objectcache (exptime); -CREATE TABLE /*_*/transcache ( - tc_url varbinary(255) NOT NULL, - tc_contents text, - tc_time int NOT NULL -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/tc_url_idx ON /*_*/transcache (tc_url); -CREATE TABLE /*_*/logging ( - log_id int unsigned NOT NULL PRIMARY KEY AUTO_INCREMENT, - log_type varbinary(10) NOT NULL default '', - log_action varbinary(10) NOT NULL default '', - log_timestamp binary(14) NOT NULL default '19700101000000', - log_user int unsigned NOT NULL default 0, - log_namespace int NOT NULL default 0, - log_title varchar(255) binary NOT NULL default '', - log_comment varchar(255) NOT NULL default '', - log_params blob NOT NULL, - log_deleted tinyint unsigned NOT NULL default 0 -) /*$wgDBTableOptions*/; -CREATE INDEX /*i*/type_time ON /*_*/logging (log_type, log_timestamp); -CREATE INDEX /*i*/user_time ON /*_*/logging (log_user, log_timestamp); -CREATE INDEX /*i*/page_time ON /*_*/logging (log_namespace, log_title, log_timestamp); -CREATE INDEX /*i*/times ON /*_*/logging (log_timestamp); -CREATE TABLE /*_*/trackbacks ( - tb_id int PRIMARY KEY AUTO_INCREMENT, - tb_page int REFERENCES /*_*/page(page_id) ON DELETE CASCADE, - tb_title varchar(255) NOT NULL, - tb_url blob NOT NULL, - tb_ex text, - tb_name varchar(255) -) /*$wgDBTableOptions*/; -CREATE INDEX /*i*/tb_page ON /*_*/trackbacks (tb_page); -CREATE TABLE /*_*/job ( - job_id int unsigned NOT NULL PRIMARY KEY AUTO_INCREMENT, - job_cmd varbinary(60) NOT NULL default '', - job_namespace int NOT NULL, - job_title varchar(255) binary NOT NULL, - job_params blob NOT NULL -) /*$wgDBTableOptions*/; -CREATE INDEX /*i*/job_cmd ON /*_*/job (job_cmd, job_namespace, job_title); -CREATE TABLE /*_*/querycache_info ( - qci_type varbinary(32) NOT NULL default '', - qci_timestamp binary(14) NOT NULL default '19700101000000' -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/qci_type ON /*_*/querycache_info (qci_type); -CREATE TABLE /*_*/redirect ( - rd_from int unsigned NOT NULL default 0 PRIMARY KEY, - rd_namespace int NOT NULL default 0, - rd_title varchar(255) binary NOT NULL default '' -) /*$wgDBTableOptions*/; -CREATE INDEX /*i*/rd_ns_title ON /*_*/redirect (rd_namespace,rd_title,rd_from); -CREATE TABLE /*_*/querycachetwo ( - qcc_type varbinary(32) NOT NULL, - qcc_value int unsigned NOT NULL default 0, - qcc_namespace int NOT NULL default 0, - qcc_title varchar(255) binary NOT NULL default '', - qcc_namespacetwo int NOT NULL default 0, - qcc_titletwo varchar(255) binary NOT NULL default '' -) /*$wgDBTableOptions*/; -CREATE INDEX /*i*/qcc_type ON /*_*/querycachetwo (qcc_type,qcc_value); -CREATE INDEX /*i*/qcc_title ON /*_*/querycachetwo (qcc_type,qcc_namespace,qcc_title); -CREATE INDEX /*i*/qcc_titletwo ON /*_*/querycachetwo (qcc_type,qcc_namespacetwo,qcc_titletwo); -CREATE TABLE /*_*/page_restrictions ( - pr_page int NOT NULL, - pr_type varbinary(60) NOT NULL, - pr_level varbinary(60) NOT NULL, - pr_cascade tinyint NOT NULL, - pr_user int NULL, - pr_expiry varbinary(14) NULL, - pr_id int unsigned NOT NULL PRIMARY KEY AUTO_INCREMENT -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/pr_pagetype ON /*_*/page_restrictions (pr_page,pr_type); -CREATE INDEX /*i*/pr_typelevel ON /*_*/page_restrictions (pr_type,pr_level); -CREATE INDEX /*i*/pr_level ON /*_*/page_restrictions (pr_level); -CREATE INDEX /*i*/pr_cascade ON /*_*/page_restrictions (pr_cascade); -CREATE TABLE /*_*/protected_titles ( - pt_namespace int NOT NULL, - pt_title varchar(255) binary NOT NULL, - pt_user int unsigned NOT NULL, - pt_reason tinyblob, - pt_timestamp binary(14) NOT NULL, - pt_expiry varbinary(14) NOT NULL default '', - pt_create_perm varbinary(60) NOT NULL -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/pt_namespace_title ON /*_*/protected_titles (pt_namespace,pt_title); -CREATE INDEX /*i*/pt_timestamp ON /*_*/protected_titles (pt_timestamp); -CREATE TABLE /*_*/page_props ( - pp_page int NOT NULL, - pp_propname varbinary(60) NOT NULL, - pp_value blob NOT NULL -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/pp_page_propname ON /*_*/page_props (pp_page,pp_propname); -CREATE TABLE /*_*/updatelog ( - ul_key varchar(255) NOT NULL PRIMARY KEY -) /*$wgDBTableOptions*/; -CREATE TABLE /*_*/change_tag ( - ct_rc_id int NULL, - ct_log_id int NULL, - ct_rev_id int NULL, - ct_tag varchar(255) NOT NULL, - ct_params blob NULL -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/change_tag_rc_tag ON /*_*/change_tag (ct_rc_id,ct_tag); -CREATE UNIQUE INDEX /*i*/change_tag_log_tag ON /*_*/change_tag (ct_log_id,ct_tag); -CREATE UNIQUE INDEX /*i*/change_tag_rev_tag ON /*_*/change_tag (ct_rev_id,ct_tag); -CREATE INDEX /*i*/change_tag_tag_id ON /*_*/change_tag (ct_tag,ct_rc_id,ct_rev_id,ct_log_id); -CREATE TABLE /*_*/tag_summary ( - ts_rc_id int NULL, - ts_log_id int NULL, - ts_rev_id int NULL, - ts_tags blob NOT NULL -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/tag_summary_rc_id ON /*_*/tag_summary (ts_rc_id); -CREATE UNIQUE INDEX /*i*/tag_summary_log_id ON /*_*/tag_summary (ts_log_id); -CREATE UNIQUE INDEX /*i*/tag_summary_rev_id ON /*_*/tag_summary (ts_rev_id); -CREATE TABLE /*_*/valid_tag ( - vt_tag varchar(255) NOT NULL PRIMARY KEY -) /*$wgDBTableOptions*/; diff --git a/tests/phpunit/includes/db/sqlite/tables-1.16.sql b/tests/phpunit/includes/db/sqlite/tables-1.16.sql deleted file mode 100644 index 6e56add2..00000000 --- a/tests/phpunit/includes/db/sqlite/tables-1.16.sql +++ /dev/null @@ -1,483 +0,0 @@ --- This is a copy of MediaWiki 1.16 schema shared by MySQL and SQLite. --- It is used for updater testing. Comments are stripped to decrease --- file size, as we don't need to maintain it. - -CREATE TABLE /*_*/user ( - user_id int unsigned NOT NULL PRIMARY KEY AUTO_INCREMENT, - user_name varchar(255) binary NOT NULL default '', - user_real_name varchar(255) binary NOT NULL default '', - user_password tinyblob NOT NULL, - 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_email_token binary(32), - user_email_token_expires binary(14), - user_registration binary(14), - user_editcount int -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/user_name ON /*_*/user (user_name); -CREATE INDEX /*i*/user_email_token ON /*_*/user (user_email_token); -CREATE TABLE /*_*/user_groups ( - ug_user int unsigned NOT NULL default 0, - ug_group varbinary(16) NOT NULL default '' -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/ug_user_group ON /*_*/user_groups (ug_user,ug_group); -CREATE INDEX /*i*/ug_group ON /*_*/user_groups (ug_group); -CREATE TABLE /*_*/user_newtalk ( - user_id int NOT NULL default 0, - user_ip varbinary(40) NOT NULL default '', - user_last_timestamp binary(14) NOT NULL default '' -) /*$wgDBTableOptions*/; -CREATE INDEX /*i*/un_user_id ON /*_*/user_newtalk (user_id); -CREATE INDEX /*i*/un_user_ip ON /*_*/user_newtalk (user_ip); -CREATE TABLE /*_*/user_properties ( - up_user int NOT NULL, - up_property varbinary(32) NOT NULL, - up_value blob -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/user_properties_user_property ON /*_*/user_properties (up_user,up_property); -CREATE INDEX /*i*/user_properties_property ON /*_*/user_properties (up_property); -CREATE TABLE /*_*/page ( - page_id int unsigned NOT NULL PRIMARY KEY AUTO_INCREMENT, - page_namespace int NOT NULL, - page_title varchar(255) binary NOT NULL, - page_restrictions tinyblob NOT NULL, - page_counter bigint unsigned NOT NULL default 0, - page_is_redirect tinyint unsigned NOT NULL default 0, - page_is_new tinyint unsigned NOT NULL default 0, - page_random real unsigned NOT NULL, - page_touched binary(14) NOT NULL default '', - page_latest int unsigned NOT NULL, - page_len int unsigned NOT NULL -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/name_title ON /*_*/page (page_namespace,page_title); -CREATE INDEX /*i*/page_random ON /*_*/page (page_random); -CREATE INDEX /*i*/page_len ON /*_*/page (page_len); -CREATE TABLE /*_*/revision ( - rev_id int unsigned NOT NULL PRIMARY KEY AUTO_INCREMENT, - rev_page int unsigned NOT NULL, - rev_text_id int unsigned NOT NULL, - rev_comment tinyblob NOT NULL, - rev_user int unsigned NOT NULL default 0, - rev_user_text varchar(255) binary NOT NULL default '', - rev_timestamp binary(14) NOT NULL default '', - rev_minor_edit tinyint unsigned NOT NULL default 0, - rev_deleted tinyint unsigned NOT NULL default 0, - rev_len int unsigned, - rev_parent_id int unsigned default NULL -) /*$wgDBTableOptions*/ MAX_ROWS=10000000 AVG_ROW_LENGTH=1024; -CREATE UNIQUE INDEX /*i*/rev_page_id ON /*_*/revision (rev_page, rev_id); -CREATE INDEX /*i*/rev_timestamp ON /*_*/revision (rev_timestamp); -CREATE INDEX /*i*/page_timestamp ON /*_*/revision (rev_page,rev_timestamp); -CREATE INDEX /*i*/user_timestamp ON /*_*/revision (rev_user,rev_timestamp); -CREATE INDEX /*i*/usertext_timestamp ON /*_*/revision (rev_user_text,rev_timestamp); -CREATE TABLE /*_*/text ( - old_id int unsigned NOT NULL PRIMARY KEY AUTO_INCREMENT, - old_text mediumblob NOT NULL, - old_flags tinyblob NOT NULL -) /*$wgDBTableOptions*/ MAX_ROWS=10000000 AVG_ROW_LENGTH=10240; -CREATE TABLE /*_*/archive ( - ar_namespace int NOT NULL default 0, - ar_title varchar(255) binary NOT NULL default '', - ar_text mediumblob NOT NULL, - ar_comment tinyblob NOT NULL, - ar_user int unsigned NOT NULL default 0, - ar_user_text varchar(255) binary NOT NULL, - ar_timestamp binary(14) NOT NULL default '', - ar_minor_edit tinyint NOT NULL default 0, - ar_flags tinyblob NOT NULL, - ar_rev_id int unsigned, - ar_text_id int unsigned, - ar_deleted tinyint unsigned NOT NULL default 0, - ar_len int unsigned, - ar_page_id int unsigned, - ar_parent_id int unsigned default NULL -) /*$wgDBTableOptions*/; -CREATE INDEX /*i*/name_title_timestamp ON /*_*/archive (ar_namespace,ar_title,ar_timestamp); -CREATE INDEX /*i*/ar_usertext_timestamp ON /*_*/archive (ar_user_text,ar_timestamp); -CREATE TABLE /*_*/pagelinks ( - pl_from int unsigned NOT NULL default 0, - pl_namespace int NOT NULL default 0, - pl_title varchar(255) binary NOT NULL default '' -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/pl_from ON /*_*/pagelinks (pl_from,pl_namespace,pl_title); -CREATE UNIQUE INDEX /*i*/pl_namespace ON /*_*/pagelinks (pl_namespace,pl_title,pl_from); -CREATE TABLE /*_*/templatelinks ( - tl_from int unsigned NOT NULL default 0, - tl_namespace int NOT NULL default 0, - tl_title varchar(255) binary NOT NULL default '' -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/tl_from ON /*_*/templatelinks (tl_from,tl_namespace,tl_title); -CREATE UNIQUE INDEX /*i*/tl_namespace ON /*_*/templatelinks (tl_namespace,tl_title,tl_from); -CREATE TABLE /*_*/imagelinks ( - il_from int unsigned NOT NULL default 0, - il_to varchar(255) binary NOT NULL default '' -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/il_from ON /*_*/imagelinks (il_from,il_to); -CREATE UNIQUE INDEX /*i*/il_to ON /*_*/imagelinks (il_to,il_from); -CREATE TABLE /*_*/categorylinks ( - cl_from int unsigned NOT NULL default 0, - cl_to varchar(255) binary NOT NULL default '', - cl_sortkey varchar(70) binary NOT NULL default '', - cl_timestamp timestamp NOT NULL -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/cl_from ON /*_*/categorylinks (cl_from,cl_to); -CREATE INDEX /*i*/cl_sortkey ON /*_*/categorylinks (cl_to,cl_sortkey,cl_from); -CREATE INDEX /*i*/cl_timestamp ON /*_*/categorylinks (cl_to,cl_timestamp); -CREATE TABLE /*_*/category ( - cat_id int unsigned NOT NULL PRIMARY KEY AUTO_INCREMENT, - cat_title varchar(255) binary NOT NULL, - cat_pages int signed NOT NULL default 0, - cat_subcats int signed NOT NULL default 0, - cat_files int signed NOT NULL default 0, - cat_hidden tinyint unsigned NOT NULL default 0 -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/cat_title ON /*_*/category (cat_title); -CREATE INDEX /*i*/cat_pages ON /*_*/category (cat_pages); -CREATE TABLE /*_*/externallinks ( - el_from int unsigned NOT NULL default 0, - el_to blob NOT NULL, - el_index blob NOT NULL -) /*$wgDBTableOptions*/; -CREATE INDEX /*i*/el_from ON /*_*/externallinks (el_from, el_to(40)); -CREATE INDEX /*i*/el_to ON /*_*/externallinks (el_to(60), el_from); -CREATE INDEX /*i*/el_index ON /*_*/externallinks (el_index(60)); -CREATE TABLE /*_*/external_user ( - eu_local_id int unsigned NOT NULL PRIMARY KEY, - eu_external_id varchar(255) binary NOT NULL -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/eu_external_id ON /*_*/external_user (eu_external_id); -CREATE TABLE /*_*/langlinks ( - ll_from int unsigned NOT NULL default 0, - ll_lang varbinary(20) NOT NULL default '', - ll_title varchar(255) binary NOT NULL default '' -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/ll_from ON /*_*/langlinks (ll_from, ll_lang); -CREATE INDEX /*i*/ll_lang ON /*_*/langlinks (ll_lang, ll_title); -CREATE TABLE /*_*/site_stats ( - ss_row_id int unsigned NOT NULL, - ss_total_views bigint unsigned default 0, - ss_total_edits bigint unsigned default 0, - ss_good_articles bigint unsigned default 0, - ss_total_pages bigint default '-1', - ss_users bigint default '-1', - ss_active_users bigint default '-1', - ss_admins int default '-1', - ss_images int default 0 -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/ss_row_id ON /*_*/site_stats (ss_row_id); -CREATE TABLE /*_*/hitcounter ( - hc_id int unsigned NOT NULL -) ENGINE=HEAP MAX_ROWS=25000; -CREATE TABLE /*_*/ipblocks ( - ipb_id int NOT NULL PRIMARY KEY AUTO_INCREMENT, - ipb_address tinyblob NOT NULL, - ipb_user int unsigned NOT NULL default 0, - ipb_by int unsigned NOT NULL default 0, - ipb_by_text varchar(255) binary NOT NULL default '', - ipb_reason tinyblob NOT NULL, - ipb_timestamp binary(14) NOT NULL default '', - ipb_auto bool NOT NULL default 0, - ipb_anon_only bool NOT NULL default 0, - ipb_create_account bool NOT NULL default 1, - ipb_enable_autoblock bool NOT NULL default '1', - ipb_expiry varbinary(14) NOT NULL default '', - ipb_range_start tinyblob NOT NULL, - ipb_range_end tinyblob NOT NULL, - ipb_deleted bool NOT NULL default 0, - ipb_block_email bool NOT NULL default 0, - ipb_allow_usertalk bool NOT NULL default 0 -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/ipb_address ON /*_*/ipblocks (ipb_address(255), ipb_user, ipb_auto, ipb_anon_only); -CREATE INDEX /*i*/ipb_user ON /*_*/ipblocks (ipb_user); -CREATE INDEX /*i*/ipb_range ON /*_*/ipblocks (ipb_range_start(8), ipb_range_end(8)); -CREATE INDEX /*i*/ipb_timestamp ON /*_*/ipblocks (ipb_timestamp); -CREATE INDEX /*i*/ipb_expiry ON /*_*/ipblocks (ipb_expiry); -CREATE TABLE /*_*/image ( - img_name varchar(255) binary NOT NULL default '' PRIMARY KEY, - img_size int unsigned NOT NULL default 0, - img_width int NOT NULL default 0, - img_height int NOT NULL default 0, - img_metadata mediumblob NOT NULL, - img_bits int NOT NULL default 0, - img_media_type ENUM("UNKNOWN", "BITMAP", "DRAWING", "AUDIO", "VIDEO", "MULTIMEDIA", "OFFICE", "TEXT", "EXECUTABLE", "ARCHIVE") default NULL, - img_major_mime ENUM("unknown", "application", "audio", "image", "text", "video", "message", "model", "multipart") NOT NULL default "unknown", - img_minor_mime varbinary(100) NOT NULL default "unknown", - img_description tinyblob NOT NULL, - img_user int unsigned NOT NULL default 0, - img_user_text varchar(255) binary NOT NULL, - img_timestamp varbinary(14) NOT NULL default '', - img_sha1 varbinary(32) NOT NULL default '' -) /*$wgDBTableOptions*/; -CREATE INDEX /*i*/img_usertext_timestamp ON /*_*/image (img_user_text,img_timestamp); -CREATE INDEX /*i*/img_size ON /*_*/image (img_size); -CREATE INDEX /*i*/img_timestamp ON /*_*/image (img_timestamp); -CREATE INDEX /*i*/img_sha1 ON /*_*/image (img_sha1); -CREATE TABLE /*_*/oldimage ( - oi_name varchar(255) binary NOT NULL default '', - oi_archive_name varchar(255) binary NOT NULL default '', - oi_size int unsigned NOT NULL default 0, - oi_width int NOT NULL default 0, - oi_height int NOT NULL default 0, - oi_bits int NOT NULL default 0, - oi_description tinyblob NOT NULL, - oi_user int unsigned NOT NULL default 0, - oi_user_text varchar(255) binary NOT NULL, - oi_timestamp binary(14) NOT NULL default '', - oi_metadata mediumblob NOT NULL, - oi_media_type ENUM("UNKNOWN", "BITMAP", "DRAWING", "AUDIO", "VIDEO", "MULTIMEDIA", "OFFICE", "TEXT", "EXECUTABLE", "ARCHIVE") default NULL, - oi_major_mime ENUM("unknown", "application", "audio", "image", "text", "video", "message", "model", "multipart") NOT NULL default "unknown", - oi_minor_mime varbinary(100) NOT NULL default "unknown", - oi_deleted tinyint unsigned NOT NULL default 0, - oi_sha1 varbinary(32) NOT NULL default '' -) /*$wgDBTableOptions*/; -CREATE INDEX /*i*/oi_usertext_timestamp ON /*_*/oldimage (oi_user_text,oi_timestamp); -CREATE INDEX /*i*/oi_name_timestamp ON /*_*/oldimage (oi_name,oi_timestamp); -CREATE INDEX /*i*/oi_name_archive_name ON /*_*/oldimage (oi_name,oi_archive_name(14)); -CREATE INDEX /*i*/oi_sha1 ON /*_*/oldimage (oi_sha1); -CREATE TABLE /*_*/filearchive ( - fa_id int NOT NULL PRIMARY KEY AUTO_INCREMENT, - fa_name varchar(255) binary NOT NULL default '', - fa_archive_name varchar(255) binary default '', - fa_storage_group varbinary(16), - fa_storage_key varbinary(64) default '', - fa_deleted_user int, - fa_deleted_timestamp binary(14) default '', - fa_deleted_reason text, - fa_size int unsigned default 0, - fa_width int default 0, - fa_height int default 0, - fa_metadata mediumblob, - fa_bits int default 0, - fa_media_type ENUM("UNKNOWN", "BITMAP", "DRAWING", "AUDIO", "VIDEO", "MULTIMEDIA", "OFFICE", "TEXT", "EXECUTABLE", "ARCHIVE") default NULL, - fa_major_mime ENUM("unknown", "application", "audio", "image", "text", "video", "message", "model", "multipart") default "unknown", - fa_minor_mime varbinary(100) default "unknown", - fa_description tinyblob, - fa_user int unsigned default 0, - fa_user_text varchar(255) binary, - fa_timestamp binary(14) default '', - fa_deleted tinyint unsigned NOT NULL default 0 -) /*$wgDBTableOptions*/; -CREATE INDEX /*i*/fa_name ON /*_*/filearchive (fa_name, fa_timestamp); -CREATE INDEX /*i*/fa_storage_group ON /*_*/filearchive (fa_storage_group, fa_storage_key); -CREATE INDEX /*i*/fa_deleted_timestamp ON /*_*/filearchive (fa_deleted_timestamp); -CREATE INDEX /*i*/fa_user_timestamp ON /*_*/filearchive (fa_user_text,fa_timestamp); -CREATE TABLE /*_*/recentchanges ( - rc_id int NOT NULL PRIMARY KEY AUTO_INCREMENT, - rc_timestamp varbinary(14) NOT NULL default '', - rc_cur_time varbinary(14) NOT NULL default '', - rc_user int unsigned NOT NULL default 0, - rc_user_text varchar(255) binary NOT NULL, - rc_namespace int NOT NULL default 0, - rc_title varchar(255) binary NOT NULL default '', - rc_comment varchar(255) binary NOT NULL default '', - rc_minor tinyint unsigned NOT NULL default 0, - rc_bot tinyint unsigned NOT NULL default 0, - rc_new tinyint unsigned NOT NULL default 0, - rc_cur_id int unsigned NOT NULL default 0, - rc_this_oldid int unsigned NOT NULL default 0, - rc_last_oldid int unsigned NOT NULL default 0, - rc_type tinyint unsigned NOT NULL default 0, - rc_moved_to_ns tinyint unsigned NOT NULL default 0, - rc_moved_to_title varchar(255) binary NOT NULL default '', - rc_patrolled tinyint unsigned NOT NULL default 0, - rc_ip varbinary(40) NOT NULL default '', - rc_old_len int, - rc_new_len int, - rc_deleted tinyint unsigned NOT NULL default 0, - rc_logid int unsigned NOT NULL default 0, - rc_log_type varbinary(255) NULL default NULL, - rc_log_action varbinary(255) NULL default NULL, - rc_params blob NULL -) /*$wgDBTableOptions*/; -CREATE INDEX /*i*/rc_timestamp ON /*_*/recentchanges (rc_timestamp); -CREATE INDEX /*i*/rc_namespace_title ON /*_*/recentchanges (rc_namespace, rc_title); -CREATE INDEX /*i*/rc_cur_id ON /*_*/recentchanges (rc_cur_id); -CREATE INDEX /*i*/new_name_timestamp ON /*_*/recentchanges (rc_new,rc_namespace,rc_timestamp); -CREATE INDEX /*i*/rc_ip ON /*_*/recentchanges (rc_ip); -CREATE INDEX /*i*/rc_ns_usertext ON /*_*/recentchanges (rc_namespace, rc_user_text); -CREATE INDEX /*i*/rc_user_text ON /*_*/recentchanges (rc_user_text, rc_timestamp); -CREATE TABLE /*_*/watchlist ( - wl_user int unsigned NOT NULL, - wl_namespace int NOT NULL default 0, - wl_title varchar(255) binary NOT NULL default '', - wl_notificationtimestamp varbinary(14) -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/wl_user ON /*_*/watchlist (wl_user, wl_namespace, wl_title); -CREATE INDEX /*i*/namespace_title ON /*_*/watchlist (wl_namespace, wl_title); -CREATE TABLE /*_*/math ( - math_inputhash varbinary(16) NOT NULL, - math_outputhash varbinary(16) NOT NULL, - math_html_conservativeness tinyint NOT NULL, - math_html text, - math_mathml text -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/math_inputhash ON /*_*/math (math_inputhash); -CREATE TABLE /*_*/searchindex ( - si_page int unsigned NOT NULL, - si_title varchar(255) NOT NULL default '', - si_text mediumtext NOT NULL -) ENGINE=MyISAM; -CREATE UNIQUE INDEX /*i*/si_page ON /*_*/searchindex (si_page); -CREATE FULLTEXT INDEX /*i*/si_title ON /*_*/searchindex (si_title); -CREATE FULLTEXT INDEX /*i*/si_text ON /*_*/searchindex (si_text); -CREATE TABLE /*_*/interwiki ( - iw_prefix varchar(32) NOT NULL, - iw_url blob NOT NULL, - iw_local bool NOT NULL, - iw_trans tinyint NOT NULL default 0 -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/iw_prefix ON /*_*/interwiki (iw_prefix); -CREATE TABLE /*_*/querycache ( - qc_type varbinary(32) NOT NULL, - qc_value int unsigned NOT NULL default 0, - qc_namespace int NOT NULL default 0, - qc_title varchar(255) binary NOT NULL default '' -) /*$wgDBTableOptions*/; -CREATE INDEX /*i*/qc_type ON /*_*/querycache (qc_type,qc_value); -CREATE TABLE /*_*/objectcache ( - keyname varbinary(255) NOT NULL default '' PRIMARY KEY, - value mediumblob, - exptime datetime -) /*$wgDBTableOptions*/; -CREATE INDEX /*i*/exptime ON /*_*/objectcache (exptime); -CREATE TABLE /*_*/transcache ( - tc_url varbinary(255) NOT NULL, - tc_contents text, - tc_time binary(14) NOT NULL -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/tc_url_idx ON /*_*/transcache (tc_url); -CREATE TABLE /*_*/logging ( - log_id int unsigned NOT NULL PRIMARY KEY AUTO_INCREMENT, - log_type varbinary(32) NOT NULL default '', - log_action varbinary(32) NOT NULL default '', - log_timestamp binary(14) NOT NULL default '19700101000000', - log_user int unsigned NOT NULL default 0, - log_user_text varchar(255) binary NOT NULL default '', - log_namespace int NOT NULL default 0, - log_title varchar(255) binary NOT NULL default '', - log_page int unsigned NULL, - log_comment varchar(255) NOT NULL default '', - log_params blob NOT NULL, - log_deleted tinyint unsigned NOT NULL default 0 -) /*$wgDBTableOptions*/; -CREATE INDEX /*i*/type_time ON /*_*/logging (log_type, log_timestamp); -CREATE INDEX /*i*/user_time ON /*_*/logging (log_user, log_timestamp); -CREATE INDEX /*i*/page_time ON /*_*/logging (log_namespace, log_title, log_timestamp); -CREATE INDEX /*i*/times ON /*_*/logging (log_timestamp); -CREATE INDEX /*i*/log_user_type_time ON /*_*/logging (log_user, log_type, log_timestamp); -CREATE INDEX /*i*/log_page_id_time ON /*_*/logging (log_page,log_timestamp); -CREATE TABLE /*_*/log_search ( - ls_field varbinary(32) NOT NULL, - ls_value varchar(255) NOT NULL, - ls_log_id int unsigned NOT NULL default 0 -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/ls_field_val ON /*_*/log_search (ls_field,ls_value,ls_log_id); -CREATE INDEX /*i*/ls_log_id ON /*_*/log_search (ls_log_id); -CREATE TABLE /*_*/trackbacks ( - tb_id int PRIMARY KEY AUTO_INCREMENT, - tb_page int REFERENCES /*_*/page(page_id) ON DELETE CASCADE, - tb_title varchar(255) NOT NULL, - tb_url blob NOT NULL, - tb_ex text, - tb_name varchar(255) -) /*$wgDBTableOptions*/; -CREATE INDEX /*i*/tb_page ON /*_*/trackbacks (tb_page); -CREATE TABLE /*_*/job ( - job_id int unsigned NOT NULL PRIMARY KEY AUTO_INCREMENT, - job_cmd varbinary(60) NOT NULL default '', - job_namespace int NOT NULL, - job_title varchar(255) binary NOT NULL, - job_params blob NOT NULL -) /*$wgDBTableOptions*/; -CREATE INDEX /*i*/job_cmd ON /*_*/job (job_cmd, job_namespace, job_title, job_params(128)); -CREATE TABLE /*_*/querycache_info ( - qci_type varbinary(32) NOT NULL default '', - qci_timestamp binary(14) NOT NULL default '19700101000000' -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/qci_type ON /*_*/querycache_info (qci_type); -CREATE TABLE /*_*/redirect ( - rd_from int unsigned NOT NULL default 0 PRIMARY KEY, - rd_namespace int NOT NULL default 0, - rd_title varchar(255) binary NOT NULL default '', - rd_interwiki varchar(32) default NULL, - rd_fragment varchar(255) binary default NULL -) /*$wgDBTableOptions*/; -CREATE INDEX /*i*/rd_ns_title ON /*_*/redirect (rd_namespace,rd_title,rd_from); -CREATE TABLE /*_*/querycachetwo ( - qcc_type varbinary(32) NOT NULL, - qcc_value int unsigned NOT NULL default 0, - qcc_namespace int NOT NULL default 0, - qcc_title varchar(255) binary NOT NULL default '', - qcc_namespacetwo int NOT NULL default 0, - qcc_titletwo varchar(255) binary NOT NULL default '' -) /*$wgDBTableOptions*/; -CREATE INDEX /*i*/qcc_type ON /*_*/querycachetwo (qcc_type,qcc_value); -CREATE INDEX /*i*/qcc_title ON /*_*/querycachetwo (qcc_type,qcc_namespace,qcc_title); -CREATE INDEX /*i*/qcc_titletwo ON /*_*/querycachetwo (qcc_type,qcc_namespacetwo,qcc_titletwo); -CREATE TABLE /*_*/page_restrictions ( - pr_page int NOT NULL, - pr_type varbinary(60) NOT NULL, - pr_level varbinary(60) NOT NULL, - pr_cascade tinyint NOT NULL, - pr_user int NULL, - pr_expiry varbinary(14) NULL, - pr_id int unsigned NOT NULL PRIMARY KEY AUTO_INCREMENT -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/pr_pagetype ON /*_*/page_restrictions (pr_page,pr_type); -CREATE INDEX /*i*/pr_typelevel ON /*_*/page_restrictions (pr_type,pr_level); -CREATE INDEX /*i*/pr_level ON /*_*/page_restrictions (pr_level); -CREATE INDEX /*i*/pr_cascade ON /*_*/page_restrictions (pr_cascade); -CREATE TABLE /*_*/protected_titles ( - pt_namespace int NOT NULL, - pt_title varchar(255) binary NOT NULL, - pt_user int unsigned NOT NULL, - pt_reason tinyblob, - pt_timestamp binary(14) NOT NULL, - pt_expiry varbinary(14) NOT NULL default '', - pt_create_perm varbinary(60) NOT NULL -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/pt_namespace_title ON /*_*/protected_titles (pt_namespace,pt_title); -CREATE INDEX /*i*/pt_timestamp ON /*_*/protected_titles (pt_timestamp); -CREATE TABLE /*_*/page_props ( - pp_page int NOT NULL, - pp_propname varbinary(60) NOT NULL, - pp_value blob NOT NULL -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/pp_page_propname ON /*_*/page_props (pp_page,pp_propname); -CREATE TABLE /*_*/updatelog ( - ul_key varchar(255) NOT NULL PRIMARY KEY -) /*$wgDBTableOptions*/; -CREATE TABLE /*_*/change_tag ( - ct_rc_id int NULL, - ct_log_id int NULL, - ct_rev_id int NULL, - ct_tag varchar(255) NOT NULL, - ct_params blob NULL -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/change_tag_rc_tag ON /*_*/change_tag (ct_rc_id,ct_tag); -CREATE UNIQUE INDEX /*i*/change_tag_log_tag ON /*_*/change_tag (ct_log_id,ct_tag); -CREATE UNIQUE INDEX /*i*/change_tag_rev_tag ON /*_*/change_tag (ct_rev_id,ct_tag); -CREATE INDEX /*i*/change_tag_tag_id ON /*_*/change_tag (ct_tag,ct_rc_id,ct_rev_id,ct_log_id); -CREATE TABLE /*_*/tag_summary ( - ts_rc_id int NULL, - ts_log_id int NULL, - ts_rev_id int NULL, - ts_tags blob NOT NULL -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/tag_summary_rc_id ON /*_*/tag_summary (ts_rc_id); -CREATE UNIQUE INDEX /*i*/tag_summary_log_id ON /*_*/tag_summary (ts_log_id); -CREATE UNIQUE INDEX /*i*/tag_summary_rev_id ON /*_*/tag_summary (ts_rev_id); -CREATE TABLE /*_*/valid_tag ( - vt_tag varchar(255) NOT NULL PRIMARY KEY -) /*$wgDBTableOptions*/; -CREATE TABLE /*_*/l10n_cache ( - lc_lang varbinary(32) NOT NULL, - lc_key varchar(255) NOT NULL, - lc_value mediumblob NOT NULL -) /*$wgDBTableOptions*/; -CREATE INDEX /*i*/lc_lang_key ON /*_*/l10n_cache (lc_lang, lc_key); diff --git a/tests/phpunit/includes/db/sqlite/tables-1.17.sql b/tests/phpunit/includes/db/sqlite/tables-1.17.sql deleted file mode 100644 index 69ae3764..00000000 --- a/tests/phpunit/includes/db/sqlite/tables-1.17.sql +++ /dev/null @@ -1,516 +0,0 @@ --- This is a copy of MediaWiki 1.17 schema shared by MySQL and SQLite. --- It is used for updater testing. Comments are stripped to decrease --- file size, as we don't need to maintain it. - -CREATE TABLE /*_*/user ( - user_id int unsigned NOT NULL PRIMARY KEY AUTO_INCREMENT, - user_name varchar(255) binary NOT NULL default '', - user_real_name varchar(255) binary NOT NULL default '', - user_password tinyblob NOT NULL, - 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_email_token binary(32), - user_email_token_expires binary(14), - user_registration binary(14), - user_editcount int -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/user_name ON /*_*/user (user_name); -CREATE INDEX /*i*/user_email_token ON /*_*/user (user_email_token); -CREATE TABLE /*_*/user_groups ( - ug_user int unsigned NOT NULL default 0, - ug_group varbinary(16) NOT NULL default '' -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/ug_user_group ON /*_*/user_groups (ug_user,ug_group); -CREATE INDEX /*i*/ug_group ON /*_*/user_groups (ug_group); -CREATE TABLE /*_*/user_newtalk ( - user_id int NOT NULL default 0, - user_ip varbinary(40) NOT NULL default '', - user_last_timestamp binary(14) NOT NULL default '' -) /*$wgDBTableOptions*/; -CREATE INDEX /*i*/un_user_id ON /*_*/user_newtalk (user_id); -CREATE INDEX /*i*/un_user_ip ON /*_*/user_newtalk (user_ip); -CREATE TABLE /*_*/user_properties ( - up_user int NOT NULL, - up_property varbinary(32) NOT NULL, - up_value blob -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/user_properties_user_property ON /*_*/user_properties (up_user,up_property); -CREATE INDEX /*i*/user_properties_property ON /*_*/user_properties (up_property); -CREATE TABLE /*_*/page ( - page_id int unsigned NOT NULL PRIMARY KEY AUTO_INCREMENT, - page_namespace int NOT NULL, - page_title varchar(255) binary NOT NULL, - page_restrictions tinyblob NOT NULL, - page_counter bigint unsigned NOT NULL default 0, - page_is_redirect tinyint unsigned NOT NULL default 0, - page_is_new tinyint unsigned NOT NULL default 0, - page_random real unsigned NOT NULL, - page_touched binary(14) NOT NULL default '', - page_latest int unsigned NOT NULL, - page_len int unsigned NOT NULL -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/name_title ON /*_*/page (page_namespace,page_title); -CREATE INDEX /*i*/page_random ON /*_*/page (page_random); -CREATE INDEX /*i*/page_len ON /*_*/page (page_len); -CREATE TABLE /*_*/revision ( - rev_id int unsigned NOT NULL PRIMARY KEY AUTO_INCREMENT, - rev_page int unsigned NOT NULL, - rev_text_id int unsigned NOT NULL, - rev_comment tinyblob NOT NULL, - rev_user int unsigned NOT NULL default 0, - rev_user_text varchar(255) binary NOT NULL default '', - rev_timestamp binary(14) NOT NULL default '', - rev_minor_edit tinyint unsigned NOT NULL default 0, - rev_deleted tinyint unsigned NOT NULL default 0, - rev_len int unsigned, - rev_parent_id int unsigned default NULL -) /*$wgDBTableOptions*/ MAX_ROWS=10000000 AVG_ROW_LENGTH=1024; -CREATE UNIQUE INDEX /*i*/rev_page_id ON /*_*/revision (rev_page, rev_id); -CREATE INDEX /*i*/rev_timestamp ON /*_*/revision (rev_timestamp); -CREATE INDEX /*i*/page_timestamp ON /*_*/revision (rev_page,rev_timestamp); -CREATE INDEX /*i*/user_timestamp ON /*_*/revision (rev_user,rev_timestamp); -CREATE INDEX /*i*/usertext_timestamp ON /*_*/revision (rev_user_text,rev_timestamp); -CREATE TABLE /*_*/text ( - old_id int unsigned NOT NULL PRIMARY KEY AUTO_INCREMENT, - old_text mediumblob NOT NULL, - old_flags tinyblob NOT NULL -) /*$wgDBTableOptions*/ MAX_ROWS=10000000 AVG_ROW_LENGTH=10240; -CREATE TABLE /*_*/archive ( - ar_namespace int NOT NULL default 0, - ar_title varchar(255) binary NOT NULL default '', - ar_text mediumblob NOT NULL, - ar_comment tinyblob NOT NULL, - ar_user int unsigned NOT NULL default 0, - ar_user_text varchar(255) binary NOT NULL, - ar_timestamp binary(14) NOT NULL default '', - ar_minor_edit tinyint NOT NULL default 0, - ar_flags tinyblob NOT NULL, - ar_rev_id int unsigned, - ar_text_id int unsigned, - ar_deleted tinyint unsigned NOT NULL default 0, - ar_len int unsigned, - ar_page_id int unsigned, - ar_parent_id int unsigned default NULL -) /*$wgDBTableOptions*/; -CREATE INDEX /*i*/name_title_timestamp ON /*_*/archive (ar_namespace,ar_title,ar_timestamp); -CREATE INDEX /*i*/ar_usertext_timestamp ON /*_*/archive (ar_user_text,ar_timestamp); -CREATE INDEX /*i*/ar_revid ON /*_*/archive (ar_rev_id); -CREATE TABLE /*_*/pagelinks ( - pl_from int unsigned NOT NULL default 0, - pl_namespace int NOT NULL default 0, - pl_title varchar(255) binary NOT NULL default '' -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/pl_from ON /*_*/pagelinks (pl_from,pl_namespace,pl_title); -CREATE UNIQUE INDEX /*i*/pl_namespace ON /*_*/pagelinks (pl_namespace,pl_title,pl_from); -CREATE TABLE /*_*/templatelinks ( - tl_from int unsigned NOT NULL default 0, - tl_namespace int NOT NULL default 0, - tl_title varchar(255) binary NOT NULL default '' -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/tl_from ON /*_*/templatelinks (tl_from,tl_namespace,tl_title); -CREATE UNIQUE INDEX /*i*/tl_namespace ON /*_*/templatelinks (tl_namespace,tl_title,tl_from); -CREATE TABLE /*_*/imagelinks ( - il_from int unsigned NOT NULL default 0, - il_to varchar(255) binary NOT NULL default '' -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/il_from ON /*_*/imagelinks (il_from,il_to); -CREATE UNIQUE INDEX /*i*/il_to ON /*_*/imagelinks (il_to,il_from); -CREATE TABLE /*_*/categorylinks ( - cl_from int unsigned NOT NULL default 0, - cl_to varchar(255) binary NOT NULL default '', - cl_sortkey varbinary(230) NOT NULL default '', - cl_sortkey_prefix varchar(255) binary NOT NULL default '', - cl_timestamp timestamp NOT NULL, - cl_collation varbinary(32) NOT NULL default '', - cl_type ENUM('page', 'subcat', 'file') NOT NULL default 'page' -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/cl_from ON /*_*/categorylinks (cl_from,cl_to); -CREATE INDEX /*i*/cl_sortkey ON /*_*/categorylinks (cl_to,cl_type,cl_sortkey,cl_from); -CREATE INDEX /*i*/cl_timestamp ON /*_*/categorylinks (cl_to,cl_timestamp); -CREATE INDEX /*i*/cl_collation ON /*_*/categorylinks (cl_collation); -CREATE TABLE /*_*/category ( - cat_id int unsigned NOT NULL PRIMARY KEY AUTO_INCREMENT, - cat_title varchar(255) binary NOT NULL, - cat_pages int signed NOT NULL default 0, - cat_subcats int signed NOT NULL default 0, - cat_files int signed NOT NULL default 0, - cat_hidden tinyint unsigned NOT NULL default 0 -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/cat_title ON /*_*/category (cat_title); -CREATE INDEX /*i*/cat_pages ON /*_*/category (cat_pages); -CREATE TABLE /*_*/externallinks ( - el_from int unsigned NOT NULL default 0, - el_to blob NOT NULL, - el_index blob NOT NULL -) /*$wgDBTableOptions*/; -CREATE INDEX /*i*/el_from ON /*_*/externallinks (el_from, el_to(40)); -CREATE INDEX /*i*/el_to ON /*_*/externallinks (el_to(60), el_from); -CREATE INDEX /*i*/el_index ON /*_*/externallinks (el_index(60)); -CREATE TABLE /*_*/external_user ( - eu_local_id int unsigned NOT NULL PRIMARY KEY, - eu_external_id varchar(255) binary NOT NULL -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/eu_external_id ON /*_*/external_user (eu_external_id); -CREATE TABLE /*_*/langlinks ( - ll_from int unsigned NOT NULL default 0, - ll_lang varbinary(20) NOT NULL default '', - ll_title varchar(255) binary NOT NULL default '' -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/ll_from ON /*_*/langlinks (ll_from, ll_lang); -CREATE INDEX /*i*/ll_lang ON /*_*/langlinks (ll_lang, ll_title); -CREATE TABLE /*_*/iwlinks ( - iwl_from int unsigned NOT NULL default 0, - iwl_prefix varbinary(20) NOT NULL default '', - iwl_title varchar(255) binary NOT NULL default '' -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/iwl_from ON /*_*/iwlinks (iwl_from, iwl_prefix, iwl_title); -CREATE UNIQUE INDEX /*i*/iwl_prefix_title_from ON /*_*/iwlinks (iwl_prefix, iwl_title, iwl_from); -CREATE TABLE /*_*/site_stats ( - ss_row_id int unsigned NOT NULL, - ss_total_views bigint unsigned default 0, - ss_total_edits bigint unsigned default 0, - ss_good_articles bigint unsigned default 0, - ss_total_pages bigint default '-1', - ss_users bigint default '-1', - ss_active_users bigint default '-1', - ss_admins int default '-1', - ss_images int default 0 -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/ss_row_id ON /*_*/site_stats (ss_row_id); -CREATE TABLE /*_*/hitcounter ( - hc_id int unsigned NOT NULL -) ENGINE=HEAP MAX_ROWS=25000; -CREATE TABLE /*_*/ipblocks ( - ipb_id int NOT NULL PRIMARY KEY AUTO_INCREMENT, - ipb_address tinyblob NOT NULL, - ipb_user int unsigned NOT NULL default 0, - ipb_by int unsigned NOT NULL default 0, - ipb_by_text varchar(255) binary NOT NULL default '', - ipb_reason tinyblob NOT NULL, - ipb_timestamp binary(14) NOT NULL default '', - ipb_auto bool NOT NULL default 0, - ipb_anon_only bool NOT NULL default 0, - ipb_create_account bool NOT NULL default 1, - ipb_enable_autoblock bool NOT NULL default '1', - ipb_expiry varbinary(14) NOT NULL default '', - ipb_range_start tinyblob NOT NULL, - ipb_range_end tinyblob NOT NULL, - ipb_deleted bool NOT NULL default 0, - ipb_block_email bool NOT NULL default 0, - ipb_allow_usertalk bool NOT NULL default 0 -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/ipb_address ON /*_*/ipblocks (ipb_address(255), ipb_user, ipb_auto, ipb_anon_only); -CREATE INDEX /*i*/ipb_user ON /*_*/ipblocks (ipb_user); -CREATE INDEX /*i*/ipb_range ON /*_*/ipblocks (ipb_range_start(8), ipb_range_end(8)); -CREATE INDEX /*i*/ipb_timestamp ON /*_*/ipblocks (ipb_timestamp); -CREATE INDEX /*i*/ipb_expiry ON /*_*/ipblocks (ipb_expiry); -CREATE TABLE /*_*/image ( - img_name varchar(255) binary NOT NULL default '' PRIMARY KEY, - img_size int unsigned NOT NULL default 0, - img_width int NOT NULL default 0, - img_height int NOT NULL default 0, - img_metadata mediumblob NOT NULL, - img_bits int NOT NULL default 0, - img_media_type ENUM("UNKNOWN", "BITMAP", "DRAWING", "AUDIO", "VIDEO", "MULTIMEDIA", "OFFICE", "TEXT", "EXECUTABLE", "ARCHIVE") default NULL, - img_major_mime ENUM("unknown", "application", "audio", "image", "text", "video", "message", "model", "multipart") NOT NULL default "unknown", - img_minor_mime varbinary(100) NOT NULL default "unknown", - img_description tinyblob NOT NULL, - img_user int unsigned NOT NULL default 0, - img_user_text varchar(255) binary NOT NULL, - img_timestamp varbinary(14) NOT NULL default '', - img_sha1 varbinary(32) NOT NULL default '' -) /*$wgDBTableOptions*/; -CREATE INDEX /*i*/img_usertext_timestamp ON /*_*/image (img_user_text,img_timestamp); -CREATE INDEX /*i*/img_size ON /*_*/image (img_size); -CREATE INDEX /*i*/img_timestamp ON /*_*/image (img_timestamp); -CREATE INDEX /*i*/img_sha1 ON /*_*/image (img_sha1); -CREATE TABLE /*_*/oldimage ( - oi_name varchar(255) binary NOT NULL default '', - oi_archive_name varchar(255) binary NOT NULL default '', - oi_size int unsigned NOT NULL default 0, - oi_width int NOT NULL default 0, - oi_height int NOT NULL default 0, - oi_bits int NOT NULL default 0, - oi_description tinyblob NOT NULL, - oi_user int unsigned NOT NULL default 0, - oi_user_text varchar(255) binary NOT NULL, - oi_timestamp binary(14) NOT NULL default '', - oi_metadata mediumblob NOT NULL, - oi_media_type ENUM("UNKNOWN", "BITMAP", "DRAWING", "AUDIO", "VIDEO", "MULTIMEDIA", "OFFICE", "TEXT", "EXECUTABLE", "ARCHIVE") default NULL, - oi_major_mime ENUM("unknown", "application", "audio", "image", "text", "video", "message", "model", "multipart") NOT NULL default "unknown", - oi_minor_mime varbinary(100) NOT NULL default "unknown", - oi_deleted tinyint unsigned NOT NULL default 0, - oi_sha1 varbinary(32) NOT NULL default '' -) /*$wgDBTableOptions*/; -CREATE INDEX /*i*/oi_usertext_timestamp ON /*_*/oldimage (oi_user_text,oi_timestamp); -CREATE INDEX /*i*/oi_name_timestamp ON /*_*/oldimage (oi_name,oi_timestamp); -CREATE INDEX /*i*/oi_name_archive_name ON /*_*/oldimage (oi_name,oi_archive_name(14)); -CREATE INDEX /*i*/oi_sha1 ON /*_*/oldimage (oi_sha1); -CREATE TABLE /*_*/filearchive ( - fa_id int NOT NULL PRIMARY KEY AUTO_INCREMENT, - fa_name varchar(255) binary NOT NULL default '', - fa_archive_name varchar(255) binary default '', - fa_storage_group varbinary(16), - fa_storage_key varbinary(64) default '', - fa_deleted_user int, - fa_deleted_timestamp binary(14) default '', - fa_deleted_reason text, - fa_size int unsigned default 0, - fa_width int default 0, - fa_height int default 0, - fa_metadata mediumblob, - fa_bits int default 0, - fa_media_type ENUM("UNKNOWN", "BITMAP", "DRAWING", "AUDIO", "VIDEO", "MULTIMEDIA", "OFFICE", "TEXT", "EXECUTABLE", "ARCHIVE") default NULL, - fa_major_mime ENUM("unknown", "application", "audio", "image", "text", "video", "message", "model", "multipart") default "unknown", - fa_minor_mime varbinary(100) default "unknown", - fa_description tinyblob, - fa_user int unsigned default 0, - fa_user_text varchar(255) binary, - fa_timestamp binary(14) default '', - fa_deleted tinyint unsigned NOT NULL default 0 -) /*$wgDBTableOptions*/; -CREATE INDEX /*i*/fa_name ON /*_*/filearchive (fa_name, fa_timestamp); -CREATE INDEX /*i*/fa_storage_group ON /*_*/filearchive (fa_storage_group, fa_storage_key); -CREATE INDEX /*i*/fa_deleted_timestamp ON /*_*/filearchive (fa_deleted_timestamp); -CREATE INDEX /*i*/fa_user_timestamp ON /*_*/filearchive (fa_user_text,fa_timestamp); -CREATE TABLE /*_*/recentchanges ( - rc_id int NOT NULL PRIMARY KEY AUTO_INCREMENT, - rc_timestamp varbinary(14) NOT NULL default '', - rc_cur_time varbinary(14) NOT NULL default '', - rc_user int unsigned NOT NULL default 0, - rc_user_text varchar(255) binary NOT NULL, - rc_namespace int NOT NULL default 0, - rc_title varchar(255) binary NOT NULL default '', - rc_comment varchar(255) binary NOT NULL default '', - rc_minor tinyint unsigned NOT NULL default 0, - rc_bot tinyint unsigned NOT NULL default 0, - rc_new tinyint unsigned NOT NULL default 0, - rc_cur_id int unsigned NOT NULL default 0, - rc_this_oldid int unsigned NOT NULL default 0, - rc_last_oldid int unsigned NOT NULL default 0, - rc_type tinyint unsigned NOT NULL default 0, - rc_moved_to_ns tinyint unsigned NOT NULL default 0, - rc_moved_to_title varchar(255) binary NOT NULL default '', - rc_patrolled tinyint unsigned NOT NULL default 0, - rc_ip varbinary(40) NOT NULL default '', - rc_old_len int, - rc_new_len int, - rc_deleted tinyint unsigned NOT NULL default 0, - rc_logid int unsigned NOT NULL default 0, - rc_log_type varbinary(255) NULL default NULL, - rc_log_action varbinary(255) NULL default NULL, - rc_params blob NULL -) /*$wgDBTableOptions*/; -CREATE INDEX /*i*/rc_timestamp ON /*_*/recentchanges (rc_timestamp); -CREATE INDEX /*i*/rc_namespace_title ON /*_*/recentchanges (rc_namespace, rc_title); -CREATE INDEX /*i*/rc_cur_id ON /*_*/recentchanges (rc_cur_id); -CREATE INDEX /*i*/new_name_timestamp ON /*_*/recentchanges (rc_new,rc_namespace,rc_timestamp); -CREATE INDEX /*i*/rc_ip ON /*_*/recentchanges (rc_ip); -CREATE INDEX /*i*/rc_ns_usertext ON /*_*/recentchanges (rc_namespace, rc_user_text); -CREATE INDEX /*i*/rc_user_text ON /*_*/recentchanges (rc_user_text, rc_timestamp); -CREATE TABLE /*_*/watchlist ( - wl_user int unsigned NOT NULL, - wl_namespace int NOT NULL default 0, - wl_title varchar(255) binary NOT NULL default '', - wl_notificationtimestamp varbinary(14) -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/wl_user ON /*_*/watchlist (wl_user, wl_namespace, wl_title); -CREATE INDEX /*i*/namespace_title ON /*_*/watchlist (wl_namespace, wl_title); -CREATE TABLE /*_*/math ( - math_inputhash varbinary(16) NOT NULL, - math_outputhash varbinary(16) NOT NULL, - math_html_conservativeness tinyint NOT NULL, - math_html text, - math_mathml text -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/math_inputhash ON /*_*/math (math_inputhash); -CREATE TABLE /*_*/searchindex ( - si_page int unsigned NOT NULL, - si_title varchar(255) NOT NULL default '', - si_text mediumtext NOT NULL -) ENGINE=MyISAM; -CREATE UNIQUE INDEX /*i*/si_page ON /*_*/searchindex (si_page); -CREATE FULLTEXT INDEX /*i*/si_title ON /*_*/searchindex (si_title); -CREATE FULLTEXT INDEX /*i*/si_text ON /*_*/searchindex (si_text); -CREATE TABLE /*_*/interwiki ( - iw_prefix varchar(32) NOT NULL, - iw_url blob NOT NULL, - iw_api blob NOT NULL, - iw_wikiid varchar(64) NOT NULL, - iw_local bool NOT NULL, - iw_trans tinyint NOT NULL default 0 -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/iw_prefix ON /*_*/interwiki (iw_prefix); -CREATE TABLE /*_*/querycache ( - qc_type varbinary(32) NOT NULL, - qc_value int unsigned NOT NULL default 0, - qc_namespace int NOT NULL default 0, - qc_title varchar(255) binary NOT NULL default '' -) /*$wgDBTableOptions*/; -CREATE INDEX /*i*/qc_type ON /*_*/querycache (qc_type,qc_value); -CREATE TABLE /*_*/objectcache ( - keyname varbinary(255) NOT NULL default '' PRIMARY KEY, - value mediumblob, - exptime datetime -) /*$wgDBTableOptions*/; -CREATE INDEX /*i*/exptime ON /*_*/objectcache (exptime); -CREATE TABLE /*_*/transcache ( - tc_url varbinary(255) NOT NULL, - tc_contents text, - tc_time binary(14) NOT NULL -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/tc_url_idx ON /*_*/transcache (tc_url); -CREATE TABLE /*_*/logging ( - log_id int unsigned NOT NULL PRIMARY KEY AUTO_INCREMENT, - log_type varbinary(32) NOT NULL default '', - log_action varbinary(32) NOT NULL default '', - log_timestamp binary(14) NOT NULL default '19700101000000', - log_user int unsigned NOT NULL default 0, - log_user_text varchar(255) binary NOT NULL default '', - log_namespace int NOT NULL default 0, - log_title varchar(255) binary NOT NULL default '', - log_page int unsigned NULL, - log_comment varchar(255) NOT NULL default '', - log_params blob NOT NULL, - log_deleted tinyint unsigned NOT NULL default 0 -) /*$wgDBTableOptions*/; -CREATE INDEX /*i*/type_time ON /*_*/logging (log_type, log_timestamp); -CREATE INDEX /*i*/user_time ON /*_*/logging (log_user, log_timestamp); -CREATE INDEX /*i*/page_time ON /*_*/logging (log_namespace, log_title, log_timestamp); -CREATE INDEX /*i*/times ON /*_*/logging (log_timestamp); -CREATE INDEX /*i*/log_user_type_time ON /*_*/logging (log_user, log_type, log_timestamp); -CREATE INDEX /*i*/log_page_id_time ON /*_*/logging (log_page,log_timestamp); -CREATE TABLE /*_*/log_search ( - ls_field varbinary(32) NOT NULL, - ls_value varchar(255) NOT NULL, - ls_log_id int unsigned NOT NULL default 0 -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/ls_field_val ON /*_*/log_search (ls_field,ls_value,ls_log_id); -CREATE INDEX /*i*/ls_log_id ON /*_*/log_search (ls_log_id); -CREATE TABLE /*_*/trackbacks ( - tb_id int PRIMARY KEY AUTO_INCREMENT, - tb_page int REFERENCES /*_*/page(page_id) ON DELETE CASCADE, - tb_title varchar(255) NOT NULL, - tb_url blob NOT NULL, - tb_ex text, - tb_name varchar(255) -) /*$wgDBTableOptions*/; -CREATE INDEX /*i*/tb_page ON /*_*/trackbacks (tb_page); -CREATE TABLE /*_*/job ( - job_id int unsigned NOT NULL PRIMARY KEY AUTO_INCREMENT, - job_cmd varbinary(60) NOT NULL default '', - job_namespace int NOT NULL, - job_title varchar(255) binary NOT NULL, - job_params blob NOT NULL -) /*$wgDBTableOptions*/; -CREATE INDEX /*i*/job_cmd ON /*_*/job (job_cmd, job_namespace, job_title, job_params(128)); -CREATE TABLE /*_*/querycache_info ( - qci_type varbinary(32) NOT NULL default '', - qci_timestamp binary(14) NOT NULL default '19700101000000' -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/qci_type ON /*_*/querycache_info (qci_type); -CREATE TABLE /*_*/redirect ( - rd_from int unsigned NOT NULL default 0 PRIMARY KEY, - rd_namespace int NOT NULL default 0, - rd_title varchar(255) binary NOT NULL default '', - rd_interwiki varchar(32) default NULL, - rd_fragment varchar(255) binary default NULL -) /*$wgDBTableOptions*/; -CREATE INDEX /*i*/rd_ns_title ON /*_*/redirect (rd_namespace,rd_title,rd_from); -CREATE TABLE /*_*/querycachetwo ( - qcc_type varbinary(32) NOT NULL, - qcc_value int unsigned NOT NULL default 0, - qcc_namespace int NOT NULL default 0, - qcc_title varchar(255) binary NOT NULL default '', - qcc_namespacetwo int NOT NULL default 0, - qcc_titletwo varchar(255) binary NOT NULL default '' -) /*$wgDBTableOptions*/; -CREATE INDEX /*i*/qcc_type ON /*_*/querycachetwo (qcc_type,qcc_value); -CREATE INDEX /*i*/qcc_title ON /*_*/querycachetwo (qcc_type,qcc_namespace,qcc_title); -CREATE INDEX /*i*/qcc_titletwo ON /*_*/querycachetwo (qcc_type,qcc_namespacetwo,qcc_titletwo); -CREATE TABLE /*_*/page_restrictions ( - pr_page int NOT NULL, - pr_type varbinary(60) NOT NULL, - pr_level varbinary(60) NOT NULL, - pr_cascade tinyint NOT NULL, - pr_user int NULL, - pr_expiry varbinary(14) NULL, - pr_id int unsigned NOT NULL PRIMARY KEY AUTO_INCREMENT -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/pr_pagetype ON /*_*/page_restrictions (pr_page,pr_type); -CREATE INDEX /*i*/pr_typelevel ON /*_*/page_restrictions (pr_type,pr_level); -CREATE INDEX /*i*/pr_level ON /*_*/page_restrictions (pr_level); -CREATE INDEX /*i*/pr_cascade ON /*_*/page_restrictions (pr_cascade); -CREATE TABLE /*_*/protected_titles ( - pt_namespace int NOT NULL, - pt_title varchar(255) binary NOT NULL, - pt_user int unsigned NOT NULL, - pt_reason tinyblob, - pt_timestamp binary(14) NOT NULL, - pt_expiry varbinary(14) NOT NULL default '', - pt_create_perm varbinary(60) NOT NULL -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/pt_namespace_title ON /*_*/protected_titles (pt_namespace,pt_title); -CREATE INDEX /*i*/pt_timestamp ON /*_*/protected_titles (pt_timestamp); -CREATE TABLE /*_*/page_props ( - pp_page int NOT NULL, - pp_propname varbinary(60) NOT NULL, - pp_value blob NOT NULL -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/pp_page_propname ON /*_*/page_props (pp_page,pp_propname); -CREATE TABLE /*_*/updatelog ( - ul_key varchar(255) NOT NULL PRIMARY KEY, - ul_value blob -) /*$wgDBTableOptions*/; -CREATE TABLE /*_*/change_tag ( - ct_rc_id int NULL, - ct_log_id int NULL, - ct_rev_id int NULL, - ct_tag varchar(255) NOT NULL, - ct_params blob NULL -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/change_tag_rc_tag ON /*_*/change_tag (ct_rc_id,ct_tag); -CREATE UNIQUE INDEX /*i*/change_tag_log_tag ON /*_*/change_tag (ct_log_id,ct_tag); -CREATE UNIQUE INDEX /*i*/change_tag_rev_tag ON /*_*/change_tag (ct_rev_id,ct_tag); -CREATE INDEX /*i*/change_tag_tag_id ON /*_*/change_tag (ct_tag,ct_rc_id,ct_rev_id,ct_log_id); -CREATE TABLE /*_*/tag_summary ( - ts_rc_id int NULL, - ts_log_id int NULL, - ts_rev_id int NULL, - ts_tags blob NOT NULL -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/tag_summary_rc_id ON /*_*/tag_summary (ts_rc_id); -CREATE UNIQUE INDEX /*i*/tag_summary_log_id ON /*_*/tag_summary (ts_log_id); -CREATE UNIQUE INDEX /*i*/tag_summary_rev_id ON /*_*/tag_summary (ts_rev_id); -CREATE TABLE /*_*/valid_tag ( - vt_tag varchar(255) NOT NULL PRIMARY KEY -) /*$wgDBTableOptions*/; -CREATE TABLE /*_*/l10n_cache ( - lc_lang varbinary(32) NOT NULL, - lc_key varchar(255) NOT NULL, - lc_value mediumblob NOT NULL -) /*$wgDBTableOptions*/; -CREATE INDEX /*i*/lc_lang_key ON /*_*/l10n_cache (lc_lang, lc_key); -CREATE TABLE /*_*/msg_resource ( - mr_resource varbinary(255) NOT NULL, - mr_lang varbinary(32) NOT NULL, - mr_blob mediumblob NOT NULL, - mr_timestamp binary(14) NOT NULL -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/mr_resource_lang ON /*_*/msg_resource (mr_resource, mr_lang); -CREATE TABLE /*_*/msg_resource_links ( - mrl_resource varbinary(255) NOT NULL, - mrl_message varbinary(255) NOT NULL -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/mrl_message_resource ON /*_*/msg_resource_links (mrl_message, mrl_resource); -CREATE TABLE /*_*/module_deps ( - md_module varbinary(255) NOT NULL, - md_skin varbinary(32) NOT NULL, - md_deps mediumblob NOT NULL -) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/md_module_skin ON /*_*/module_deps (md_module, md_skin); |