mirror of
				https://github.com/MariaDB/server.git
				synced 2025-10-31 19:06:14 +01:00 
			
		
		
		
	 4cb0d43ac6
			
		
	
	
	4cb0d43ac6
	
	
	
		
			
			The cause of the crash was that test was setting aria_sort_buffer_size to MAX_LONG_LONG, which caused an overflow in my_malloc() when trying to allocate the buffer + 8 bytes. Fixed by reducing max size of sort_buffer for Aria and MyISAM Other things: - Added code in maria_repair_parallell() to not allocate a big sort buffer for small files. - Updated size of minumim sort buffer in Aria
		
			
				
	
	
		
			15 lines
		
	
	
	
		
			748 B
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			15 lines
		
	
	
	
		
			748 B
		
	
	
	
		
			Text
		
	
	
	
	
	
| 
 | |
| --source include/have_innodb.inc
 | |
| --source include/have_partition.inc
 | |
| --source include/have_sequence.inc
 | |
| 
 | |
| SET sql_mode='';
 | |
| CREATE TEMPORARY TABLE t1 (a tinyINT,b CHAR(1)) ENGINE=InnoDB ROW_FORMAT=REDUNDANT;
 | |
| INSERT INTO t1 VALUES (1,1),(3,3),(2,2);
 | |
| SET SESSION tmp_table_size=True;
 | |
| CREATE TABLE t2 (c INT, d DATE) ENGINE=InnoDB PARTITION BY RANGE (YEAR (d)) SUBPARTITION BY HASH (TO_DAYS (d)) (PARTITION p0 VALUES LESS THAN (1990) (SUBPARTITION s0, SUBPARTITION s1), PARTITION p1 VALUES LESS THAN MAXVALUE (SUBPARTITION s4, SUBPARTITION s5));
 | |
| SET SESSION aria_sort_buffer_size=CAST(-1 AS UNSIGNED INT);
 | |
| INSERT INTO t1 SELECT '', SEQ FROM seq_1_to_258;
 | |
| SET SESSION aria_repair_threads=4;
 | |
| UPDATE t1 SET a=( (SELECT MAX(a) FROM t1));
 | |
| drop table t1,t2;
 |