mirror of
				https://github.com/MariaDB/server.git
				synced 2025-11-03 20:36:16 +01:00 
			
		
		
		
	InnoDB could return off-by-1 estimates for the involved tables.
This would cause off-by-many difference in join output cardinality
for the top-level SELECT, and so different query plan for the subquery.
The fix: Introduce mysql-test/include/innodb_stable_estimates.{inc,opt}
which disables InnoDB's background statistics collection, and use it.
		
	
			
		
			
				
	
	
		
			12 lines
		
	
	
	
		
			531 B
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			12 lines
		
	
	
	
		
			531 B
		
	
	
	
		
			C++
		
	
	
	
	
	
#
 | 
						|
# Include this file in your .test file if your testcase uses InnoDB tables
 | 
						|
# requiring stable query plans, which likely requires that InnoDB produces
 | 
						|
# stable estimates for #records in tables.
 | 
						|
#
 | 
						|
# How it works:
 | 
						|
# Unstable InnoDB estimates are caused by InnoDB's background statistics
 | 
						|
# collection. When you include this file, MTR will use server options from
 | 
						|
# include/innodb_stable_estimates.opt, which disables background statistics
 | 
						|
# collection.
 | 
						|
# (and no, InnoDB team objects to using this configuration for all MTR tests)
 | 
						|
#
 |