mirror of
				https://github.com/MariaDB/server.git
				synced 2025-10-31 15:50:51 +03:00 
			
		
		
		
	Backport mysql-test/t/myisam_explain_non_select_all.test from mysql-5.6 - the .result file was modified because MariaDB choses different query plans in a number cases. Also, we don't have some of the "incorrect EXPLAIN output" bugs that they still have. The .test file and includes were taken verbatim with one exception: two tests were disabled with --disable parsing: 1. @@sql_safe_updates is not enforced EXPLAINs of multitable updates. In MariaDB, the execution itself will produce ER_UPDATE_WITHOUT_KEY_IN_SAFE_MODE, but EXPLAIN won't. 2. Their case #71 hits some old bug in MyISAM (See their comments in explain_non_select.inc for details).
		
			
				
	
	
		
			22 lines
		
	
	
		
			725 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			22 lines
		
	
	
		
			725 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| # 
 | |
| # Run explain_non_select.inc on MyISAM with all of the so-called 6.0 features.
 | |
| #
 | |
| 
 | |
| #--source include/have_semijoin.inc
 | |
| #--source include/have_materialization.inc
 | |
| #--source include/have_firstmatch.inc
 | |
| #--source include/have_loosescan.inc
 | |
| #--source include/have_index_condition_pushdown.inc
 | |
| #--source include/have_mrr.inc
 | |
| 
 | |
| #set optimizer_switch='semijoin=on,materialization=on,firstmatch=on,loosescan=on,index_condition_pushdown=on,mrr=on,mrr_cost_based=off';
 | |
| 
 | |
| set @save_storage_engine= @@session.default_storage_engine;
 | |
| set session default_storage_engine = MyISAM;
 | |
| --let $json = 0
 | |
| --let $validation = 0
 | |
| --source include/explain_non_select.inc
 | |
| set default_storage_engine= @save_storage_engine;
 | |
| 
 | |
| set optimizer_switch=default;
 |