mirror of
				https://github.com/MariaDB/server.git
				synced 2025-10-30 10:26:12 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			69 lines
		
	
	
	
		
			1.6 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			69 lines
		
	
	
	
		
			1.6 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
| # 
 | |
| # OPTIMIZE TABLE with partitions and OPTIMIZE PARTITIONS
 | |
| #
 | |
| 
 | |
| --source include/have_partition.inc
 | |
| --source ../have_engine.inc
 | |
| 
 | |
| --disable_warnings
 | |
| DROP TABLE IF EXISTS t1,t2;
 | |
| --enable_warnings
 | |
| 
 | |
| let $partition_options = PARTITION BY HASH(a) PARTITIONS 2;
 | |
| --source ../create_table.inc
 | |
| if ($mysql_errname)
 | |
| {
 | |
|   --let $my_last_stmt = $create_statement
 | |
|   --let $functionality = Partitions
 | |
|   --source ../unexpected_result.inc
 | |
| }
 | |
| if (!$mysql_errname)
 | |
| {
 | |
|   INSERT INTO t1 (a,b) VALUES (1,'a'),(2,'b'),(3,'c'),(2,'d'),(4,'e'),(100,'f'),(101,'g');
 | |
| 
 | |
|   let $table_name = t2;
 | |
|   let $partition_options = PARTITION BY RANGE(a) (
 | |
|     PARTITION p0 VALUES LESS THAN (100),
 | |
|     PARTITION p1 VALUES LESS THAN MAXVALUE
 | |
|   );
 | |
|   --source ../create_table.inc
 | |
| 
 | |
|   INSERT INTO t2 (a,b) SELECT a, b FROM t1;
 | |
| 
 | |
|   INSERT INTO t1 (a,b) VALUES (3,'c'),(4,'d');
 | |
| 
 | |
|   let $alter_definition = OPTIMIZE PARTITION p1;
 | |
|   --source ../alter_table.inc
 | |
|   if ($mysql_errname)
 | |
|   {
 | |
|     --let $my_last_stmt = $alter_statement
 | |
|     --let $functionality = ALTER TABLE .. OPTIMIZE PARTITION
 | |
|     --source ../unexpected_result.inc
 | |
|   }
 | |
| 
 | |
|   INSERT INTO t2 (a,b) VALUES (4,'d');
 | |
| 
 | |
|   let $table_name = t2;
 | |
|   let $alter_definition = OPTIMIZE PARTITION p0 NO_WRITE_TO_BINLOG;
 | |
|   --source ../alter_table.inc
 | |
| 
 | |
|   INSERT INTO t1 (a,b) VALUES (6,'f');
 | |
| 
 | |
|   let $alter_definition = OPTIMIZE PARTITION ALL LOCAL;
 | |
|   --source ../alter_table.inc
 | |
| 
 | |
|   INSERT INTO t2 (a,b) VALUES (5,'e');
 | |
| 
 | |
|   let $table_name = t2;
 | |
|   let $alter_definition = OPTIMIZE PARTITION p1,p0;
 | |
|   --source ../alter_table.inc
 | |
| 
 | |
|   DROP TABLE t1, t2;
 | |
| }
 | |
| 
 | |
| let $extra_tbl_opts = PARTITION BY HASH(a) PARTITIONS 2;
 | |
| --source ../optimize_table.inc
 | |
| 
 | |
| 
 | |
| --source ../cleanup_engine.inc
 | |
| 
 | 
