Details
Description
The 'main.range_vs_index_merge_innodb' test relies upon EXPLAIN SELECT statements being deterministic, however with InnoDB this is not the case. Not only do the row counts given change (being estimates), but the query plan can as well.
When, for instance, there are several possible indices, the query plan may select any of them:
@@ -761,7 +761,7 @@ EXPLAIN SELECT * FROM City WHERE Country='BRA'; id select_type table type possible_keys key key_len ref rows Extra -1 SIMPLE City ref Country,CountryPopulation,CountryName Country 3 const # Using index condition +1 SIMPLE City ref Country,CountryPopulation,CountryName CountryPopulation 3 const # Using index condition
Is the InnoDB version of this test required or would the normal 'main.range_vs_index_merge' test suffice for verifying the behaviour of the optimizer?
Gliffy Diagrams
Attachments
Activity
- All
- Comments
- Work Log
- History
- Activity
- Transitions
We had somewhat similar problems (although not with this particular index) in buildbot, but it was quite long ago – in 2014. Unfortunately, the cross-reference report cannot display failures for this test, apparently because the output appears to be corrupted sometimes.