mirror of
				https://github.com/MariaDB/server.git
				synced 2025-10-31 15:50:51 +03:00 
			
		
		
		
	With innodb_default_row_format=redundant, InnoDB would crash when using table options that are incompatible with ROW_FORMAT=REDUNDANT. create_table_info_t::m_default_row_format: Cache the value of innodb_default_row_format. create_table_info_t::check_table_options(): Validate ROW_TYPE_DEFAULT with m_default_row_format. create_table_info_t::innobase_table_flags(): Use the cached m_default_row_format. create_table_info_t: Never read m_form->s->row_type. Use m_create_info->row_type instead. dict_tf_set(): Never set invalid flags for ROW_FORMAT=REDUNDANT. ha_innobase::truncate(): Set info.row_type based on the ROW_FORMAT of the current table.
		
			
				
	
	
		
			45 lines
		
	
	
		
			3.2 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			45 lines
		
	
	
		
			3.2 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| CREATE TABLE t1(c1 TEXT,c2 BLOB) ENGINE=InnoDB;
 | |
| SHOW TABLE STATUS LIKE 't1';
 | |
| Name	Engine	Version	Row_format	Rows	Avg_row_length	Data_length	Max_data_length	Index_length	Data_free	Auto_increment	Create_time	Update_time	Check_time	Collation	Checksum	Create_options	Comment
 | |
| t1	InnoDB	#	Compact	#	#	#	#	#	#	NULL	#	NULL	NULL	latin1_swedish_ci	NULL		
 | |
| DROP TABLE t1;
 | |
| CREATE TABLE t1(c1 TEXT,c2 BLOB) ENGINE=InnoDB ROW_FORMAT=DYNAMIC;
 | |
| SHOW TABLE STATUS LIKE 't1';
 | |
| Name	Engine	Version	Row_format	Rows	Avg_row_length	Data_length	Max_data_length	Index_length	Data_free	Auto_increment	Create_time	Update_time	Check_time	Collation	Checksum	Create_options	Comment
 | |
| t1	InnoDB	#	Dynamic	#	#	#	#	#	#	NULL	#	NULL	NULL	latin1_swedish_ci	NULL	row_format=DYNAMIC	
 | |
| DROP TABLE t1;
 | |
| CREATE TABLE t1(c1 TEXT,c2 BLOB) ENGINE=InnoDB ROW_FORMAT=COMPACT;
 | |
| SHOW TABLE STATUS LIKE 't1';
 | |
| Name	Engine	Version	Row_format	Rows	Avg_row_length	Data_length	Max_data_length	Index_length	Data_free	Auto_increment	Create_time	Update_time	Check_time	Collation	Checksum	Create_options	Comment
 | |
| t1	InnoDB	#	Compact	#	#	#	#	#	#	NULL	#	NULL	NULL	latin1_swedish_ci	NULL	row_format=COMPACT	
 | |
| DROP TABLE t1;
 | |
| CREATE TABLE t1(c1 TEXT,c2 BLOB) ENGINE=InnoDB ROW_FORMAT=REDUNDANT;
 | |
| SHOW TABLE STATUS LIKE 't1';
 | |
| Name	Engine	Version	Row_format	Rows	Avg_row_length	Data_length	Max_data_length	Index_length	Data_free	Auto_increment	Create_time	Update_time	Check_time	Collation	Checksum	Create_options	Comment
 | |
| t1	InnoDB	#	Redundant	#	#	#	#	#	#	NULL	#	NULL	NULL	latin1_swedish_ci	NULL	row_format=REDUNDANT	
 | |
| DROP TABLE t1;
 | |
| CREATE TABLE t1(c1 TEXT,c2 BLOB) ENGINE=InnoDB
 | |
| ROW_FORMAT=COMPRESSED;
 | |
| SHOW TABLE STATUS LIKE 't1';
 | |
| Name	Engine	Version	Row_format	Rows	Avg_row_length	Data_length	Max_data_length	Index_length	Data_free	Auto_increment	Create_time	Update_time	Check_time	Collation	Checksum	Create_options	Comment
 | |
| t1	InnoDB	#	Compressed	#	#	#	#	#	#	NULL	#	NULL	NULL	latin1_swedish_ci	NULL	row_format=COMPRESSED	
 | |
| TRUNCATE TABLE t1;
 | |
| SHOW TABLE STATUS LIKE 't1';
 | |
| Name	Engine	Version	Row_format	Rows	Avg_row_length	Data_length	Max_data_length	Index_length	Data_free	Auto_increment	Create_time	Update_time	Check_time	Collation	Checksum	Create_options	Comment
 | |
| t1	InnoDB	#	Compressed	#	#	#	#	#	#	NULL	#	NULL	NULL	latin1_swedish_ci	NULL	row_format=COMPRESSED	
 | |
| DROP TABLE t1;
 | |
| CREATE TABLE t1 (c1 INT) ENGINE=InnoDB page_compressed=1;
 | |
| SHOW TABLE STATUS LIKE 't1';
 | |
| Name	Engine	Version	Row_format	Rows	Avg_row_length	Data_length	Max_data_length	Index_length	Data_free	Auto_increment	Create_time	Update_time	Check_time	Collation	Checksum	Create_options	Comment
 | |
| t1	InnoDB	#	Dynamic	#	#	#	#	#	#	NULL	#	NULL	NULL	latin1_swedish_ci	NULL	`page_compressed`=1	
 | |
| DROP TABLE IF EXISTS t1;
 | |
| SET @save_format = @@GLOBAL.innodb_default_row_format;
 | |
| SET GLOBAL innodb_default_row_format = redundant;
 | |
| CREATE TABLE t1 (c1 INT) ENGINE=InnoDB;
 | |
| SET GLOBAL innodb_default_row_format = @save_format;
 | |
| TRUNCATE TABLE t1;
 | |
| SHOW TABLE STATUS LIKE 't1';
 | |
| Name	Engine	Version	Row_format	Rows	Avg_row_length	Data_length	Max_data_length	Index_length	Data_free	Auto_increment	Create_time	Update_time	Check_time	Collation	Checksum	Create_options	Comment
 | |
| t1	InnoDB	#	Redundant	#	#	#	#	#	#	NULL	#	NULL	NULL	latin1_swedish_ci	NULL		
 | |
| DROP TABLE t1;
 |