mirror of
				https://github.com/MariaDB/server.git
				synced 2025-10-31 15:50:51 +03:00 
			
		
		
		
	This is a partial port of my patch in MySQL 8.0. In MySQL 8.0, all InnoDB references to DBUG_OFF were replaced with UNIV_DEBUG. We will not do that in MariaDB. InnoDB used two independent compile-time flags that distinguish debug and non-debug builds, which is confusing. Also, make ut_ad() and alias of DBUG_ASSERT().
		
			
				
	
	
		
			48 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			48 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| --source include/have_innodb.inc
 | |
| #
 | |
| # http://bugs.mysql.com/53046
 | |
| # dict_update_statistics_low can still be run concurrently on same table
 | |
| #
 | |
| # This is a symbolic test, it would not fail if the bug is present.
 | |
| # Rather those SQL commands have been used during manual testing under
 | |
| # innodb_sync_debug to test all changed codepaths for locking
 | |
| # correctness.
 | |
| #
 | |
| 
 | |
| CREATE TABLE bug53046_1 (c1 INT PRIMARY KEY) ENGINE=INNODB;
 | |
| CREATE TABLE bug53046_2 (c2 INT PRIMARY KEY,
 | |
| 		 FOREIGN KEY (c2) REFERENCES bug53046_1(c1)
 | |
| 		 ON UPDATE CASCADE ON DELETE CASCADE) ENGINE=INNODB;
 | |
| 
 | |
| INSERT INTO bug53046_1 VALUES (1);
 | |
| let $i = 5;
 | |
| while ($i) {
 | |
| 	eval INSERT INTO bug53046_1 SELECT c1+(SELECT MAX(c1) FROM bug53046_1)
 | |
| 		FROM bug53046_1;
 | |
| 	dec $i;
 | |
| }
 | |
| 
 | |
| INSERT INTO bug53046_2 VALUES (1), (2);
 | |
| 
 | |
| # CREATE TABLE innodb_table_monitor (a int) ENGINE=INNODB;
 | |
| # wait more than 1 minute and observe the mysqld output
 | |
| # DROP TABLE innodb_table_monitor;
 | |
| 
 | |
| ANALYZE TABLE bug53046_1;
 | |
| 
 | |
| # this prints create time and other nondeterministic data
 | |
| -- disable_result_log
 | |
| SHOW TABLE STATUS LIKE 'bug53046_1';
 | |
| -- enable_result_log
 | |
| 
 | |
| UPDATE bug53046_1 SET c1 = c1 - 1;
 | |
| 
 | |
| DELETE FROM bug53046_1;
 | |
| 
 | |
| INSERT INTO bug53046_1 VALUES (1);
 | |
| INSERT INTO bug53046_2 VALUES (1);
 | |
| TRUNCATE TABLE bug53046_2;
 | |
| 
 | |
| DROP TABLE bug53046_2;
 | |
| DROP TABLE bug53046_1;
 |