mirror of
				https://github.com/MariaDB/server.git
				synced 2025-10-31 15:50:51 +03:00 
			
		
		
		
	Analysis: debug only assertion I_S function (IS is XtraDB feature) is calling buf_block_get_frame on any page it reads, which debug-asserts that the page is buffer-fixed, which is not the case in I_S query. Fixed by holding the buffer page mutex while the fields are read directly.
		
			
				
	
	
		
			65 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			65 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| -- source include/have_innodb.inc
 | |
| -- source include/not_embedded.inc
 | |
| 
 | |
| #
 | |
| # MDEV-7762 InnoDB: Failing assertion: block->page.buf_fix_count > 0 in buf0buf.ic line 730
 | |
| #
 | |
| # Make sure that all supported information_schema tables are readable
 | |
| # (actual result sets are not important).
 | |
| #
 | |
| CREATE TABLE t1 ENGINE=InnoDB AS SELECT * FROM mysql.help_topic;
 | |
| 
 | |
| --disable_query_log
 | |
| --disable_result_log
 | |
| BEGIN;
 | |
| SELECT * FROM t1 FOR UPDATE;
 | |
| SELECT * FROM INFORMATION_SCHEMA.INNODB_TRX;
 | |
| SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCKS;
 | |
| SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCK_WAITS;
 | |
| SELECT * FROM INFORMATION_SCHEMA.INNODB_CMP;
 | |
| SELECT * FROM INFORMATION_SCHEMA.INNODB_CMP_RESET;
 | |
| SELECT * FROM INFORMATION_SCHEMA.INNODB_CMPMEM;
 | |
| SELECT * FROM INFORMATION_SCHEMA.INNODB_CMPMEM_RESET;
 | |
| SELECT * FROM INFORMATION_SCHEMA.INNODB_BUFFER_PAGE;
 | |
| SELECT * FROM INFORMATION_SCHEMA.INNODB_BUFFER_PAGE_LRU;
 | |
| --error 0,1109
 | |
| SELECT * FROM INFORMATION_SCHEMA.INNODB_BUFFER_STATS;
 | |
| --error 0,1109
 | |
| SELECT * FROM INFORMATION_SCHEMA.INNODB_SYS_TABLES;
 | |
| --error 0,1109
 | |
| SELECT * FROM INFORMATION_SCHEMA.INNODB_SYS_TABLESTATS;
 | |
| --error 0,1109
 | |
| SELECT * FROM INFORMATION_SCHEMA.INNODB_SYS_INDEXES;
 | |
| --error 0,1109
 | |
| SELECT * FROM INFORMATION_SCHEMA.INNODB_SYS_COLUMNS;
 | |
| --error 0,1109
 | |
| SELECT * FROM INFORMATION_SCHEMA.INNODB_SYS_FIELDS;
 | |
| --error 0,1109
 | |
| SELECT * FROM INFORMATION_SCHEMA.INNODB_SYS_FOREIGN;
 | |
| --error 0,1109
 | |
| SELECT * FROM INFORMATION_SCHEMA.INNODB_SYS_FOREIGN_COLS;
 | |
| --error 0,1109
 | |
| SELECT * FROM INFORMATION_SCHEMA.INNODB_RSEG;
 | |
| --error 0,1109
 | |
| SELECT * FROM INFORMATION_SCHEMA.INNODB_UNDO_LOGS;
 | |
| --error 0,1109
 | |
| SELECT * FROM INFORMATION_SCHEMA.INNODB_SYS_STATS;
 | |
| --error 0,1109
 | |
| SELECT * FROM INFORMATION_SCHEMA.INNODB_TABLE_STATS;
 | |
| --error 0,1109
 | |
| SELECT * FROM INFORMATION_SCHEMA.INNODB_INDEX_STATS;
 | |
| --error 0,1109
 | |
| SELECT * FROM INFORMATION_SCHEMA.INNODB_ADMIN_COMMAND;
 | |
| --error 0,1109
 | |
| SELECT * FROM INFORMATION_SCHEMA.INNODB_BUFFER_POOL_PAGES;
 | |
| --error 0,1109
 | |
| SELECT * FROM INFORMATION_SCHEMA.INNODB_BUFFER_POOL_PAGES_INDEX;
 | |
| --error 0,1109
 | |
| SELECT * FROM INFORMATION_SCHEMA.INNODB_BUFFER_POOL_PAGES_BLOB;
 | |
| --error 0,1109
 | |
| SELECT * FROM INFORMATION_SCHEMA.INNODB_CHANGED_PAGES;
 | |
| COMMIT;
 | |
| --enable_query_log
 | |
| --enable_result_log
 | |
| DROP TABLE t1;
 |