mirror of
				https://github.com/MariaDB/server.git
				synced 2025-10-31 10:56:12 +01:00 
			
		
		
		
	 11f6b9d12a
			
		
	
	
	11f6b9d12a
	
	
	
		
			
			--big-tables --large-page-size --storage-engine performance_schema.setup_timers (WL#10986)
		
			
				
	
	
		
			66 lines
		
	
	
	
		
			1.9 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			66 lines
		
	
	
	
		
			1.9 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
| #
 | |
| # This test simulates an error in an aria file discovered during a recursive SQL call.
 | |
| # The error handling causes used join structures to be deleted, which caused crashes in
 | |
| # upper levels when trying to access structures that does not exist anymore
 | |
| #
 | |
| 
 | |
| --source include/have_debug.inc
 | |
| --source include/not_embedded.inc
 | |
| 
 | |
| set tmp_memory_table_size=0;
 | |
| 
 | |
| create table  folks(id int, name char(32), dob date, father int, mother int);
 | |
| 
 | |
| insert into folks values
 | |
| (100, 'Me', '2000-01-01', 20, 30),
 | |
| (20, 'Dad', '1970-02-02', 10, 9),
 | |
| (30, 'Mom', '1975-03-03', 8, 7),
 | |
| (10, 'Grandpa Bill', '1940-04-05', null, null),
 | |
| (9, 'Grandma Ann', '1941-10-15', null, null),
 | |
| (25, 'Uncle Jim', '1968-11-18', 8, 7),
 | |
| (98, 'Sister Amy', '2001-06-20', 20, 30),
 | |
| (7, 'Grandma Sally', '1943-08-23', null, 6),
 | |
| (8, 'Grandpa Ben', '1940-10-21', null, null),
 | |
| (6, 'Grandgrandma Martha', '1923-05-17', null, null),
 | |
| (67, 'Cousin Eddie', '1992-02-28', 25, 27),
 | |
| (27, 'Auntie Melinda', '1971-03-29', null, null);
 | |
| 
 | |
| 
 | |
| call mtr.add_suppression(".*marked as crashed.*");
 | |
| SET @saved_dbug= @@SESSION.debug_dbug;
 | |
| SET SESSION debug_dbug="+d,ha_rnd_next_error";
 | |
| SET @ha_rnd_next_error_counter=110;
 | |
| 
 | |
| let q=
 | |
| with recursive
 | |
| ancestor_couples(h_id, h_name, h_dob, h_father, h_mother,
 | |
|                  w_id, w_name, w_dob, w_father, w_mother)
 | |
| as
 | |
| (
 | |
|   select h.*, w.*
 | |
|     from folks h, folks w,  coupled_ancestors a
 | |
|       where a.father = h.id AND a.mother = w.id
 | |
|   union
 | |
|   select h.*, w.*
 | |
|     from folks v, folks h, folks w
 | |
|       where v.name = 'Me' and
 | |
|             (v.father = h.id AND v.mother= w.id)
 | |
| ),
 | |
| coupled_ancestors (id, name, dob, father, mother)
 | |
| as
 | |
| (
 | |
|   select h_id, h_name, h_dob, h_father, h_mother
 | |
|     from ancestor_couples
 | |
|   union
 | |
|   select w_id, w_name, w_dob, w_father, w_mother
 | |
|     from ancestor_couples
 | |
| )
 | |
| select h_name, h_dob, w_name, w_dob
 | |
|   from ancestor_couples;
 | |
| 
 | |
| --error ER_CRASHED_ON_USAGE
 | |
| eval $q;
 | |
| drop table folks;
 | |
| 
 | |
| set tmp_memory_table_size=default;
 | |
| SET @@SESSION.debug_dbug=@saved_dbug;
 |