mirror of
				https://github.com/MariaDB/server.git
				synced 2025-10-31 02:46:29 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			345 lines
		
	
	
	
		
			13 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			345 lines
		
	
	
	
		
			13 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
| call mtr.add_suppression("Optional native table 'performance_schema'.'processlist' has the wrong structure or is missing.");
 | |
| call mtr.add_suppression("Column count of performance_schema.processlist is wrong. Expected 8, found 2. The table is probably corrupted");
 | |
| ##
 | |
| ## Verify fresh 5.7 instance
 | |
| ##
 | |
| SELECT @@global.performance_schema_show_processlist;
 | |
| @@global.performance_schema_show_processlist
 | |
| 0
 | |
| SHOW CREATE TABLE performance_schema.processlist;
 | |
| Table	Create Table
 | |
| processlist	CREATE TABLE `processlist` (
 | |
|   `ID` bigint(20) unsigned NOT NULL,
 | |
|   `USER` varchar(32) DEFAULT NULL,
 | |
|   `HOST` varchar(66) DEFAULT NULL,
 | |
|   `DB` varchar(64) DEFAULT NULL,
 | |
|   `COMMAND` varchar(16) DEFAULT NULL,
 | |
|   `TIME` bigint(20) DEFAULT NULL,
 | |
|   `STATE` varchar(64) DEFAULT NULL,
 | |
|   `INFO` longtext
 | |
| ) ENGINE=PERFORMANCE_SCHEMA DEFAULT CHARSET=utf8
 | |
| ##
 | |
| ## Simulate old 5.7 instance
 | |
| ##
 | |
| DROP TABLE performance_schema.processlist;
 | |
| SHOW CREATE TABLE performance_schema.processlist;
 | |
| ERROR 42S02: Table 'performance_schema.processlist' doesn't exist
 | |
| ##
 | |
| ## Server shutdown
 | |
| ##
 | |
| ##
 | |
| ### Server restart
 | |
| ##
 | |
| ##
 | |
| ## Verify old 5.7 instance
 | |
| ##
 | |
| SELECT @@global.performance_schema_show_processlist;
 | |
| @@global.performance_schema_show_processlist
 | |
| 0
 | |
| SHOW CREATE TABLE performance_schema.processlist;
 | |
| ERROR 42S02: Table 'performance_schema.processlist' doesn't exist
 | |
| SELECT * FROM performance_schema.processlist;
 | |
| ERROR 42S02: Table 'performance_schema.processlist' doesn't exist
 | |
| SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST;
 | |
| ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO
 | |
| 2	root	[HOST:PORT]	test	Query	[TIME]	executing	SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST
 | |
| SHOW PROCESSLIST;
 | |
| Id	User	Host	db	Command	Time	State	Info
 | |
| 2	root	[HOST:PORT]	test	Query	[TIME]	starting	SHOW PROCESSLIST
 | |
| SET GLOBAL performance_schema_show_processlist = 'ON';
 | |
| SELECT * FROM performance_schema.processlist;
 | |
| ERROR 42S02: Table 'performance_schema.processlist' doesn't exist
 | |
| SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST;
 | |
| ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO
 | |
| 2	root	[HOST:PORT]	test	Query	[TIME]	executing	SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST
 | |
| SHOW PROCESSLIST;
 | |
| ERROR 42S02: Table 'performance_schema.processlist' doesn't exist
 | |
| ##
 | |
| ## Perform broken upgrade (case 1)
 | |
| ##
 | |
| CREATE TABLE performance_schema.processlist (a int, b int);
 | |
| SHOW CREATE TABLE performance_schema.processlist;
 | |
| Table	Create Table
 | |
| processlist	CREATE TABLE `processlist` (
 | |
|   `a` int(11) DEFAULT NULL,
 | |
|   `b` int(11) DEFAULT NULL
 | |
| ) ENGINE=InnoDB DEFAULT CHARSET=utf8
 | |
| SET GLOBAL performance_schema_show_processlist = 'OFF';
 | |
| SELECT * FROM performance_schema.processlist;
 | |
| a	b
 | |
| SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST;
 | |
| ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO
 | |
| 2	root	[HOST:PORT]	test	Query	[TIME]	executing	SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST
 | |
| SHOW PROCESSLIST;
 | |
| Id	User	Host	db	Command	Time	State	Info
 | |
| 2	root	[HOST:PORT]	test	Query	[TIME]	starting	SHOW PROCESSLIST
 | |
| SET GLOBAL performance_schema_show_processlist = 'ON';
 | |
| SELECT * FROM performance_schema.processlist;
 | |
| a	b
 | |
| SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST;
 | |
| ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO
 | |
| 2	root	[HOST:PORT]	test	Query	[TIME]	executing	SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST
 | |
| SHOW PROCESSLIST;
 | |
| ERROR 42S22: Unknown column 'ID' in 'field list'
 | |
| ##
 | |
| ## Server shutdown
 | |
| ##
 | |
| ##
 | |
| ### Server restart
 | |
| ##
 | |
| SHOW CREATE TABLE performance_schema.processlist;
 | |
| Table	Create Table
 | |
| processlist	CREATE TABLE `processlist` (
 | |
|   `a` int(11) DEFAULT NULL,
 | |
|   `b` int(11) DEFAULT NULL
 | |
| ) ENGINE=InnoDB DEFAULT CHARSET=utf8
 | |
| SET GLOBAL performance_schema_show_processlist = 'OFF';
 | |
| SELECT * FROM performance_schema.processlist;
 | |
| a	b
 | |
| SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST;
 | |
| ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO
 | |
| 2	root	[HOST:PORT]	test	Query	[TIME]	executing	SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST
 | |
| SHOW PROCESSLIST;
 | |
| Id	User	Host	db	Command	Time	State	Info
 | |
| 2	root	[HOST:PORT]	test	Query	[TIME]	starting	SHOW PROCESSLIST
 | |
| SET GLOBAL performance_schema_show_processlist = 'ON';
 | |
| SELECT * FROM performance_schema.processlist;
 | |
| a	b
 | |
| SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST;
 | |
| ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO
 | |
| 2	root	[HOST:PORT]	test	Query	[TIME]	executing	SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST
 | |
| SHOW PROCESSLIST;
 | |
| ERROR 42S22: Unknown column 'ID' in 'field list'
 | |
| ##
 | |
| ## Perform broken upgrade (case 2)
 | |
| ##
 | |
| DROP TABLE performance_schema.processlist;
 | |
| CREATE TABLE performance_schema.processlist (
 | |
| `ID` bigint(20) unsigned NOT NULL,
 | |
| `USER` varchar(32) DEFAULT NULL,
 | |
| `HOST` varchar(66) DEFAULT NULL,
 | |
| `DB` varchar(64) DEFAULT NULL,
 | |
| `COMMAND` varchar(16) DEFAULT NULL,
 | |
| `TIME` bigint(20) DEFAULT NULL,
 | |
| `STATE` varchar(64) DEFAULT NULL,
 | |
| `INFO` longtext
 | |
| );
 | |
| SHOW CREATE TABLE performance_schema.processlist;
 | |
| Table	Create Table
 | |
| processlist	CREATE TABLE `processlist` (
 | |
|   `ID` bigint(20) unsigned NOT NULL,
 | |
|   `USER` varchar(32) DEFAULT NULL,
 | |
|   `HOST` varchar(66) DEFAULT NULL,
 | |
|   `DB` varchar(64) DEFAULT NULL,
 | |
|   `COMMAND` varchar(16) DEFAULT NULL,
 | |
|   `TIME` bigint(20) DEFAULT NULL,
 | |
|   `STATE` varchar(64) DEFAULT NULL,
 | |
|   `INFO` longtext
 | |
| ) ENGINE=InnoDB DEFAULT CHARSET=utf8
 | |
| SET GLOBAL performance_schema_show_processlist = 'OFF';
 | |
| SELECT * FROM performance_schema.processlist;
 | |
| ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO
 | |
| SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST;
 | |
| ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO
 | |
| 2	root	[HOST:PORT]	test	Query	[TIME]	executing	SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST
 | |
| SHOW PROCESSLIST;
 | |
| Id	User	Host	db	Command	Time	State	Info
 | |
| 2	root	[HOST:PORT]	test	Query	[TIME]	starting	SHOW PROCESSLIST
 | |
| SET GLOBAL performance_schema_show_processlist = 'ON';
 | |
| SELECT * FROM performance_schema.processlist;
 | |
| ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO
 | |
| SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST;
 | |
| ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO
 | |
| 2	root	[HOST:PORT]	test	Query	[TIME]	executing	SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST
 | |
| SHOW PROCESSLIST;
 | |
| Id	User	Host	db	Command	Time	State	Info
 | |
| ##
 | |
| ## Server shutdown
 | |
| ##
 | |
| ##
 | |
| ### Server restart
 | |
| ##
 | |
| SHOW CREATE TABLE performance_schema.processlist;
 | |
| Table	Create Table
 | |
| processlist	CREATE TABLE `processlist` (
 | |
|   `ID` bigint(20) unsigned NOT NULL,
 | |
|   `USER` varchar(32) DEFAULT NULL,
 | |
|   `HOST` varchar(66) DEFAULT NULL,
 | |
|   `DB` varchar(64) DEFAULT NULL,
 | |
|   `COMMAND` varchar(16) DEFAULT NULL,
 | |
|   `TIME` bigint(20) DEFAULT NULL,
 | |
|   `STATE` varchar(64) DEFAULT NULL,
 | |
|   `INFO` longtext
 | |
| ) ENGINE=InnoDB DEFAULT CHARSET=utf8
 | |
| SET GLOBAL performance_schema_show_processlist = 'OFF';
 | |
| SELECT * FROM performance_schema.processlist;
 | |
| ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO
 | |
| SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST;
 | |
| ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO
 | |
| 2	root	[HOST:PORT]	test	Query	[TIME]	executing	SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST
 | |
| SHOW PROCESSLIST;
 | |
| Id	User	Host	db	Command	Time	State	Info
 | |
| 2	root	[HOST:PORT]	test	Query	[TIME]	starting	SHOW PROCESSLIST
 | |
| SET GLOBAL performance_schema_show_processlist = 'ON';
 | |
| SELECT * FROM performance_schema.processlist;
 | |
| ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO
 | |
| SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST;
 | |
| ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO
 | |
| 2	root	[HOST:PORT]	test	Query	[TIME]	executing	SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST
 | |
| SHOW PROCESSLIST;
 | |
| Id	User	Host	db	Command	Time	State	Info
 | |
| ##
 | |
| ## Perform broken upgrade (case 3)
 | |
| ##
 | |
| DROP TABLE performance_schema.processlist;
 | |
| CREATE TABLE performance_schema.processlist
 | |
| LIKE INFORMATION_SCHEMA.PROCESSLIST;
 | |
| SHOW CREATE TABLE performance_schema.processlist;
 | |
| Table	Create Table
 | |
| processlist	CREATE TABLE `processlist` (
 | |
|   `ID` bigint(21) unsigned NOT NULL DEFAULT '0',
 | |
|   `USER` varchar(32) NOT NULL DEFAULT '',
 | |
|   `HOST` varchar(64) NOT NULL DEFAULT '',
 | |
|   `DB` varchar(64) DEFAULT NULL,
 | |
|   `COMMAND` varchar(16) NOT NULL DEFAULT '',
 | |
|   `TIME` int(7) NOT NULL DEFAULT '0',
 | |
|   `STATE` varchar(64) DEFAULT NULL,
 | |
|   `INFO` longtext
 | |
| ) ENGINE=InnoDB DEFAULT CHARSET=utf8
 | |
| SET GLOBAL performance_schema_show_processlist = 'OFF';
 | |
| SELECT * FROM performance_schema.processlist;
 | |
| ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO
 | |
| SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST;
 | |
| ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO
 | |
| 2	root	[HOST:PORT]	test	Query	[TIME]	executing	SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST
 | |
| SHOW PROCESSLIST;
 | |
| Id	User	Host	db	Command	Time	State	Info
 | |
| 2	root	[HOST:PORT]	test	Query	[TIME]	starting	SHOW PROCESSLIST
 | |
| SET GLOBAL performance_schema_show_processlist = 'ON';
 | |
| SELECT * FROM performance_schema.processlist;
 | |
| ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO
 | |
| SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST;
 | |
| ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO
 | |
| 2	root	[HOST:PORT]	test	Query	[TIME]	executing	SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST
 | |
| SHOW PROCESSLIST;
 | |
| Id	User	Host	db	Command	Time	State	Info
 | |
| ##
 | |
| ## Server shutdown
 | |
| ##
 | |
| ##
 | |
| ### Server restart
 | |
| ##
 | |
| SHOW CREATE TABLE performance_schema.processlist;
 | |
| Table	Create Table
 | |
| processlist	CREATE TABLE `processlist` (
 | |
|   `ID` bigint(21) unsigned NOT NULL DEFAULT '0',
 | |
|   `USER` varchar(32) NOT NULL DEFAULT '',
 | |
|   `HOST` varchar(64) NOT NULL DEFAULT '',
 | |
|   `DB` varchar(64) DEFAULT NULL,
 | |
|   `COMMAND` varchar(16) NOT NULL DEFAULT '',
 | |
|   `TIME` int(7) NOT NULL DEFAULT '0',
 | |
|   `STATE` varchar(64) DEFAULT NULL,
 | |
|   `INFO` longtext
 | |
| ) ENGINE=InnoDB DEFAULT CHARSET=utf8
 | |
| SET GLOBAL performance_schema_show_processlist = 'OFF';
 | |
| SELECT * FROM performance_schema.processlist;
 | |
| ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO
 | |
| SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST;
 | |
| ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO
 | |
| 2	root	[HOST:PORT]	test	Query	[TIME]	executing	SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST
 | |
| SHOW PROCESSLIST;
 | |
| Id	User	Host	db	Command	Time	State	Info
 | |
| 2	root	[HOST:PORT]	test	Query	[TIME]	starting	SHOW PROCESSLIST
 | |
| SET GLOBAL performance_schema_show_processlist = 'ON';
 | |
| SELECT * FROM performance_schema.processlist;
 | |
| ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO
 | |
| SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST;
 | |
| ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO
 | |
| 2	root	[HOST:PORT]	test	Query	[TIME]	executing	SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST
 | |
| SHOW PROCESSLIST;
 | |
| Id	User	Host	db	Command	Time	State	Info
 | |
| ##
 | |
| ## Perform correct upgrade
 | |
| ##
 | |
| DROP TABLE performance_schema.processlist;
 | |
| CREATE TABLE performance_schema.processlist (
 | |
| `ID` bigint(20) unsigned NOT NULL,
 | |
| `USER` varchar(32) DEFAULT NULL,
 | |
| `HOST` varchar(66) DEFAULT NULL,
 | |
| `DB` varchar(64) DEFAULT NULL,
 | |
| `COMMAND` varchar(16) DEFAULT NULL,
 | |
| `TIME` bigint(20) DEFAULT NULL,
 | |
| `STATE` varchar(64) DEFAULT NULL,
 | |
| `INFO` longtext
 | |
| ) ENGINE = 'PERFORMANCE_SCHEMA';
 | |
| SHOW CREATE TABLE performance_schema.processlist;
 | |
| Table	Create Table
 | |
| processlist	CREATE TABLE `processlist` (
 | |
|   `ID` bigint(20) unsigned NOT NULL,
 | |
|   `USER` varchar(32) DEFAULT NULL,
 | |
|   `HOST` varchar(66) DEFAULT NULL,
 | |
|   `DB` varchar(64) DEFAULT NULL,
 | |
|   `COMMAND` varchar(16) DEFAULT NULL,
 | |
|   `TIME` bigint(20) DEFAULT NULL,
 | |
|   `STATE` varchar(64) DEFAULT NULL,
 | |
|   `INFO` longtext
 | |
| ) ENGINE=PERFORMANCE_SCHEMA DEFAULT CHARSET=utf8
 | |
| SET GLOBAL performance_schema_show_processlist = 'OFF';
 | |
| SELECT * FROM performance_schema.processlist;
 | |
| ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO
 | |
| 2	root	[HOST:PORT]	test	Query	[TIME]	Sending data	SELECT * FROM performance_schema.processlist
 | |
| SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST;
 | |
| ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO
 | |
| 2	root	[HOST:PORT]	test	Query	[TIME]	executing	SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST
 | |
| SHOW PROCESSLIST;
 | |
| Id	User	Host	db	Command	Time	State	Info
 | |
| 2	root	[HOST:PORT]	test	Query	[TIME]	starting	SHOW PROCESSLIST
 | |
| SET GLOBAL performance_schema_show_processlist = 'ON';
 | |
| SELECT * FROM performance_schema.processlist;
 | |
| ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO
 | |
| 2	root	[HOST:PORT]	test	Query	[TIME]	Sending data	SELECT * FROM performance_schema.processlist
 | |
| SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST;
 | |
| ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO
 | |
| 2	root	[HOST:PORT]	test	Query	[TIME]	executing	SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST
 | |
| SHOW PROCESSLIST;
 | |
| Id	User	Host	db	Command	Time	State	Info
 | |
| 2	root	[HOST:PORT]	test	Query	[TIME]	Sending data	SHOW PROCESSLIST
 | |
| ##
 | |
| ## Server shutdown
 | |
| ##
 | |
| ##
 | |
| ### Server restart
 | |
| ##
 | |
| SHOW CREATE TABLE performance_schema.processlist;
 | |
| Table	Create Table
 | |
| processlist	CREATE TABLE `processlist` (
 | |
|   `ID` bigint(20) unsigned NOT NULL,
 | |
|   `USER` varchar(32) DEFAULT NULL,
 | |
|   `HOST` varchar(66) DEFAULT NULL,
 | |
|   `DB` varchar(64) DEFAULT NULL,
 | |
|   `COMMAND` varchar(16) DEFAULT NULL,
 | |
|   `TIME` bigint(20) DEFAULT NULL,
 | |
|   `STATE` varchar(64) DEFAULT NULL,
 | |
|   `INFO` longtext
 | |
| ) ENGINE=PERFORMANCE_SCHEMA DEFAULT CHARSET=utf8
 | |
| SET GLOBAL performance_schema_show_processlist = 'OFF';
 | |
| SELECT * FROM performance_schema.processlist;
 | |
| ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO
 | |
| 2	root	[HOST:PORT]	test	Query	[TIME]	Sending data	SELECT * FROM performance_schema.processlist
 | |
| SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST;
 | |
| ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO
 | |
| 2	root	[HOST:PORT]	test	Query	[TIME]	executing	SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST
 | |
| SHOW PROCESSLIST;
 | |
| Id	User	Host	db	Command	Time	State	Info
 | |
| 2	root	[HOST:PORT]	test	Query	[TIME]	starting	SHOW PROCESSLIST
 | |
| SET GLOBAL performance_schema_show_processlist = 'ON';
 | |
| SELECT * FROM performance_schema.processlist;
 | |
| ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO
 | |
| 2	root	[HOST:PORT]	test	Query	[TIME]	Sending data	SELECT * FROM performance_schema.processlist
 | |
| SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST;
 | |
| ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO
 | |
| 2	root	[HOST:PORT]	test	Query	[TIME]	executing	SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST
 | |
| SHOW PROCESSLIST;
 | |
| Id	User	Host	db	Command	Time	State	Info
 | |
| 2	root	[HOST:PORT]	test	Query	[TIME]	Sending data	SHOW PROCESSLIST
 | |
| SET GLOBAL performance_schema_show_processlist = 'OFF';
 | 
