List:Commits« Previous MessageNext Message »
From:Ole John Aske Date:February 22 2011 2:25pm
Subject:bzr push into mysql-trunk branch (ole.john.aske:3700 to 3701) Bug#11766256
View as plain text  
 3701 Ole John Aske	2011-02-22
      Fix for Bug#11766256: GREEDY OPTIMIZER PRODUCE STUPID QUERY EXECUTION PLANS
      
      This a a collection of the former 3 patches for this bug:
      
        - Patch1: Fixed several defects in the greedy optimization
          (http://lists.mysql.com/commits/129562)
      
        - Patch2: Maintains order of best_ref[]
          (http://lists.mysql.com/commits/130054)
      
        - Patch3: Refactoring and cleanup related to prev patches.
          (http://lists.mysql.com/commits/130055)
      
      On the request from the reviewers these patches has been collected
      into a single changeset for review.
      
      PATCH1:
      =======
      Fixed several defects in the greedy optimization:
      
      1) The greedy optimizer calculate the 'compare-cost' (CPU-cost)
         for iterating over the partial plan result at each level in
         the query plan as 'record_count / (double) TIME_FOR_COMPARE'
      
         This cost was only used localy for 'best' calculation at each
         level, and *not* accumulated into the total cost for the query plan.
      
         This fix add the 'CPU-cost' of processing 'current_record_count'
         records at each level to 'current_read_time' *before* it is used as
         'accumulated cost' argument to recursive 
         best_extension_by_limited_search() calls. This ensures that the
         cost of a huge join-fanout early in the QEP is correctly
         reflected in the cost of the final QEP.
      
         To get identical cost for a 'best' optimized query and a
         straight_join with the same join order, the same change was also
         applied to optimize_straight_join() and get_partial_join_cost()
      
      2) Furthermore to get equal cost for 'best' optimized query and a
         straight_join we had to subtract the same '0.001' in optimize_straight_join()
         as we already do in best_extension_by_limited_search()
      
      3) When best_extension_by_limited_search() aggregated the 'best' plan a
         plan was 'best' by the check :
      
         'if ((search_depth == 1) || (current_read_time < join->best_read))'
      
         The term '(search_depth == 1' incorrectly caused a new best plan to be
         collected whenever we reached the specified 'search_depth' - Even if
         this partial query plan was more expensive than what we had already
         found.
      
          ... See further comment and pure numbers for this in bugreport.
      
      PATCH2:
      ======
      In order for the greedy optimizers 'prune' logic to quickly find a
      'good' execution plan, and prune the other less promissing plans, best_ref[]
      is sorted by E(#rows) before we start calculating query plans.
      
      However, due to how swap_variables() was used inside
      best_extension_by_limited_search(), best_ref[] quickly
      became 'scrambled', and was no longer sorted when
      multiple partial plans had been evaluated.
      
      This changeset maintains the order of the unevaluated part of
      best_ref[]. Besides reducing time to find the 'best' query plan,
      this also reduces the risk for incorrectly pruning away the optimal 
      query plan.
      
      This fix also include 'TIME_FOR_COMPARE' as part of the 'cost'
      considdered when less promissing query plans:
      
       - This 'compare cost' is included everywhere else in the
         best-calculations.
       - Try to run the extended 'greedy_optimizer' test wo/ and 
         it demonstrate how it fails to prune 'bad' plans -> and likely tiemouts.
      
      PATCH3:
      ======
      Refactoring cleanup related the above patches for this bug:
      
       - Added 'TIME_FOR_COMPARE' to current_read_time where
         it is initially calculated - Removed later adding of
         TIME_FOR_COMPARE whenever it is used.
      
       - Used local variable '*position' instead of 'join->positions + idx'
         a few places.
      
       - Replaced a few references to 'restore_prev_nj_state()'
         with 'backout_nj_sj_state()' in comments.
         (Has previously been renamed)
      
      This patch contains no (intentional) changes of logic.
                                                               
     @ mysql-test/r/greedy_optimizer.result
        Updated resultfile after greedy optimizer changes. 
        Don't care about increased 'cost' as this is a relative number.
        
        However, several 'Total_handler_reads' has decreased, and none
        increased - Which should be a fairly good indication of this fix
        improving the existing query plan.
        
        Also added a lots of new tests which will fail wo/ this fix.
     @ mysql-test/r/join.result
        Accepted udated 'cost'
     @ mysql-test/r/join_cache_jcl1.result
        Accepted new query plan which looks better as ALL is joined in later.
        (Decreased fanout)
     @ mysql-test/r/join_cache_jcl2.result
        Accepted new query plan which looks better as ALL is joined in later.
        (Decreased fanout)
     @ mysql-test/r/join_cache_jcl3.result
        Accepted new query plan which looks better as ALL is joined in later.
        (Decreased fanout)
     @ mysql-test/r/join_cache_jcl4.result
        Accepted new query plan which looks better as ALL is joined in later.
        (Decreased fanout)
     @ mysql-test/r/status.result
        Accepted udated 'cost'
     @ mysql-test/r/subquery_sj_none.result
        ALL/REF -joining tables with most rows later improved the query plan
        (Decreased fanout).
        
        Same for doing REF after EQ_REF in the last query (decreased fanout)

    modified:
      mysql-test/r/greedy_optimizer.result
      mysql-test/r/join.result
      mysql-test/r/join_cache_jcl1.result
      mysql-test/r/join_cache_jcl2.result
      mysql-test/r/join_cache_jcl3.result
      mysql-test/r/join_cache_jcl4.result
      mysql-test/r/status.result
      mysql-test/r/subquery_sj_none.result
      mysql-test/t/greedy_optimizer.test
      sql/sql_select.cc
 3700 Nirbhay Choubey	2011-02-22 [merge]
      Merging from mysql-5.5.

    modified:
      mysql-test/r/ddl_i18n_koi8r.result
      mysql-test/r/ddl_i18n_utf8.result
=== modified file 'mysql-test/r/greedy_optimizer.result'
--- a/mysql-test/r/greedy_optimizer.result	2011-02-17 11:38:07 +0000
+++ b/mysql-test/r/greedy_optimizer.result	2011-02-22 14:24:33 +0000
@@ -124,16 +124,16 @@ select @@optimizer_search_depth;
 0
 EXPLAIN select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c12 = t2.c21 and t2.c22 = t3.c31 and t3.c32 = t4.c41 and t4.c42 = t5.c51 and t5.c52 = t6.c61 and t6.c62 = t7.c71;
 id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
-1	SIMPLE	t1	ALL	NULL	NULL	NULL	NULL	3	
-1	SIMPLE	t2	ALL	NULL	NULL	NULL	NULL	6	Using where; Using join buffer (BNL, incremental buffers)
+1	SIMPLE	t2	ALL	NULL	NULL	NULL	NULL	6	Using where
+1	SIMPLE	t3	eq_ref	PRIMARY	PRIMARY	4	test.t2.c22	1	
 1	SIMPLE	t4	ALL	NULL	NULL	NULL	NULL	12	Using where; Using join buffer (BNL, incremental buffers)
+1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t4.c42	1	
 1	SIMPLE	t6	ALL	NULL	NULL	NULL	NULL	18	Using where; Using join buffer (BNL, incremental buffers)
-1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t4.c42	1	Using where
-1	SIMPLE	t3	eq_ref	PRIMARY	PRIMARY	4	test.t2.c22	1	Using where
 1	SIMPLE	t7	eq_ref	PRIMARY	PRIMARY	4	test.t6.c62	1	Using index
+1	SIMPLE	t1	ALL	NULL	NULL	NULL	NULL	3	Using where; Using join buffer (BNL, incremental buffers)
 SHOW STATUS LIKE 'Last_query_cost';
 Variable_name	Value
-Last_query_cost	821.936459
+Last_query_cost	1372.458334
 FLUSH STATUS;
 select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c12 = t2.c21 and t2.c22 = t3.c31 and t3.c32 = t4.c41 and t4.c42 = t5.c51 and t5.c52 = t6.c61 and t6.c62 = t7.c71;
 c11
@@ -147,16 +147,16 @@ Total_handler_reads
 46
 EXPLAIN select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c12 = t2.c21 and t2.c22 = t3.c31 and t3.c32 = t4.c41 and t4.c42 = t5.c51 and t5.c52 = t6.c61 and t6.c62 = t7.c71;
 id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
-1	SIMPLE	t1	ALL	NULL	NULL	NULL	NULL	3	
-1	SIMPLE	t2	ALL	NULL	NULL	NULL	NULL	6	Using where; Using join buffer (BNL, incremental buffers)
+1	SIMPLE	t2	ALL	NULL	NULL	NULL	NULL	6	Using where
+1	SIMPLE	t3	eq_ref	PRIMARY	PRIMARY	4	test.t2.c22	1	
 1	SIMPLE	t4	ALL	NULL	NULL	NULL	NULL	12	Using where; Using join buffer (BNL, incremental buffers)
+1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t4.c42	1	
 1	SIMPLE	t6	ALL	NULL	NULL	NULL	NULL	18	Using where; Using join buffer (BNL, incremental buffers)
-1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t4.c42	1	Using where
-1	SIMPLE	t3	eq_ref	PRIMARY	PRIMARY	4	test.t2.c22	1	Using where
 1	SIMPLE	t7	eq_ref	PRIMARY	PRIMARY	4	test.t6.c62	1	Using index
+1	SIMPLE	t1	ALL	NULL	NULL	NULL	NULL	3	Using where; Using join buffer (BNL, incremental buffers)
 SHOW STATUS LIKE 'Last_query_cost';
 Variable_name	Value
-Last_query_cost	821.936459
+Last_query_cost	1372.458334
 FLUSH STATUS;
 select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c12 = t2.c21 and t2.c22 = t3.c31 and t3.c32 = t4.c41 and t4.c42 = t5.c51 and t5.c52 = t6.c61 and t6.c62 = t7.c71;
 c11
@@ -172,14 +172,14 @@ EXPLAIN select t1.c11 from t1, t2, t3, t
 id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
 1	SIMPLE	t2	ALL	NULL	NULL	NULL	NULL	6	Using where
 1	SIMPLE	t4	ALL	NULL	NULL	NULL	NULL	12	Using join buffer (BNL, incremental buffers)
-1	SIMPLE	t6	ALL	NULL	NULL	NULL	NULL	18	Using join buffer (BNL, incremental buffers)
 1	SIMPLE	t1	eq_ref	PRIMARY	PRIMARY	4	test.t2.c21	1	Using where
-1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t1.c14	1	Using index
 1	SIMPLE	t3	eq_ref	PRIMARY	PRIMARY	4	test.t1.c12	1	Using index
+1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t1.c14	1	Using index
 1	SIMPLE	t7	eq_ref	PRIMARY	PRIMARY	4	test.t1.c16	1	Using index
+1	SIMPLE	t6	ALL	NULL	NULL	NULL	NULL	18	Using where; Using join buffer (BNL, incremental buffers)
 SHOW STATUS LIKE 'Last_query_cost';
 Variable_name	Value
-Last_query_cost	289.430791
+Last_query_cost	362.673673
 FLUSH STATUS;
 select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71;
 c11
@@ -190,19 +190,19 @@ SELECT SUM(variable_value) AS Total_hand
 FROM information_schema.session_status
 WHERE variable_name LIKE 'Handler_read%';
 Total_handler_reads
-1338
+114
 EXPLAIN select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71;
 id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
 1	SIMPLE	t2	ALL	NULL	NULL	NULL	NULL	6	Using where
 1	SIMPLE	t4	ALL	NULL	NULL	NULL	NULL	12	Using join buffer (BNL, incremental buffers)
-1	SIMPLE	t6	ALL	NULL	NULL	NULL	NULL	18	Using join buffer (BNL, incremental buffers)
 1	SIMPLE	t1	eq_ref	PRIMARY	PRIMARY	4	test.t2.c21	1	Using where
-1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t1.c14	1	Using index
 1	SIMPLE	t3	eq_ref	PRIMARY	PRIMARY	4	test.t1.c12	1	Using index
+1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t1.c14	1	Using index
 1	SIMPLE	t7	eq_ref	PRIMARY	PRIMARY	4	test.t1.c16	1	Using index
+1	SIMPLE	t6	ALL	NULL	NULL	NULL	NULL	18	Using where; Using join buffer (BNL, incremental buffers)
 SHOW STATUS LIKE 'Last_query_cost';
 Variable_name	Value
-Last_query_cost	289.430791
+Last_query_cost	362.673673
 FLUSH STATUS;
 select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71;
 c11
@@ -213,19 +213,19 @@ SELECT SUM(variable_value) AS Total_hand
 FROM information_schema.session_status
 WHERE variable_name LIKE 'Handler_read%';
 Total_handler_reads
-1338
+114
 EXPLAIN select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71 and t2.c22 = t3.c32 and t2.c23 = t4.c42 and t2.c24 = t5.c52 and t2.c25 = t6.c62 and t2.c26 = t7.c72 and t3.c33 = t4.c43 and t3.c34 = t5.c53 and t3.c35 = t6.c63 and t3.c36 = t7.c73 and t4.c42 = t5.c54 and t4.c43 = t6.c64 and t4.c44 = t7.c74 and t5.c52 = t6.c65 and t5.c53 = t7.c75 and t6.c62 = t7.c76;
 id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
 1	SIMPLE	t2	ALL	NULL	NULL	NULL	NULL	6	Using where
 1	SIMPLE	t4	ALL	NULL	NULL	NULL	NULL	12	Using where; Using join buffer (BNL, incremental buffers)
-1	SIMPLE	t6	ALL	NULL	NULL	NULL	NULL	18	Using where; Using join buffer (BNL, incremental buffers)
 1	SIMPLE	t1	eq_ref	PRIMARY	PRIMARY	4	test.t2.c21	1	Using where
-1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t1.c14	1	Using where
 1	SIMPLE	t3	eq_ref	PRIMARY	PRIMARY	4	test.t1.c12	1	Using where
+1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t1.c14	1	Using where
 1	SIMPLE	t7	eq_ref	PRIMARY	PRIMARY	4	test.t1.c16	1	Using where
+1	SIMPLE	t6	ALL	NULL	NULL	NULL	NULL	18	Using where; Using join buffer (BNL, incremental buffers)
 SHOW STATUS LIKE 'Last_query_cost';
 Variable_name	Value
-Last_query_cost	289.469776
+Last_query_cost	362.776403
 FLUSH STATUS;
 select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71 and t2.c22 = t3.c32 and t2.c23 = t4.c42 and t2.c24 = t5.c52 and t2.c25 = t6.c62 and t2.c26 = t7.c72 and t3.c33 = t4.c43 and t3.c34 = t5.c53 and t3.c35 = t6.c63 and t3.c36 = t7.c73 and t4.c42 = t5.c54 and t4.c43 = t6.c64 and t4.c44 = t7.c74 and t5.c52 = t6.c65 and t5.c53 = t7.c75 and t6.c62 = t7.c76;
 c11
@@ -238,14 +238,14 @@ EXPLAIN select t1.c11 from t7, t6, t5, t
 id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
 1	SIMPLE	t2	ALL	NULL	NULL	NULL	NULL	6	Using where
 1	SIMPLE	t4	ALL	NULL	NULL	NULL	NULL	12	Using where; Using join buffer (BNL, incremental buffers)
-1	SIMPLE	t6	ALL	NULL	NULL	NULL	NULL	18	Using where; Using join buffer (BNL, incremental buffers)
 1	SIMPLE	t1	eq_ref	PRIMARY	PRIMARY	4	test.t2.c21	1	Using where
-1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t1.c14	1	Using where
 1	SIMPLE	t3	eq_ref	PRIMARY	PRIMARY	4	test.t1.c12	1	Using where
+1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t1.c14	1	Using where
 1	SIMPLE	t7	eq_ref	PRIMARY	PRIMARY	4	test.t1.c16	1	Using where
+1	SIMPLE	t6	ALL	NULL	NULL	NULL	NULL	18	Using where; Using join buffer (BNL, incremental buffers)
 SHOW STATUS LIKE 'Last_query_cost';
 Variable_name	Value
-Last_query_cost	289.469776
+Last_query_cost	362.776403
 FLUSH STATUS;
 select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71 and t2.c22 = t3.c32 and t2.c23 = t4.c42 and t2.c24 = t5.c52 and t2.c25 = t6.c62 and t2.c26 = t7.c72 and t3.c33 = t4.c43 and t3.c34 = t5.c53 and t3.c35 = t6.c63 and t3.c36 = t7.c73 and t4.c42 = t5.c54 and t4.c43 = t6.c64 and t4.c44 = t7.c74 and t5.c52 = t6.c65 and t5.c53 = t7.c75 and t6.c62 = t7.c76;
 c11
@@ -269,7 +269,7 @@ id	select_type	table	type	possible_keys	
 1	SIMPLE	t7	eq_ref	PRIMARY	PRIMARY	4	test.t6.c62	1	Using index
 SHOW STATUS LIKE 'Last_query_cost';
 Variable_name	Value
-Last_query_cost	822.001607
+Last_query_cost	1693.801607
 FLUSH STATUS;
 select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c12 = t2.c21 and t2.c22 = t3.c31 and t3.c32 = t4.c41 and t4.c42 = t5.c51 and t5.c52 = t6.c61 and t6.c62 = t7.c71;
 c11
@@ -292,7 +292,7 @@ id	select_type	table	type	possible_keys	
 1	SIMPLE	t7	eq_ref	PRIMARY	PRIMARY	4	test.t6.c62	1	Using index
 SHOW STATUS LIKE 'Last_query_cost';
 Variable_name	Value
-Last_query_cost	822.001607
+Last_query_cost	1693.801607
 FLUSH STATUS;
 select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c12 = t2.c21 and t2.c22 = t3.c31 and t3.c32 = t4.c41 and t4.c42 = t5.c51 and t5.c52 = t6.c61 and t6.c62 = t7.c71;
 c11
@@ -315,7 +315,7 @@ id	select_type	table	type	possible_keys	
 1	SIMPLE	t6	ALL	NULL	NULL	NULL	NULL	18	Using where; Using join buffer (BNL, incremental buffers)
 SHOW STATUS LIKE 'Last_query_cost';
 Variable_name	Value
-Last_query_cost	795.014136
+Last_query_cost	844.214136
 FLUSH STATUS;
 select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71;
 c11
@@ -338,7 +338,7 @@ id	select_type	table	type	possible_keys	
 1	SIMPLE	t6	ALL	NULL	NULL	NULL	NULL	18	Using where; Using join buffer (BNL, incremental buffers)
 SHOW STATUS LIKE 'Last_query_cost';
 Variable_name	Value
-Last_query_cost	795.014136
+Last_query_cost	844.214136
 FLUSH STATUS;
 select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71;
 c11
@@ -361,7 +361,7 @@ id	select_type	table	type	possible_keys	
 1	SIMPLE	t6	ALL	NULL	NULL	NULL	NULL	18	Using where; Using join buffer (BNL, incremental buffers)
 SHOW STATUS LIKE 'Last_query_cost';
 Variable_name	Value
-Last_query_cost	795.340548
+Last_query_cost	844.540548
 FLUSH STATUS;
 select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71 and t2.c22 = t3.c32 and t2.c23 = t4.c42 and t2.c24 = t5.c52 and t2.c25 = t6.c62 and t2.c26 = t7.c72 and t3.c33 = t4.c43 and t3.c34 = t5.c53 and t3.c35 = t6.c63 and t3.c36 = t7.c73 and t4.c42 = t5.c54 and t4.c43 = t6.c64 and t4.c44 = t7.c74 and t5.c52 = t6.c65 and t5.c53 = t7.c75 and t6.c62 = t7.c76;
 c11
@@ -381,7 +381,7 @@ id	select_type	table	type	possible_keys	
 1	SIMPLE	t6	ALL	NULL	NULL	NULL	NULL	18	Using where; Using join buffer (BNL, incremental buffers)
 SHOW STATUS LIKE 'Last_query_cost';
 Variable_name	Value
-Last_query_cost	795.340548
+Last_query_cost	844.540548
 FLUSH STATUS;
 select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71 and t2.c22 = t3.c32 and t2.c23 = t4.c42 and t2.c24 = t5.c52 and t2.c25 = t6.c62 and t2.c26 = t7.c72 and t3.c33 = t4.c43 and t3.c34 = t5.c53 and t3.c35 = t6.c63 and t3.c36 = t7.c73 and t4.c42 = t5.c54 and t4.c43 = t6.c64 and t4.c44 = t7.c74 and t5.c52 = t6.c65 and t5.c53 = t7.c75 and t6.c62 = t7.c76;
 c11
@@ -396,16 +396,16 @@ select @@optimizer_search_depth;
 62
 EXPLAIN select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c12 = t2.c21 and t2.c22 = t3.c31 and t3.c32 = t4.c41 and t4.c42 = t5.c51 and t5.c52 = t6.c61 and t6.c62 = t7.c71;
 id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
-1	SIMPLE	t1	ALL	NULL	NULL	NULL	NULL	3	
-1	SIMPLE	t2	ALL	NULL	NULL	NULL	NULL	6	Using where; Using join buffer (BNL, incremental buffers)
+1	SIMPLE	t2	ALL	NULL	NULL	NULL	NULL	6	Using where
+1	SIMPLE	t3	eq_ref	PRIMARY	PRIMARY	4	test.t2.c22	1	
 1	SIMPLE	t4	ALL	NULL	NULL	NULL	NULL	12	Using where; Using join buffer (BNL, incremental buffers)
+1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t4.c42	1	
 1	SIMPLE	t6	ALL	NULL	NULL	NULL	NULL	18	Using where; Using join buffer (BNL, incremental buffers)
-1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t4.c42	1	Using where
-1	SIMPLE	t3	eq_ref	PRIMARY	PRIMARY	4	test.t2.c22	1	Using where
 1	SIMPLE	t7	eq_ref	PRIMARY	PRIMARY	4	test.t6.c62	1	Using index
+1	SIMPLE	t1	ALL	NULL	NULL	NULL	NULL	3	Using where; Using join buffer (BNL, incremental buffers)
 SHOW STATUS LIKE 'Last_query_cost';
 Variable_name	Value
-Last_query_cost	821.936459
+Last_query_cost	1372.458334
 FLUSH STATUS;
 select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c12 = t2.c21 and t2.c22 = t3.c31 and t3.c32 = t4.c41 and t4.c42 = t5.c51 and t5.c52 = t6.c61 and t6.c62 = t7.c71;
 c11
@@ -419,16 +419,16 @@ Total_handler_reads
 46
 EXPLAIN select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c12 = t2.c21 and t2.c22 = t3.c31 and t3.c32 = t4.c41 and t4.c42 = t5.c51 and t5.c52 = t6.c61 and t6.c62 = t7.c71;
 id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
-1	SIMPLE	t1	ALL	NULL	NULL	NULL	NULL	3	
-1	SIMPLE	t2	ALL	NULL	NULL	NULL	NULL	6	Using where; Using join buffer (BNL, incremental buffers)
+1	SIMPLE	t2	ALL	NULL	NULL	NULL	NULL	6	Using where
+1	SIMPLE	t3	eq_ref	PRIMARY	PRIMARY	4	test.t2.c22	1	
 1	SIMPLE	t4	ALL	NULL	NULL	NULL	NULL	12	Using where; Using join buffer (BNL, incremental buffers)
+1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t4.c42	1	
 1	SIMPLE	t6	ALL	NULL	NULL	NULL	NULL	18	Using where; Using join buffer (BNL, incremental buffers)
-1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t4.c42	1	Using where
-1	SIMPLE	t3	eq_ref	PRIMARY	PRIMARY	4	test.t2.c22	1	Using where
 1	SIMPLE	t7	eq_ref	PRIMARY	PRIMARY	4	test.t6.c62	1	Using index
+1	SIMPLE	t1	ALL	NULL	NULL	NULL	NULL	3	Using where; Using join buffer (BNL, incremental buffers)
 SHOW STATUS LIKE 'Last_query_cost';
 Variable_name	Value
-Last_query_cost	821.936459
+Last_query_cost	1372.458334
 FLUSH STATUS;
 select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c12 = t2.c21 and t2.c22 = t3.c31 and t3.c32 = t4.c41 and t4.c42 = t5.c51 and t5.c52 = t6.c61 and t6.c62 = t7.c71;
 c11
@@ -444,14 +444,14 @@ EXPLAIN select t1.c11 from t1, t2, t3, t
 id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
 1	SIMPLE	t2	ALL	NULL	NULL	NULL	NULL	6	Using where
 1	SIMPLE	t4	ALL	NULL	NULL	NULL	NULL	12	Using join buffer (BNL, incremental buffers)
-1	SIMPLE	t6	ALL	NULL	NULL	NULL	NULL	18	Using join buffer (BNL, incremental buffers)
 1	SIMPLE	t1	eq_ref	PRIMARY	PRIMARY	4	test.t2.c21	1	Using where
-1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t1.c14	1	Using index
 1	SIMPLE	t3	eq_ref	PRIMARY	PRIMARY	4	test.t1.c12	1	Using index
+1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t1.c14	1	Using index
 1	SIMPLE	t7	eq_ref	PRIMARY	PRIMARY	4	test.t1.c16	1	Using index
+1	SIMPLE	t6	ALL	NULL	NULL	NULL	NULL	18	Using where; Using join buffer (BNL, incremental buffers)
 SHOW STATUS LIKE 'Last_query_cost';
 Variable_name	Value
-Last_query_cost	289.430791
+Last_query_cost	362.673673
 FLUSH STATUS;
 select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71;
 c11
@@ -462,19 +462,19 @@ SELECT SUM(variable_value) AS Total_hand
 FROM information_schema.session_status
 WHERE variable_name LIKE 'Handler_read%';
 Total_handler_reads
-1338
+114
 EXPLAIN select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71;
 id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
 1	SIMPLE	t2	ALL	NULL	NULL	NULL	NULL	6	Using where
 1	SIMPLE	t4	ALL	NULL	NULL	NULL	NULL	12	Using join buffer (BNL, incremental buffers)
-1	SIMPLE	t6	ALL	NULL	NULL	NULL	NULL	18	Using join buffer (BNL, incremental buffers)
 1	SIMPLE	t1	eq_ref	PRIMARY	PRIMARY	4	test.t2.c21	1	Using where
-1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t1.c14	1	Using index
 1	SIMPLE	t3	eq_ref	PRIMARY	PRIMARY	4	test.t1.c12	1	Using index
+1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t1.c14	1	Using index
 1	SIMPLE	t7	eq_ref	PRIMARY	PRIMARY	4	test.t1.c16	1	Using index
+1	SIMPLE	t6	ALL	NULL	NULL	NULL	NULL	18	Using where; Using join buffer (BNL, incremental buffers)
 SHOW STATUS LIKE 'Last_query_cost';
 Variable_name	Value
-Last_query_cost	289.430791
+Last_query_cost	362.673673
 FLUSH STATUS;
 select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71;
 c11
@@ -485,19 +485,19 @@ SELECT SUM(variable_value) AS Total_hand
 FROM information_schema.session_status
 WHERE variable_name LIKE 'Handler_read%';
 Total_handler_reads
-1338
+114
 EXPLAIN select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71 and t2.c22 = t3.c32 and t2.c23 = t4.c42 and t2.c24 = t5.c52 and t2.c25 = t6.c62 and t2.c26 = t7.c72 and t3.c33 = t4.c43 and t3.c34 = t5.c53 and t3.c35 = t6.c63 and t3.c36 = t7.c73 and t4.c42 = t5.c54 and t4.c43 = t6.c64 and t4.c44 = t7.c74 and t5.c52 = t6.c65 and t5.c53 = t7.c75 and t6.c62 = t7.c76;
 id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
 1	SIMPLE	t2	ALL	NULL	NULL	NULL	NULL	6	Using where
 1	SIMPLE	t4	ALL	NULL	NULL	NULL	NULL	12	Using where; Using join buffer (BNL, incremental buffers)
-1	SIMPLE	t6	ALL	NULL	NULL	NULL	NULL	18	Using where; Using join buffer (BNL, incremental buffers)
 1	SIMPLE	t1	eq_ref	PRIMARY	PRIMARY	4	test.t2.c21	1	Using where
-1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t1.c14	1	Using where
 1	SIMPLE	t3	eq_ref	PRIMARY	PRIMARY	4	test.t1.c12	1	Using where
+1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t1.c14	1	Using where
 1	SIMPLE	t7	eq_ref	PRIMARY	PRIMARY	4	test.t1.c16	1	Using where
+1	SIMPLE	t6	ALL	NULL	NULL	NULL	NULL	18	Using where; Using join buffer (BNL, incremental buffers)
 SHOW STATUS LIKE 'Last_query_cost';
 Variable_name	Value
-Last_query_cost	289.469776
+Last_query_cost	362.776403
 FLUSH STATUS;
 select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71 and t2.c22 = t3.c32 and t2.c23 = t4.c42 and t2.c24 = t5.c52 and t2.c25 = t6.c62 and t2.c26 = t7.c72 and t3.c33 = t4.c43 and t3.c34 = t5.c53 and t3.c35 = t6.c63 and t3.c36 = t7.c73 and t4.c42 = t5.c54 and t4.c43 = t6.c64 and t4.c44 = t7.c74 and t5.c52 = t6.c65 and t5.c53 = t7.c75 and t6.c62 = t7.c76;
 c11
@@ -510,14 +510,14 @@ EXPLAIN select t1.c11 from t7, t6, t5, t
 id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
 1	SIMPLE	t2	ALL	NULL	NULL	NULL	NULL	6	Using where
 1	SIMPLE	t4	ALL	NULL	NULL	NULL	NULL	12	Using where; Using join buffer (BNL, incremental buffers)
-1	SIMPLE	t6	ALL	NULL	NULL	NULL	NULL	18	Using where; Using join buffer (BNL, incremental buffers)
 1	SIMPLE	t1	eq_ref	PRIMARY	PRIMARY	4	test.t2.c21	1	Using where
-1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t1.c14	1	Using where
 1	SIMPLE	t3	eq_ref	PRIMARY	PRIMARY	4	test.t1.c12	1	Using where
+1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t1.c14	1	Using where
 1	SIMPLE	t7	eq_ref	PRIMARY	PRIMARY	4	test.t1.c16	1	Using where
+1	SIMPLE	t6	ALL	NULL	NULL	NULL	NULL	18	Using where; Using join buffer (BNL, incremental buffers)
 SHOW STATUS LIKE 'Last_query_cost';
 Variable_name	Value
-Last_query_cost	289.469776
+Last_query_cost	362.776403
 FLUSH STATUS;
 select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71 and t2.c22 = t3.c32 and t2.c23 = t4.c42 and t2.c24 = t5.c52 and t2.c25 = t6.c62 and t2.c26 = t7.c72 and t3.c33 = t4.c43 and t3.c34 = t5.c53 and t3.c35 = t6.c63 and t3.c36 = t7.c73 and t4.c42 = t5.c54 and t4.c43 = t6.c64 and t4.c44 = t7.c74 and t5.c52 = t6.c65 and t5.c53 = t7.c75 and t6.c62 = t7.c76;
 c11
@@ -538,14 +538,14 @@ EXPLAIN select t1.c11 from t1, t2, t3, t
 id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
 1	SIMPLE	t1	ALL	NULL	NULL	NULL	NULL	3	
 1	SIMPLE	t2	ALL	NULL	NULL	NULL	NULL	6	Using where; Using join buffer (BNL, incremental buffers)
+1	SIMPLE	t3	eq_ref	PRIMARY	PRIMARY	4	test.t2.c22	1	
 1	SIMPLE	t4	ALL	NULL	NULL	NULL	NULL	12	Using where; Using join buffer (BNL, incremental buffers)
+1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t4.c42	1	
 1	SIMPLE	t6	ALL	NULL	NULL	NULL	NULL	18	Using where; Using join buffer (BNL, incremental buffers)
-1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t4.c42	1	Using where
-1	SIMPLE	t3	eq_ref	PRIMARY	PRIMARY	4	test.t2.c22	1	Using where
 1	SIMPLE	t7	eq_ref	PRIMARY	PRIMARY	4	test.t6.c62	1	Using index
 SHOW STATUS LIKE 'Last_query_cost';
 Variable_name	Value
-Last_query_cost	821.936459
+Last_query_cost	1693.801607
 FLUSH STATUS;
 select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c12 = t2.c21 and t2.c22 = t3.c31 and t3.c32 = t4.c41 and t4.c42 = t5.c51 and t5.c52 = t6.c61 and t6.c62 = t7.c71;
 c11
@@ -561,14 +561,14 @@ EXPLAIN select t1.c11 from t7, t6, t5, t
 id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
 1	SIMPLE	t1	ALL	NULL	NULL	NULL	NULL	3	
 1	SIMPLE	t2	ALL	NULL	NULL	NULL	NULL	6	Using where; Using join buffer (BNL, incremental buffers)
+1	SIMPLE	t3	eq_ref	PRIMARY	PRIMARY	4	test.t2.c22	1	
 1	SIMPLE	t4	ALL	NULL	NULL	NULL	NULL	12	Using where; Using join buffer (BNL, incremental buffers)
+1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t4.c42	1	
 1	SIMPLE	t6	ALL	NULL	NULL	NULL	NULL	18	Using where; Using join buffer (BNL, incremental buffers)
-1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t4.c42	1	Using where
-1	SIMPLE	t3	eq_ref	PRIMARY	PRIMARY	4	test.t2.c22	1	Using where
 1	SIMPLE	t7	eq_ref	PRIMARY	PRIMARY	4	test.t6.c62	1	Using index
 SHOW STATUS LIKE 'Last_query_cost';
 Variable_name	Value
-Last_query_cost	821.936459
+Last_query_cost	1693.801607
 FLUSH STATUS;
 select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c12 = t2.c21 and t2.c22 = t3.c31 and t3.c32 = t4.c41 and t4.c42 = t5.c51 and t5.c52 = t6.c61 and t6.c62 = t7.c71;
 c11
@@ -583,15 +583,15 @@ Total_handler_reads
 EXPLAIN select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71;
 id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
 1	SIMPLE	t1	ALL	PRIMARY	NULL	NULL	NULL	3	Using where
+1	SIMPLE	t3	eq_ref	PRIMARY	PRIMARY	4	test.t1.c12	1	Using index
+1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t1.c14	1	Using index
+1	SIMPLE	t7	eq_ref	PRIMARY	PRIMARY	4	test.t1.c16	1	Using index
 1	SIMPLE	t2	ALL	NULL	NULL	NULL	NULL	6	Using where; Using join buffer (BNL, incremental buffers)
 1	SIMPLE	t4	ALL	NULL	NULL	NULL	NULL	12	Using where; Using join buffer (BNL, incremental buffers)
 1	SIMPLE	t6	ALL	NULL	NULL	NULL	NULL	18	Using where; Using join buffer (BNL, incremental buffers)
-1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t1.c14	1	Using index
-1	SIMPLE	t3	eq_ref	PRIMARY	PRIMARY	4	test.t1.c12	1	Using index
-1	SIMPLE	t7	eq_ref	PRIMARY	PRIMARY	4	test.t1.c16	1	Using index
 SHOW STATUS LIKE 'Last_query_cost';
 Variable_name	Value
-Last_query_cost	794.968437
+Last_query_cost	844.214136
 FLUSH STATUS;
 select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71;
 c11
@@ -606,15 +606,15 @@ Total_handler_reads
 EXPLAIN select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71;
 id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
 1	SIMPLE	t1	ALL	PRIMARY	NULL	NULL	NULL	3	Using where
+1	SIMPLE	t3	eq_ref	PRIMARY	PRIMARY	4	test.t1.c12	1	Using index
+1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t1.c14	1	Using index
+1	SIMPLE	t7	eq_ref	PRIMARY	PRIMARY	4	test.t1.c16	1	Using index
 1	SIMPLE	t2	ALL	NULL	NULL	NULL	NULL	6	Using where; Using join buffer (BNL, incremental buffers)
 1	SIMPLE	t4	ALL	NULL	NULL	NULL	NULL	12	Using where; Using join buffer (BNL, incremental buffers)
 1	SIMPLE	t6	ALL	NULL	NULL	NULL	NULL	18	Using where; Using join buffer (BNL, incremental buffers)
-1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t1.c14	1	Using index
-1	SIMPLE	t3	eq_ref	PRIMARY	PRIMARY	4	test.t1.c12	1	Using index
-1	SIMPLE	t7	eq_ref	PRIMARY	PRIMARY	4	test.t1.c16	1	Using index
 SHOW STATUS LIKE 'Last_query_cost';
 Variable_name	Value
-Last_query_cost	794.968437
+Last_query_cost	844.214136
 FLUSH STATUS;
 select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71;
 c11
@@ -629,15 +629,15 @@ Total_handler_reads
 EXPLAIN select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71 and t2.c22 = t3.c32 and t2.c23 = t4.c42 and t2.c24 = t5.c52 and t2.c25 = t6.c62 and t2.c26 = t7.c72 and t3.c33 = t4.c43 and t3.c34 = t5.c53 and t3.c35 = t6.c63 and t3.c36 = t7.c73 and t4.c42 = t5.c54 and t4.c43 = t6.c64 and t4.c44 = t7.c74 and t5.c52 = t6.c65 and t5.c53 = t7.c75 and t6.c62 = t7.c76;
 id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
 1	SIMPLE	t1	ALL	PRIMARY	NULL	NULL	NULL	3	Using where
+1	SIMPLE	t3	eq_ref	PRIMARY	PRIMARY	4	test.t1.c12	1	
+1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t1.c14	1	Using where
+1	SIMPLE	t7	eq_ref	PRIMARY	PRIMARY	4	test.t1.c16	1	Using where
 1	SIMPLE	t2	ALL	NULL	NULL	NULL	NULL	6	Using where; Using join buffer (BNL, incremental buffers)
 1	SIMPLE	t4	ALL	NULL	NULL	NULL	NULL	12	Using where; Using join buffer (BNL, incremental buffers)
 1	SIMPLE	t6	ALL	NULL	NULL	NULL	NULL	18	Using where; Using join buffer (BNL, incremental buffers)
-1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t1.c14	1	Using where
-1	SIMPLE	t3	eq_ref	PRIMARY	PRIMARY	4	test.t1.c12	1	Using where
-1	SIMPLE	t7	eq_ref	PRIMARY	PRIMARY	4	test.t1.c16	1	Using where
 SHOW STATUS LIKE 'Last_query_cost';
 Variable_name	Value
-Last_query_cost	795.085394
+Last_query_cost	844.540548
 FLUSH STATUS;
 select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71 and t2.c22 = t3.c32 and t2.c23 = t4.c42 and t2.c24 = t5.c52 and t2.c25 = t6.c62 and t2.c26 = t7.c72 and t3.c33 = t4.c43 and t3.c34 = t5.c53 and t3.c35 = t6.c63 and t3.c36 = t7.c73 and t4.c42 = t5.c54 and t4.c43 = t6.c64 and t4.c44 = t7.c74 and t5.c52 = t6.c65 and t5.c53 = t7.c75 and t6.c62 = t7.c76;
 c11
@@ -645,19 +645,19 @@ SELECT SUM(variable_value) AS Total_hand
 FROM information_schema.session_status
 WHERE variable_name LIKE 'Handler_read%';
 Total_handler_reads
-24
+6
 EXPLAIN select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71 and t2.c22 = t3.c32 and t2.c23 = t4.c42 and t2.c24 = t5.c52 and t2.c25 = t6.c62 and t2.c26 = t7.c72 and t3.c33 = t4.c43 and t3.c34 = t5.c53 and t3.c35 = t6.c63 and t3.c36 = t7.c73 and t4.c42 = t5.c54 and t4.c43 = t6.c64 and t4.c44 = t7.c74 and t5.c52 = t6.c65 and t5.c53 = t7.c75 and t6.c62 = t7.c76;
 id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
 1	SIMPLE	t1	ALL	PRIMARY	NULL	NULL	NULL	3	Using where
+1	SIMPLE	t3	eq_ref	PRIMARY	PRIMARY	4	test.t1.c12	1	
+1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t1.c14	1	Using where
+1	SIMPLE	t7	eq_ref	PRIMARY	PRIMARY	4	test.t1.c16	1	Using where
 1	SIMPLE	t2	ALL	NULL	NULL	NULL	NULL	6	Using where; Using join buffer (BNL, incremental buffers)
 1	SIMPLE	t4	ALL	NULL	NULL	NULL	NULL	12	Using where; Using join buffer (BNL, incremental buffers)
 1	SIMPLE	t6	ALL	NULL	NULL	NULL	NULL	18	Using where; Using join buffer (BNL, incremental buffers)
-1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t1.c14	1	Using where
-1	SIMPLE	t3	eq_ref	PRIMARY	PRIMARY	4	test.t1.c12	1	Using where
-1	SIMPLE	t7	eq_ref	PRIMARY	PRIMARY	4	test.t1.c16	1	Using where
 SHOW STATUS LIKE 'Last_query_cost';
 Variable_name	Value
-Last_query_cost	795.085394
+Last_query_cost	844.540548
 FLUSH STATUS;
 select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71 and t2.c22 = t3.c32 and t2.c23 = t4.c42 and t2.c24 = t5.c52 and t2.c25 = t6.c62 and t2.c26 = t7.c72 and t3.c33 = t4.c43 and t3.c34 = t5.c53 and t3.c35 = t6.c63 and t3.c36 = t7.c73 and t4.c42 = t5.c54 and t4.c43 = t6.c64 and t4.c44 = t7.c74 and t5.c52 = t6.c65 and t5.c53 = t7.c75 and t6.c62 = t7.c76;
 c11
@@ -665,7 +665,7 @@ SELECT SUM(variable_value) AS Total_hand
 FROM information_schema.session_status
 WHERE variable_name LIKE 'Handler_read%';
 Total_handler_reads
-24
+6
 set optimizer_search_depth=1;
 select @@optimizer_search_depth;
 @@optimizer_search_depth
@@ -681,7 +681,7 @@ id	select_type	table	type	possible_keys	
 1	SIMPLE	t7	eq_ref	PRIMARY	PRIMARY	4	test.t6.c62	1	Using index
 SHOW STATUS LIKE 'Last_query_cost';
 Variable_name	Value
-Last_query_cost	822.001607
+Last_query_cost	1693.801607
 FLUSH STATUS;
 select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c12 = t2.c21 and t2.c22 = t3.c31 and t3.c32 = t4.c41 and t4.c42 = t5.c51 and t5.c52 = t6.c61 and t6.c62 = t7.c71;
 c11
@@ -704,7 +704,7 @@ id	select_type	table	type	possible_keys	
 1	SIMPLE	t7	eq_ref	PRIMARY	PRIMARY	4	test.t6.c62	1	Using index
 SHOW STATUS LIKE 'Last_query_cost';
 Variable_name	Value
-Last_query_cost	822.001607
+Last_query_cost	1693.801607
 FLUSH STATUS;
 select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c12 = t2.c21 and t2.c22 = t3.c31 and t3.c32 = t4.c41 and t4.c42 = t5.c51 and t5.c52 = t6.c61 and t6.c62 = t7.c71;
 c11
@@ -727,7 +727,7 @@ id	select_type	table	type	possible_keys	
 1	SIMPLE	t6	ALL	NULL	NULL	NULL	NULL	18	Using where; Using join buffer (BNL, incremental buffers)
 SHOW STATUS LIKE 'Last_query_cost';
 Variable_name	Value
-Last_query_cost	795.014136
+Last_query_cost	844.214136
 FLUSH STATUS;
 select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71;
 c11
@@ -750,7 +750,7 @@ id	select_type	table	type	possible_keys	
 1	SIMPLE	t6	ALL	NULL	NULL	NULL	NULL	18	Using where; Using join buffer (BNL, incremental buffers)
 SHOW STATUS LIKE 'Last_query_cost';
 Variable_name	Value
-Last_query_cost	795.014136
+Last_query_cost	844.214136
 FLUSH STATUS;
 select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71;
 c11
@@ -773,7 +773,7 @@ id	select_type	table	type	possible_keys	
 1	SIMPLE	t6	ALL	NULL	NULL	NULL	NULL	18	Using where; Using join buffer (BNL, incremental buffers)
 SHOW STATUS LIKE 'Last_query_cost';
 Variable_name	Value
-Last_query_cost	795.340548
+Last_query_cost	844.540548
 FLUSH STATUS;
 select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71 and t2.c22 = t3.c32 and t2.c23 = t4.c42 and t2.c24 = t5.c52 and t2.c25 = t6.c62 and t2.c26 = t7.c72 and t3.c33 = t4.c43 and t3.c34 = t5.c53 and t3.c35 = t6.c63 and t3.c36 = t7.c73 and t4.c42 = t5.c54 and t4.c43 = t6.c64 and t4.c44 = t7.c74 and t5.c52 = t6.c65 and t5.c53 = t7.c75 and t6.c62 = t7.c76;
 c11
@@ -793,7 +793,7 @@ id	select_type	table	type	possible_keys	
 1	SIMPLE	t6	ALL	NULL	NULL	NULL	NULL	18	Using where; Using join buffer (BNL, incremental buffers)
 SHOW STATUS LIKE 'Last_query_cost';
 Variable_name	Value
-Last_query_cost	795.340548
+Last_query_cost	844.540548
 FLUSH STATUS;
 select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71 and t2.c22 = t3.c32 and t2.c23 = t4.c42 and t2.c24 = t5.c52 and t2.c25 = t6.c62 and t2.c26 = t7.c72 and t3.c33 = t4.c43 and t3.c34 = t5.c53 and t3.c35 = t6.c63 and t3.c36 = t7.c73 and t4.c42 = t5.c54 and t4.c43 = t6.c64 and t4.c44 = t7.c74 and t5.c52 = t6.c65 and t5.c53 = t7.c75 and t6.c62 = t7.c76;
 c11
@@ -810,14 +810,14 @@ EXPLAIN select t1.c11 from t1, t2, t3, t
 id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
 1	SIMPLE	t1	ALL	NULL	NULL	NULL	NULL	3	
 1	SIMPLE	t2	ALL	NULL	NULL	NULL	NULL	6	Using where; Using join buffer (BNL, incremental buffers)
+1	SIMPLE	t3	eq_ref	PRIMARY	PRIMARY	4	test.t2.c22	1	
 1	SIMPLE	t4	ALL	NULL	NULL	NULL	NULL	12	Using where; Using join buffer (BNL, incremental buffers)
+1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t4.c42	1	
 1	SIMPLE	t6	ALL	NULL	NULL	NULL	NULL	18	Using where; Using join buffer (BNL, incremental buffers)
-1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t4.c42	1	Using where
-1	SIMPLE	t3	eq_ref	PRIMARY	PRIMARY	4	test.t2.c22	1	Using where
 1	SIMPLE	t7	eq_ref	PRIMARY	PRIMARY	4	test.t6.c62	1	Using index
 SHOW STATUS LIKE 'Last_query_cost';
 Variable_name	Value
-Last_query_cost	821.936459
+Last_query_cost	1693.801607
 FLUSH STATUS;
 select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c12 = t2.c21 and t2.c22 = t3.c31 and t3.c32 = t4.c41 and t4.c42 = t5.c51 and t5.c52 = t6.c61 and t6.c62 = t7.c71;
 c11
@@ -833,14 +833,14 @@ EXPLAIN select t1.c11 from t7, t6, t5, t
 id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
 1	SIMPLE	t1	ALL	NULL	NULL	NULL	NULL	3	
 1	SIMPLE	t2	ALL	NULL	NULL	NULL	NULL	6	Using where; Using join buffer (BNL, incremental buffers)
+1	SIMPLE	t3	eq_ref	PRIMARY	PRIMARY	4	test.t2.c22	1	
 1	SIMPLE	t4	ALL	NULL	NULL	NULL	NULL	12	Using where; Using join buffer (BNL, incremental buffers)
+1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t4.c42	1	
 1	SIMPLE	t6	ALL	NULL	NULL	NULL	NULL	18	Using where; Using join buffer (BNL, incremental buffers)
-1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t4.c42	1	Using where
-1	SIMPLE	t3	eq_ref	PRIMARY	PRIMARY	4	test.t2.c22	1	Using where
 1	SIMPLE	t7	eq_ref	PRIMARY	PRIMARY	4	test.t6.c62	1	Using index
 SHOW STATUS LIKE 'Last_query_cost';
 Variable_name	Value
-Last_query_cost	821.936459
+Last_query_cost	1693.801607
 FLUSH STATUS;
 select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c12 = t2.c21 and t2.c22 = t3.c31 and t3.c32 = t4.c41 and t4.c42 = t5.c51 and t5.c52 = t6.c61 and t6.c62 = t7.c71;
 c11
@@ -855,15 +855,15 @@ Total_handler_reads
 EXPLAIN select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71;
 id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
 1	SIMPLE	t1	ALL	PRIMARY	NULL	NULL	NULL	3	Using where
+1	SIMPLE	t3	eq_ref	PRIMARY	PRIMARY	4	test.t1.c12	1	Using index
+1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t1.c14	1	Using index
+1	SIMPLE	t7	eq_ref	PRIMARY	PRIMARY	4	test.t1.c16	1	Using index
 1	SIMPLE	t2	ALL	NULL	NULL	NULL	NULL	6	Using where; Using join buffer (BNL, incremental buffers)
 1	SIMPLE	t4	ALL	NULL	NULL	NULL	NULL	12	Using where; Using join buffer (BNL, incremental buffers)
 1	SIMPLE	t6	ALL	NULL	NULL	NULL	NULL	18	Using where; Using join buffer (BNL, incremental buffers)
-1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t1.c14	1	Using index
-1	SIMPLE	t3	eq_ref	PRIMARY	PRIMARY	4	test.t1.c12	1	Using index
-1	SIMPLE	t7	eq_ref	PRIMARY	PRIMARY	4	test.t1.c16	1	Using index
 SHOW STATUS LIKE 'Last_query_cost';
 Variable_name	Value
-Last_query_cost	794.968437
+Last_query_cost	844.214136
 FLUSH STATUS;
 select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71;
 c11
@@ -878,15 +878,15 @@ Total_handler_reads
 EXPLAIN select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71;
 id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
 1	SIMPLE	t1	ALL	PRIMARY	NULL	NULL	NULL	3	Using where
+1	SIMPLE	t3	eq_ref	PRIMARY	PRIMARY	4	test.t1.c12	1	Using index
+1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t1.c14	1	Using index
+1	SIMPLE	t7	eq_ref	PRIMARY	PRIMARY	4	test.t1.c16	1	Using index
 1	SIMPLE	t2	ALL	NULL	NULL	NULL	NULL	6	Using where; Using join buffer (BNL, incremental buffers)
 1	SIMPLE	t4	ALL	NULL	NULL	NULL	NULL	12	Using where; Using join buffer (BNL, incremental buffers)
 1	SIMPLE	t6	ALL	NULL	NULL	NULL	NULL	18	Using where; Using join buffer (BNL, incremental buffers)
-1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t1.c14	1	Using index
-1	SIMPLE	t3	eq_ref	PRIMARY	PRIMARY	4	test.t1.c12	1	Using index
-1	SIMPLE	t7	eq_ref	PRIMARY	PRIMARY	4	test.t1.c16	1	Using index
 SHOW STATUS LIKE 'Last_query_cost';
 Variable_name	Value
-Last_query_cost	794.968437
+Last_query_cost	844.214136
 FLUSH STATUS;
 select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71;
 c11
@@ -901,15 +901,15 @@ Total_handler_reads
 EXPLAIN select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71 and t2.c22 = t3.c32 and t2.c23 = t4.c42 and t2.c24 = t5.c52 and t2.c25 = t6.c62 and t2.c26 = t7.c72 and t3.c33 = t4.c43 and t3.c34 = t5.c53 and t3.c35 = t6.c63 and t3.c36 = t7.c73 and t4.c42 = t5.c54 and t4.c43 = t6.c64 and t4.c44 = t7.c74 and t5.c52 = t6.c65 and t5.c53 = t7.c75 and t6.c62 = t7.c76;
 id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
 1	SIMPLE	t1	ALL	PRIMARY	NULL	NULL	NULL	3	Using where
+1	SIMPLE	t3	eq_ref	PRIMARY	PRIMARY	4	test.t1.c12	1	
+1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t1.c14	1	Using where
+1	SIMPLE	t7	eq_ref	PRIMARY	PRIMARY	4	test.t1.c16	1	Using where
 1	SIMPLE	t2	ALL	NULL	NULL	NULL	NULL	6	Using where; Using join buffer (BNL, incremental buffers)
 1	SIMPLE	t4	ALL	NULL	NULL	NULL	NULL	12	Using where; Using join buffer (BNL, incremental buffers)
 1	SIMPLE	t6	ALL	NULL	NULL	NULL	NULL	18	Using where; Using join buffer (BNL, incremental buffers)
-1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t1.c14	1	Using where
-1	SIMPLE	t3	eq_ref	PRIMARY	PRIMARY	4	test.t1.c12	1	Using where
-1	SIMPLE	t7	eq_ref	PRIMARY	PRIMARY	4	test.t1.c16	1	Using where
 SHOW STATUS LIKE 'Last_query_cost';
 Variable_name	Value
-Last_query_cost	795.085394
+Last_query_cost	844.540548
 FLUSH STATUS;
 select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71 and t2.c22 = t3.c32 and t2.c23 = t4.c42 and t2.c24 = t5.c52 and t2.c25 = t6.c62 and t2.c26 = t7.c72 and t3.c33 = t4.c43 and t3.c34 = t5.c53 and t3.c35 = t6.c63 and t3.c36 = t7.c73 and t4.c42 = t5.c54 and t4.c43 = t6.c64 and t4.c44 = t7.c74 and t5.c52 = t6.c65 and t5.c53 = t7.c75 and t6.c62 = t7.c76;
 c11
@@ -917,19 +917,19 @@ SELECT SUM(variable_value) AS Total_hand
 FROM information_schema.session_status
 WHERE variable_name LIKE 'Handler_read%';
 Total_handler_reads
-24
+6
 EXPLAIN select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71 and t2.c22 = t3.c32 and t2.c23 = t4.c42 and t2.c24 = t5.c52 and t2.c25 = t6.c62 and t2.c26 = t7.c72 and t3.c33 = t4.c43 and t3.c34 = t5.c53 and t3.c35 = t6.c63 and t3.c36 = t7.c73 and t4.c42 = t5.c54 and t4.c43 = t6.c64 and t4.c44 = t7.c74 and t5.c52 = t6.c65 and t5.c53 = t7.c75 and t6.c62 = t7.c76;
 id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
 1	SIMPLE	t1	ALL	PRIMARY	NULL	NULL	NULL	3	Using where
+1	SIMPLE	t3	eq_ref	PRIMARY	PRIMARY	4	test.t1.c12	1	
+1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t1.c14	1	Using where
+1	SIMPLE	t7	eq_ref	PRIMARY	PRIMARY	4	test.t1.c16	1	Using where
 1	SIMPLE	t2	ALL	NULL	NULL	NULL	NULL	6	Using where; Using join buffer (BNL, incremental buffers)
 1	SIMPLE	t4	ALL	NULL	NULL	NULL	NULL	12	Using where; Using join buffer (BNL, incremental buffers)
 1	SIMPLE	t6	ALL	NULL	NULL	NULL	NULL	18	Using where; Using join buffer (BNL, incremental buffers)
-1	SIMPLE	t5	eq_ref	PRIMARY	PRIMARY	4	test.t1.c14	1	Using where
-1	SIMPLE	t3	eq_ref	PRIMARY	PRIMARY	4	test.t1.c12	1	Using where
-1	SIMPLE	t7	eq_ref	PRIMARY	PRIMARY	4	test.t1.c16	1	Using where
 SHOW STATUS LIKE 'Last_query_cost';
 Variable_name	Value
-Last_query_cost	795.085394
+Last_query_cost	844.540548
 FLUSH STATUS;
 select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71 and t2.c22 = t3.c32 and t2.c23 = t4.c42 and t2.c24 = t5.c52 and t2.c25 = t6.c62 and t2.c26 = t7.c72 and t3.c33 = t4.c43 and t3.c34 = t5.c53 and t3.c35 = t6.c63 and t3.c36 = t7.c73 and t4.c42 = t5.c54 and t4.c43 = t6.c64 and t4.c44 = t7.c74 and t5.c52 = t6.c65 and t5.c53 = t7.c75 and t6.c62 = t7.c76;
 c11
@@ -937,7 +937,7 @@ SELECT SUM(variable_value) AS Total_hand
 FROM information_schema.session_status
 WHERE variable_name LIKE 'Handler_read%';
 Total_handler_reads
-24
+6
 drop table t1,t2,t3,t4,t5,t6,t7;
 CREATE TABLE t1 (a int, b int, d int, i int);
 INSERT INTO t1 VALUES (1,1,1,1);
@@ -1016,3 +1016,1746 @@ t4 LEFT JOIN (t5 JOIN t5_1 ON t5.l = t5_
 SET optimizer_search_depth = DEFAULT;
 DROP TABLE t1,t2,t2_1,t3,t3_1,t4,t4_1,t5,t5_1;
 End of 5.0 tests
+#
+# Bug #59326: Greedy optimizer produce stupid query execution plans.
+#
+CREATE TABLE t10(
+K INT NOT NULL AUTO_INCREMENT,
+I INT,
+PRIMARY KEY(K)
+);
+INSERT INTO t10(I) VALUES (1),(2),(3),(4),(5),(6),(7),(8),(9),(0);
+CREATE TABLE t100 LIKE t10;
+INSERT INTO t100(I)
+SELECT X.I FROM t10 AS X,t10 AS Y;
+CREATE TABLE t10000 LIKE t10;
+INSERT INTO t10000(I)
+SELECT X.I FROM t100 AS X, t100 AS Y;
+EXPLAIN SELECT * FROM t10,t100,t10000;
+id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
+1	SIMPLE	t10	ALL	NULL	NULL	NULL	NULL	10	
+1	SIMPLE	t100	ALL	NULL	NULL	NULL	NULL	100	Using join buffer (BNL, incremental buffers)
+1	SIMPLE	t10000	ALL	NULL	NULL	NULL	NULL	10000	Using join buffer (BNL, incremental buffers)
+EXPLAIN SELECT * FROM t10,t10000,t100;
+id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
+1	SIMPLE	t10	ALL	NULL	NULL	NULL	NULL	10	
+1	SIMPLE	t100	ALL	NULL	NULL	NULL	NULL	100	Using join buffer (BNL, incremental buffers)
+1	SIMPLE	t10000	ALL	NULL	NULL	NULL	NULL	10000	Using join buffer (BNL, incremental buffers)
+EXPLAIN SELECT * FROM t100,t10,t10000;
+id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
+1	SIMPLE	t10	ALL	NULL	NULL	NULL	NULL	10	
+1	SIMPLE	t100	ALL	NULL	NULL	NULL	NULL	100	Using join buffer (BNL, incremental buffers)
+1	SIMPLE	t10000	ALL	NULL	NULL	NULL	NULL	10000	Using join buffer (BNL, incremental buffers)
+EXPLAIN SELECT * FROM t100,t10000,t10;
+id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
+1	SIMPLE	t10	ALL	NULL	NULL	NULL	NULL	10	
+1	SIMPLE	t100	ALL	NULL	NULL	NULL	NULL	100	Using join buffer (BNL, incremental buffers)
+1	SIMPLE	t10000	ALL	NULL	NULL	NULL	NULL	10000	Using join buffer (BNL, incremental buffers)
+EXPLAIN SELECT * FROM t10000,t10,t100;
+id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
+1	SIMPLE	t10	ALL	NULL	NULL	NULL	NULL	10	
+1	SIMPLE	t100	ALL	NULL	NULL	NULL	NULL	100	Using join buffer (BNL, incremental buffers)
+1	SIMPLE	t10000	ALL	NULL	NULL	NULL	NULL	10000	Using join buffer (BNL, incremental buffers)
+EXPLAIN SELECT * FROM t10000,t100,t10;
+id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
+1	SIMPLE	t10	ALL	NULL	NULL	NULL	NULL	10	
+1	SIMPLE	t100	ALL	NULL	NULL	NULL	NULL	100	Using join buffer (BNL, incremental buffers)
+1	SIMPLE	t10000	ALL	NULL	NULL	NULL	NULL	10000	Using join buffer (BNL, incremental buffers)
+flush status;
+EXPLAIN SELECT STRAIGHT_JOIN COUNT(*) FROM t10,t100,t10000
+WHERE t100.K=t10.I
+AND t10000.K=t10.I;
+id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
+1	SIMPLE	t10	ALL	NULL	NULL	NULL	NULL	10	Using where
+1	SIMPLE	t100	eq_ref	PRIMARY	PRIMARY	4	test.t10.I	1	Using index
+1	SIMPLE	t10000	eq_ref	PRIMARY	PRIMARY	4	test.t100.K	1	Using where; Using index
+SELECT STRAIGHT_JOIN COUNT(*) FROM t10,t100,t10000
+WHERE t100.K=t10.I
+AND t10000.K=t10.I;
+COUNT(*)
+9
+flush status;
+EXPLAIN SELECT STRAIGHT_JOIN COUNT(*) FROM t10,t10000,t100
+WHERE t100.K=t10.I
+AND t10000.K=t10.I;
+id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
+1	SIMPLE	t10	ALL	NULL	NULL	NULL	NULL	10	Using where
+1	SIMPLE	t10000	eq_ref	PRIMARY	PRIMARY	4	test.t10.I	1	Using index
+1	SIMPLE	t100	eq_ref	PRIMARY	PRIMARY	4	test.t10.I	1	Using index
+SELECT STRAIGHT_JOIN COUNT(*) FROM t10,t10000,t100
+WHERE t100.K=t10.I
+AND t10000.K=t10.I;
+COUNT(*)
+9
+flush status;
+EXPLAIN SELECT COUNT(*) FROM t10,t100,t10000
+WHERE t100.K=t10.I
+AND t10000.K=t10.I;
+id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
+1	SIMPLE	t10	ALL	NULL	NULL	NULL	NULL	10	Using where
+1	SIMPLE	t100	eq_ref	PRIMARY	PRIMARY	4	test.t10.I	1	Using index
+1	SIMPLE	t10000	eq_ref	PRIMARY	PRIMARY	4	test.t100.K	1	Using where; Using index
+SELECT COUNT(*) FROM t10,t100,t10000
+WHERE t100.K=t10.I
+AND t10000.K=t10.I;
+COUNT(*)
+9
+flush status;
+EXPLAIN SELECT COUNT(*) FROM t10,t10000,t100
+WHERE t100.K=t10.I
+AND t10000.K=t10.I;
+id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
+1	SIMPLE	t10	ALL	NULL	NULL	NULL	NULL	10	Using where
+1	SIMPLE	t100	eq_ref	PRIMARY	PRIMARY	4	test.t10.I	1	Using index
+1	SIMPLE	t10000	eq_ref	PRIMARY	PRIMARY	4	test.t100.K	1	Using where; Using index
+SELECT COUNT(*) FROM t10,t10000,t100
+WHERE t100.K=t10.I
+AND t10000.K=t10.I;
+COUNT(*)
+9
+flush status;
+EXPLAIN SELECT COUNT(*) FROM t10,t100,t10000
+WHERE t100.K=t10.I
+AND t10000.K=t10.K;
+id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
+1	SIMPLE	t10	ALL	PRIMARY	NULL	NULL	NULL	10	Using where
+1	SIMPLE	t100	eq_ref	PRIMARY	PRIMARY	4	test.t10.I	1	Using index
+1	SIMPLE	t10000	eq_ref	PRIMARY	PRIMARY	4	test.t10.K	1	Using index
+SELECT COUNT(*) FROM t10,t100,t10000
+WHERE t100.K=t10.I
+AND t10000.K=t10.K;
+COUNT(*)
+9
+flush status;
+EXPLAIN SELECT COUNT(*) FROM t10,t10000,t100
+WHERE t100.K=t10.I
+AND t10000.K=t10.K;
+id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
+1	SIMPLE	t10	ALL	PRIMARY	NULL	NULL	NULL	10	Using where
+1	SIMPLE	t100	eq_ref	PRIMARY	PRIMARY	4	test.t10.I	1	Using index
+1	SIMPLE	t10000	eq_ref	PRIMARY	PRIMARY	4	test.t10.K	1	Using index
+SELECT COUNT(*) FROM t10,t10000,t100
+WHERE t100.K=t10.I
+AND t10000.K=t10.K;
+COUNT(*)
+9
+flush status;
+EXPLAIN SELECT COUNT(*) FROM t100,t10,t10000
+WHERE t100.K=t10.I
+AND t10000.K=t10.K;
+id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
+1	SIMPLE	t10	ALL	PRIMARY	NULL	NULL	NULL	10	Using where
+1	SIMPLE	t100	eq_ref	PRIMARY	PRIMARY	4	test.t10.I	1	Using index
+1	SIMPLE	t10000	eq_ref	PRIMARY	PRIMARY	4	test.t10.K	1	Using index
+SELECT COUNT(*) FROM t100,t10,t10000
+WHERE t100.K=t10.I
+AND t10000.K=t10.K;
+COUNT(*)
+9
+flush status;
+EXPLAIN SELECT COUNT(*) FROM t100,t10000,t10
+WHERE t100.K=t10.I
+AND t10000.K=t10.K;
+id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
+1	SIMPLE	t10	ALL	PRIMARY	NULL	NULL	NULL	10	Using where
+1	SIMPLE	t100	eq_ref	PRIMARY	PRIMARY	4	test.t10.I	1	Using index
+1	SIMPLE	t10000	eq_ref	PRIMARY	PRIMARY	4	test.t10.K	1	Using index
+SELECT COUNT(*) FROM t100,t10000,t10
+WHERE t100.K=t10.I
+AND t10000.K=t10.K;
+COUNT(*)
+9
+flush status;
+EXPLAIN SELECT COUNT(*) FROM t10000,t10,t100
+WHERE t100.K=t10.I
+AND t10000.K=t10.K;
+id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
+1	SIMPLE	t10	ALL	PRIMARY	NULL	NULL	NULL	10	Using where
+1	SIMPLE	t100	eq_ref	PRIMARY	PRIMARY	4	test.t10.I	1	Using index
+1	SIMPLE	t10000	eq_ref	PRIMARY	PRIMARY	4	test.t10.K	1	Using index
+SELECT COUNT(*) FROM t10000,t10,t100
+WHERE t100.K=t10.I
+AND t10000.K=t10.K;
+COUNT(*)
+9
+flush status;
+EXPLAIN SELECT COUNT(*) FROM t10000,t100,t10
+WHERE t100.K=t10.I
+AND t10000.K=t10.K;
+id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
+1	SIMPLE	t10	ALL	PRIMARY	NULL	NULL	NULL	10	Using where
+1	SIMPLE	t100	eq_ref	PRIMARY	PRIMARY	4	test.t10.I	1	Using index
+1	SIMPLE	t10000	eq_ref	PRIMARY	PRIMARY	4	test.t10.K	1	Using index
+SELECT COUNT(*) FROM t10000,t100,t10
+WHERE t100.K=t10.I
+AND t10000.K=t10.K;
+COUNT(*)
+9
+flush status;
+EXPLAIN SELECT STRAIGHT_JOIN COUNT(*) FROM t10,t100,t10000
+WHERE t100.K=t10.I
+AND t10000.I=t10.I;
+id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
+1	SIMPLE	t10	ALL	NULL	NULL	NULL	NULL	10	Using where
+1	SIMPLE	t100	eq_ref	PRIMARY	PRIMARY	4	test.t10.I	1	Using index
+1	SIMPLE	t10000	ALL	NULL	NULL	NULL	NULL	10000	Using where; Using join buffer (BNL, incremental buffers)
+SELECT STRAIGHT_JOIN COUNT(*) FROM t10,t100,t10000
+WHERE t100.K=t10.I
+AND t10000.I=t10.I;
+COUNT(*)
+9000
+flush status;
+EXPLAIN SELECT COUNT(*) FROM t10,t100,t10000
+WHERE t100.K=t10.I
+AND t10000.I=t10.I;
+id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
+1	SIMPLE	t10	ALL	NULL	NULL	NULL	NULL	10	Using where
+1	SIMPLE	t100	eq_ref	PRIMARY	PRIMARY	4	test.t10.I	1	Using index
+1	SIMPLE	t10000	ALL	NULL	NULL	NULL	NULL	10000	Using where; Using join buffer (BNL, incremental buffers)
+SELECT COUNT(*) FROM t10,t100,t10000
+WHERE t100.K=t10.I
+AND t10000.I=t10.I;
+COUNT(*)
+9000
+flush status;
+EXPLAIN SELECT COUNT(*) FROM t10,t10000,t100
+WHERE t100.K=t10.I
+AND t10000.I=t10.I;
+id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
+1	SIMPLE	t10	ALL	NULL	NULL	NULL	NULL	10	Using where
+1	SIMPLE	t100	eq_ref	PRIMARY	PRIMARY	4	test.t10.I	1	Using index
+1	SIMPLE	t10000	ALL	NULL	NULL	NULL	NULL	10000	Using where; Using join buffer (BNL, incremental buffers)
+SELECT COUNT(*) FROM t10,t10000,t100
+WHERE t100.K=t10.I
+AND t10000.I=t10.I;
+COUNT(*)
+9000
+flush status;
+EXPLAIN SELECT STRAIGHT_JOIN COUNT(*) FROM t10,t10000,t100
+WHERE t100.I=t10.I
+AND t10000.K=t10.I;
+id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
+1	SIMPLE	t10	ALL	NULL	NULL	NULL	NULL	10	Using where
+1	SIMPLE	t10000	eq_ref	PRIMARY	PRIMARY	4	test.t10.I	1	Using index
+1	SIMPLE	t100	ALL	NULL	NULL	NULL	NULL	100	Using where; Using join buffer (BNL, incremental buffers)
+SELECT STRAIGHT_JOIN COUNT(*) FROM t10,t10000,t100
+WHERE t100.I=t10.I
+AND t10000.K=t10.I;
+COUNT(*)
+90
+flush status;
+EXPLAIN SELECT COUNT(*) FROM t10,t100,t10000
+WHERE t100.I=t10.I
+AND t10000.K=t10.I;
+id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
+1	SIMPLE	t10	ALL	NULL	NULL	NULL	NULL	10	Using where
+1	SIMPLE	t10000	eq_ref	PRIMARY	PRIMARY	4	test.t10.I	1	Using index
+1	SIMPLE	t100	ALL	NULL	NULL	NULL	NULL	100	Using where; Using join buffer (BNL, incremental buffers)
+SELECT COUNT(*) FROM t10,t100,t10000
+WHERE t100.I=t10.I
+AND t10000.K=t10.I;
+COUNT(*)
+90
+flush status;
+EXPLAIN SELECT COUNT(*) FROM t10,t10000,t100
+WHERE t100.I=t10.I
+AND t10000.K=t10.I;
+id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
+1	SIMPLE	t10	ALL	NULL	NULL	NULL	NULL	10	Using where
+1	SIMPLE	t10000	eq_ref	PRIMARY	PRIMARY	4	test.t10.I	1	Using index
+1	SIMPLE	t100	ALL	NULL	NULL	NULL	NULL	100	Using where; Using join buffer (BNL, incremental buffers)
+SELECT COUNT(*) FROM t10,t10000,t100
+WHERE t100.I=t10.I
+AND t10000.K=t10.I;
+COUNT(*)
+90
+flush status;
+EXPLAIN SELECT STRAIGHT_JOIN COUNT(*) FROM t10,t10000,t100
+WHERE t100.I=t10.I
+AND t10000.K=t100.I;
+id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
+1	SIMPLE	t10	ALL	NULL	NULL	NULL	NULL	10	Using where
+1	SIMPLE	t10000	eq_ref	PRIMARY	PRIMARY	4	test.t10.I	1	Using index
+1	SIMPLE	t100	ALL	NULL	NULL	NULL	NULL	100	Using where; Using join buffer (BNL, incremental buffers)
+SELECT STRAIGHT_JOIN COUNT(*) FROM t10,t10000,t100
+WHERE t100.I=t10.I
+AND t10000.K=t100.I;
+COUNT(*)
+90
+flush status;
+EXPLAIN SELECT COUNT(*) FROM t10,t100,t10000
+WHERE t100.I=t10.I
+AND t10000.K=t100.I;
+id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
+1	SIMPLE	t10	ALL	NULL	NULL	NULL	NULL	10	Using where
+1	SIMPLE	t10000	eq_ref	PRIMARY	PRIMARY	4	test.t10.I	1	Using index
+1	SIMPLE	t100	ALL	NULL	NULL	NULL	NULL	100	Using where; Using join buffer (BNL, incremental buffers)
+SELECT COUNT(*) FROM t10,t100,t10000
+WHERE t100.I=t10.I
+AND t10000.K=t100.I;
+COUNT(*)
+90
+flush status;
+EXPLAIN SELECT COUNT(*) FROM t10,t10000,t100
+WHERE t100.I=t10.I
+AND t10000.K=t100.I;
+id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
+1	SIMPLE	t10	ALL	NULL	NULL	NULL	NULL	10	Using where
+1	SIMPLE	t10000	eq_ref	PRIMARY	PRIMARY	4	test.t10.I	1	Using index
+1	SIMPLE	t100	ALL	NULL	NULL	NULL	NULL	100	Using where; Using join buffer (BNL, incremental buffers)
+SELECT COUNT(*) FROM t10,t10000,t100
+WHERE t100.I=t10.I
+AND t10000.K=t100.I;
+COUNT(*)
+90
+flush status;
+EXPLAIN SELECT STRAIGHT_JOIN COUNT(*) FROM t10,t10000 X,t10000 Y
+WHERE X.K=t10.I;
+id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
+1	SIMPLE	t10	ALL	NULL	NULL	NULL	NULL	10	Using where
+1	SIMPLE	X	eq_ref	PRIMARY	PRIMARY	4	test.t10.I	1	Using index
+1	SIMPLE	Y	index	NULL	PRIMARY	4	NULL	10000	Using index; Using join buffer (BNL, incremental buffers)
+SELECT STRAIGHT_JOIN COUNT(*) FROM t10,t10000 X,t10000 Y
+WHERE X.K=t10.I;
+COUNT(*)
+90000
+flush status;
+EXPLAIN SELECT COUNT(*) FROM t10,t10000 X,t10000 Y
+WHERE X.K=t10.I;
+id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
+1	SIMPLE	t10	ALL	NULL	NULL	NULL	NULL	10	Using where
+1	SIMPLE	X	eq_ref	PRIMARY	PRIMARY	4	test.t10.I	1	Using index
+1	SIMPLE	Y	index	NULL	PRIMARY	4	NULL	10000	Using index; Using join buffer (BNL, incremental buffers)
+SELECT COUNT(*) FROM t10,t10000 X,t10000 Y
+WHERE X.K=t10.I;
+COUNT(*)
+90000
+flush status;
+EXPLAIN SELECT COUNT(*) FROM t10,t10000 Y,t10000 X
+WHERE X.K=t10.I;
+id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
+1	SIMPLE	t10	ALL	NULL	NULL	NULL	NULL	10	Using where
+1	SIMPLE	X	eq_ref	PRIMARY	PRIMARY	4	test.t10.I	1	Using index
+1	SIMPLE	Y	index	NULL	PRIMARY	4	NULL	10000	Using index; Using join buffer (BNL, incremental buffers)
+SELECT COUNT(*) FROM t10,t10000 Y,t10000 X
+WHERE X.K=t10.I;
+COUNT(*)
+90000
+flush status;
+EXPLAIN SELECT STRAIGHT_JOIN COUNT(*) FROM t10,t10000 X,t10000 Y
+WHERE X.K=t10.I
+AND Y.I=t10.I;
+id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
+1	SIMPLE	t10	ALL	NULL	NULL	NULL	NULL	10	Using where
+1	SIMPLE	X	eq_ref	PRIMARY	PRIMARY	4	test.t10.I	1	Using index
+1	SIMPLE	Y	ALL	NULL	NULL	NULL	NULL	10000	Using where; Using join buffer (BNL, incremental buffers)
+SELECT STRAIGHT_JOIN COUNT(*) FROM t10,t10000 X,t10000 Y
+WHERE X.K=t10.I
+AND Y.I=t10.I;
+COUNT(*)
+9000
+flush status;
+EXPLAIN SELECT COUNT(*) FROM t10,t10000 X,t10000 Y
+WHERE X.K=t10.I
+AND Y.I=t10.I;
+id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
+1	SIMPLE	t10	ALL	NULL	NULL	NULL	NULL	10	Using where
+1	SIMPLE	X	eq_ref	PRIMARY	PRIMARY	4	test.t10.I	1	Using index
+1	SIMPLE	Y	ALL	NULL	NULL	NULL	NULL	10000	Using where; Using join buffer (BNL, incremental buffers)
+SELECT COUNT(*) FROM t10,t10000 X,t10000 Y
+WHERE X.K=t10.I
+AND Y.I=t10.I;
+COUNT(*)
+9000
+flush status;
+EXPLAIN SELECT COUNT(*) FROM t10,t10000 Y,t10000 X
+WHERE X.K=t10.I
+AND Y.I=t10.I;
+id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
+1	SIMPLE	t10	ALL	NULL	NULL	NULL	NULL	10	Using where
+1	SIMPLE	X	eq_ref	PRIMARY	PRIMARY	4	test.t10.I	1	Using index
+1	SIMPLE	Y	ALL	NULL	NULL	NULL	NULL	10000	Using where; Using join buffer (BNL, incremental buffers)
+SELECT COUNT(*) FROM t10,t10000 Y,t10000 X
+WHERE X.K=t10.I
+AND Y.I=t10.I;
+COUNT(*)
+9000
+flush status;
+EXPLAIN SELECT STRAIGHT_JOIN COUNT(*) FROM t10,t10000 X,t10000 Y
+WHERE X.K=t10.I
+AND Y.I=X.K;
+id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
+1	SIMPLE	t10	ALL	NULL	NULL	NULL	NULL	10	Using where
+1	SIMPLE	X	eq_ref	PRIMARY	PRIMARY	4	test.t10.I	1	Using index
+1	SIMPLE	Y	ALL	NULL	NULL	NULL	NULL	10000	Using where; Using join buffer (BNL, incremental buffers)
+SELECT STRAIGHT_JOIN COUNT(*) FROM t10,t10000 X,t10000 Y
+WHERE X.K=t10.I
+AND Y.I=X.K;
+COUNT(*)
+9000
+flush status;
+EXPLAIN SELECT COUNT(*) FROM t10,t10000 X,t10000 Y
+WHERE X.K=t10.I
+AND Y.I=X.K;
+id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
+1	SIMPLE	t10	ALL	NULL	NULL	NULL	NULL	10	Using where
+1	SIMPLE	X	eq_ref	PRIMARY	PRIMARY	4	test.t10.I	1	Using index
+1	SIMPLE	Y	ALL	NULL	NULL	NULL	NULL	10000	Using where; Using join buffer (BNL, incremental buffers)
+SELECT COUNT(*) FROM t10,t10000 X,t10000 Y
+WHERE X.K=t10.I
+AND Y.I=X.K;
+COUNT(*)
+9000
+flush status;
+EXPLAIN SELECT COUNT(*) FROM t10,t10000 Y,t10000 X
+WHERE X.K=t10.I
+AND Y.I=X.K;
+id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
+1	SIMPLE	t10	ALL	NULL	NULL	NULL	NULL	10	Using where
+1	SIMPLE	X	eq_ref	PRIMARY	PRIMARY	4	test.t10.I	1	Using index
+1	SIMPLE	Y	ALL	NULL	NULL	NULL	NULL	10000	Using where; Using join buffer (BNL, incremental buffers)
+SELECT COUNT(*) FROM t10,t10000 Y,t10000 X
+WHERE X.K=t10.I
+AND Y.I=X.K;
+COUNT(*)
+9000
+CREATE INDEX IX ON t10(I);
+CREATE INDEX IX ON t100(I);
+CREATE INDEX IX ON t10000(I);
+flush status;
+EXPLAIN SELECT STRAIGHT_JOIN COUNT(*) FROM t10,t100,t10000
+WHERE t100.K=t10.I
+AND t10000.I=t10.I;
+id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
+1	SIMPLE	t10	index	IX	IX	5	NULL	10	Using where; Using index
+1	SIMPLE	t100	eq_ref	PRIMARY	PRIMARY	4	test.t10.I	1	Using index
+1	SIMPLE	t10000	ref	IX	IX	5	test.t100.K	1000	Using where; Using index
+SELECT STRAIGHT_JOIN COUNT(*) FROM t10,t100,t10000
+WHERE t100.K=t10.I
+AND t10000.I=t10.I;
+COUNT(*)
+9000
+flush status;
+EXPLAIN SELECT COUNT(*) FROM t10,t100,t10000
+WHERE t100.K=t10.I
+AND t10000.I=t10.I;
+id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
+1	SIMPLE	t10	index	IX	IX	5	NULL	10	Using where; Using index
+1	SIMPLE	t100	eq_ref	PRIMARY	PRIMARY	4	test.t10.I	1	Using index
+1	SIMPLE	t10000	ref	IX	IX	5	test.t100.K	1000	Using where; Using index
+SELECT COUNT(*) FROM t10,t100,t10000
+WHERE t100.K=t10.I
+AND t10000.I=t10.I;
+COUNT(*)
+9000
+flush status;
+EXPLAIN SELECT COUNT(*) FROM t10,t10000,t100
+WHERE t100.K=t10.I
+AND t10000.I=t10.I;
+id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
+1	SIMPLE	t10	index	IX	IX	5	NULL	10	Using where; Using index
+1	SIMPLE	t100	eq_ref	PRIMARY	PRIMARY	4	test.t10.I	1	Using index
+1	SIMPLE	t10000	ref	IX	IX	5	test.t100.K	1000	Using where; Using index
+SELECT COUNT(*) FROM t10,t10000,t100
+WHERE t100.K=t10.I
+AND t10000.I=t10.I;
+COUNT(*)
+9000
+flush status;
+EXPLAIN SELECT STRAIGHT_JOIN COUNT(*) FROM t10,t10000 X,t10000 Y
+WHERE X.K=t10.I;
+id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
+1	SIMPLE	t10	index	IX	IX	5	NULL	10	Using where; Using index
+1	SIMPLE	X	eq_ref	PRIMARY	PRIMARY	4	test.t10.I	1	Using index
+1	SIMPLE	Y	index	NULL	PRIMARY	4	NULL	10000	Using index; Using join buffer (BNL, incremental buffers)
+SELECT STRAIGHT_JOIN COUNT(*) FROM t10,t10000 X,t10000 Y
+WHERE X.K=t10.I;
+COUNT(*)
+90000
+flush status;
+EXPLAIN SELECT COUNT(*) FROM t10,t10000 X,t10000 Y
+WHERE X.K=t10.I;
+id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
+1	SIMPLE	t10	index	IX	IX	5	NULL	10	Using where; Using index
+1	SIMPLE	X	eq_ref	PRIMARY	PRIMARY	4	test.t10.I	1	Using index
+1	SIMPLE	Y	index	NULL	PRIMARY	4	NULL	10000	Using index; Using join buffer (BNL, incremental buffers)
+SELECT COUNT(*) FROM t10,t10000 X,t10000 Y
+WHERE X.K=t10.I;
+COUNT(*)
+90000
+flush status;
+EXPLAIN SELECT COUNT(*) FROM t10,t10000 Y,t10000 X
+WHERE X.K=t10.I;
+id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
+1	SIMPLE	t10	index	IX	IX	5	NULL	10	Using where; Using index
+1	SIMPLE	X	eq_ref	PRIMARY	PRIMARY	4	test.t10.I	1	Using index
+1	SIMPLE	Y	index	NULL	PRIMARY	4	NULL	10000	Using index; Using join buffer (BNL, incremental buffers)
+SELECT COUNT(*) FROM t10,t10000 Y,t10000 X
+WHERE X.K=t10.I;
+COUNT(*)
+90000
+flush status;
+EXPLAIN SELECT STRAIGHT_JOIN COUNT(*) FROM t10,t10000 X,t10000 Y
+WHERE X.K=t10.I
+AND Y.I=t10.I;
+id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
+1	SIMPLE	t10	index	IX	IX	5	NULL	10	Using where; Using index
+1	SIMPLE	X	eq_ref	PRIMARY	PRIMARY	4	test.t10.I	1	Using index
+1	SIMPLE	Y	ref	IX	IX	5	test.X.K	1000	Using where; Using index
+SELECT STRAIGHT_JOIN COUNT(*) FROM t10,t10000 X,t10000 Y
+WHERE X.K=t10.I
+AND Y.I=t10.I;
+COUNT(*)
+9000
+flush status;
+EXPLAIN SELECT COUNT(*) FROM t10,t10000 X,t10000 Y
+WHERE X.K=t10.I
+AND Y.I=t10.I;
+id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
+1	SIMPLE	t10	index	IX	IX	5	NULL	10	Using where; Using index
+1	SIMPLE	X	eq_ref	PRIMARY	PRIMARY	4	test.t10.I	1	Using index
+1	SIMPLE	Y	ref	IX	IX	5	test.X.K	1000	Using where; Using index
+SELECT COUNT(*) FROM t10,t10000 X,t10000 Y
+WHERE X.K=t10.I
+AND Y.I=t10.I;
+COUNT(*)
+9000
+flush status;
+EXPLAIN SELECT COUNT(*) FROM t10,t10000 Y,t10000 X
+WHERE X.K=t10.I
+AND Y.I=t10.I;
+id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
+1	SIMPLE	t10	index	IX	IX	5	NULL	10	Using where; Using index
+1	SIMPLE	X	eq_ref	PRIMARY	PRIMARY	4	test.t10.I	1	Using index
+1	SIMPLE	Y	ref	IX	IX	5	test.X.K	1000	Using where; Using index
+SELECT COUNT(*) FROM t10,t10000 Y,t10000 X
+WHERE X.K=t10.I
+AND Y.I=t10.I;
+COUNT(*)
+9000
+flush status;
+EXPLAIN SELECT STRAIGHT_JOIN COUNT(*) FROM t10,t10000 X,t10000 Y
+WHERE X.K=t10.I
+AND Y.I=X.K;
+id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
+1	SIMPLE	t10	index	IX	IX	5	NULL	10	Using where; Using index
+1	SIMPLE	X	eq_ref	PRIMARY	PRIMARY	4	test.t10.I	1	Using index
+1	SIMPLE	Y	ref	IX	IX	5	test.X.K	1000	Using where; Using index
+SELECT STRAIGHT_JOIN COUNT(*) FROM t10,t10000 X,t10000 Y
+WHERE X.K=t10.I
+AND Y.I=X.K;
+COUNT(*)
+9000
+flush status;
+EXPLAIN SELECT COUNT(*) FROM t10,t10000 X,t10000 Y
+WHERE X.K=t10.I
+AND Y.I=X.K;
+id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
+1	SIMPLE	t10	index	IX	IX	5	NULL	10	Using where; Using index
+1	SIMPLE	X	eq_ref	PRIMARY	PRIMARY	4	test.t10.I	1	Using index
+1	SIMPLE	Y	ref	IX	IX	5	test.X.K	1000	Using where; Using index
+SELECT COUNT(*) FROM t10,t10000 X,t10000 Y
+WHERE X.K=t10.I
+AND Y.I=X.K;
+COUNT(*)
+9000
+flush status;
+EXPLAIN SELECT COUNT(*) FROM t10,t10000 Y,t10000 X
+WHERE X.K=t10.I
+AND Y.I=X.K;
+id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
+1	SIMPLE	t10	index	IX	IX	5	NULL	10	Using where; Using index
+1	SIMPLE	X	eq_ref	PRIMARY	PRIMARY	4	test.t10.I	1	Using index
+1	SIMPLE	Y	ref	IX	IX	5	test.X.K	1000	Using where; Using index
+SELECT COUNT(*) FROM t10,t10000 Y,t10000 X
+WHERE X.K=t10.I
+AND Y.I=X.K;
+COUNT(*)
+9000
+#
+# Test improved capabilities of analyzing complex query
+# plans without restricting 'optimizer_search_depth'.
+# Fix problems like those reported as bug#41740 & bug#58225. 
+#
+# EPLAIN of queries using T1-T62 will timeout/hang wo/ fixes
+#
+DROP TABLE t10, t10000;
+CREATE TABLE T1 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T1(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 1;
+CREATE TABLE T2 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T2(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 2;
+CREATE TABLE T3 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T3(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 3;
+CREATE TABLE T4 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T4(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 4;
+CREATE TABLE T5 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T5(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 5;
+CREATE TABLE T6 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T6(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 6;
+CREATE TABLE T7 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T7(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 7;
+CREATE TABLE T8 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T8(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 8;
+CREATE TABLE T9 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T9(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 9;
+CREATE TABLE T10 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T10(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 10;
+CREATE TABLE T11 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T11(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 11;
+CREATE TABLE T12 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T12(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 12;
+CREATE TABLE T13 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T13(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 13;
+CREATE TABLE T14 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T14(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 14;
+CREATE TABLE T15 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T15(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 15;
+CREATE TABLE T16 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T16(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 16;
+CREATE TABLE T17 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T17(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 17;
+CREATE TABLE T18 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T18(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 18;
+CREATE TABLE T19 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T19(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 19;
+CREATE TABLE T20 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T20(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 20;
+CREATE TABLE T21 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T21(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 21;
+CREATE TABLE T22 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T22(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 22;
+CREATE TABLE T23 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T23(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 23;
+CREATE TABLE T24 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T24(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 24;
+CREATE TABLE T25 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T25(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 25;
+CREATE TABLE T26 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T26(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 26;
+CREATE TABLE T27 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T27(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 27;
+CREATE TABLE T28 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T28(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 28;
+CREATE TABLE T29 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T29(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 29;
+CREATE TABLE T30 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T30(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 30;
+CREATE TABLE T31 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T31(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 31;
+CREATE TABLE T32 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T32(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 32;
+CREATE TABLE T33 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T33(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 33;
+CREATE TABLE T34 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T34(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 34;
+CREATE TABLE T35 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T35(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 35;
+CREATE TABLE T36 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T36(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 36;
+CREATE TABLE T37 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T37(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 37;
+CREATE TABLE T38 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T38(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 38;
+CREATE TABLE T39 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T39(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 39;
+CREATE TABLE T40 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T40(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 40;
+CREATE TABLE T41 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T41(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 41;
+CREATE TABLE T42 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T42(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 42;
+CREATE TABLE T43 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T43(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 43;
+CREATE TABLE T44 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T44(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 44;
+CREATE TABLE T45 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T45(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 45;
+CREATE TABLE T46 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T46(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 46;
+CREATE TABLE T47 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T47(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 47;
+CREATE TABLE T48 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T48(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 48;
+CREATE TABLE T49 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T49(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 49;
+CREATE TABLE T50 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T50(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 50;
+CREATE TABLE T51 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T51(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 51;
+CREATE TABLE T52 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T52(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 52;
+CREATE TABLE T53 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T53(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 53;
+CREATE TABLE T54 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T54(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 54;
+CREATE TABLE T55 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T55(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 55;
+CREATE TABLE T56 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T56(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 56;
+CREATE TABLE T57 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T57(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 57;
+CREATE TABLE T58 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T58(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 58;
+CREATE TABLE T59 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T59(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 59;
+CREATE TABLE T60 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T60(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 60;
+CREATE TABLE T61 ( K INT NOT NULL AUTO_INCREMENT,
+I INT,
+A INT,
+PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+INSERT INTO T61(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= 61;
+ANALYZE TABLE t100, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40, T41, T42, T43, T44, T45, T46, T47, T48, T49, T50, T51, T52, T53, T54, T55, T56, T57, T58, T59, T60, T61;
+set optimizer_prune_level=1;
+set optimizer_search_depth=0;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I JOIN T50 ON T50.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I JOIN T50 ON T50.I=X.I JOIN T51 ON T51.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I JOIN T50 ON T50.I=X.I JOIN T51 ON T51.I=X.I JOIN T52 ON T52.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I JOIN T50 ON T50.I=X.I JOIN T51 ON T51.I=X.I JOIN T52 ON T52.I=X.I JOIN T53 ON T53.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I JOIN T50 ON T50.I=X.I JOIN T51 ON T51.I=X.I JOIN T52 ON T52.I=X.I JOIN T53 ON T53.I=X.I JOIN T54 ON T54.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I JOIN T50 ON T50.I=X.I JOIN T51 ON T51.I=X.I JOIN T52 ON T52.I=X.I JOIN T53 ON T53.I=X.I JOIN T54 ON T54.I=X.I JOIN T55 ON T55.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I JOIN T50 ON T50.I=X.I JOIN T51 ON T51.I=X.I JOIN T52 ON T52.I=X.I JOIN T53 ON T53.I=X.I JOIN T54 ON T54.I=X.I JOIN T55 ON T55.I=X.I JOIN T56 ON T56.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I JOIN T50 ON T50.I=X.I JOIN T51 ON T51.I=X.I JOIN T52 ON T52.I=X.I JOIN T53 ON T53.I=X.I JOIN T54 ON T54.I=X.I JOIN T55 ON T55.I=X.I JOIN T56 ON T56.I=X.I JOIN T57 ON T57.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I JOIN T50 ON T50.I=X.I JOIN T51 ON T51.I=X.I JOIN T52 ON T52.I=X.I JOIN T53 ON T53.I=X.I JOIN T54 ON T54.I=X.I JOIN T55 ON T55.I=X.I JOIN T56 ON T56.I=X.I JOIN T57 ON T57.I=X.I JOIN T58 ON T58.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I JOIN T50 ON T50.I=X.I JOIN T51 ON T51.I=X.I JOIN T52 ON T52.I=X.I JOIN T53 ON T53.I=X.I JOIN T54 ON T54.I=X.I JOIN T55 ON T55.I=X.I JOIN T56 ON T56.I=X.I JOIN T57 ON T57.I=X.I JOIN T58 ON T58.I=X.I JOIN T59 ON T59.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I JOIN T50 ON T50.I=X.I JOIN T51 ON T51.I=X.I JOIN T52 ON T52.I=X.I JOIN T53 ON T53.I=X.I JOIN T54 ON T54.I=X.I JOIN T55 ON T55.I=X.I JOIN T56 ON T56.I=X.I JOIN T57 ON T57.I=X.I JOIN T58 ON T58.I=X.I JOIN T59 ON T59.I=X.I JOIN T60 ON T60.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 as T1 ON T1.I=X.I JOIN T1 as T2 ON T2.I=X.I JOIN T1 as T3 ON T3.I=X.I JOIN T1 as T4 ON T4.I=X.I JOIN T1 as T5 ON T5.I=X.I JOIN T1 as T6 ON T6.I=X.I JOIN T1 as T7 ON T7.I=X.I JOIN T1 as T8 ON T8.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 as T1 ON T1.I=X.I JOIN T1 as T2 ON T2.I=X.I JOIN T1 as T3 ON T3.I=X.I JOIN T1 as T4 ON T4.I=X.I JOIN T1 as T5 ON T5.I=X.I JOIN T1 as T6 ON T6.I=X.I JOIN T1 as T7 ON T7.I=X.I JOIN T1 as T8 ON T8.I=X.I JOIN T9 as T9 ON T9.I=X.I JOIN T9 as T10 ON T10.I=X.I JOIN T9 as T11 ON T11.I=X.I JOIN T9 as T12 ON T12.I=X.I JOIN T9 as T13 ON T13.I=X.I JOIN T9 as T14 ON T14.I=X.I JOIN T9 as T15 ON T15.I=X.I JOIN T9 as T16 ON T16.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 as T1 ON T1.I=X.I JOIN T1 as T2 ON T2.I=X.I JOIN T1 as T3 ON T3.I=X.I JOIN T1 as T4 ON T4.I=X.I JOIN T1 as T5 ON T5.I=X.I JOIN T1 as T6 ON T6.I=X.I JOIN T1 as T7 ON T7.I=X.I JOIN T1 as T8 ON T8.I=X.I JOIN T9 as T9 ON T9.I=X.I JOIN T9 as T10 ON T10.I=X.I JOIN T9 as T11 ON T11.I=X.I JOIN T9 as T12 ON T12.I=X.I JOIN T9 as T13 ON T13.I=X.I JOIN T9 as T14 ON T14.I=X.I JOIN T9 as T15 ON T15.I=X.I JOIN T9 as T16 ON T16.I=X.I JOIN T17 as T17 ON T17.I=X.I JOIN T17 as T18 ON T18.I=X.I JOIN T17 as T19 ON T19.I=X.I JOIN T17 as T20 ON T20.I=X.I JOIN T17 as T21 ON T21.I=X.I JOIN T17 as T22 ON T22.I=X.I JOIN T17 as T23 ON T23.I=X.I JOIN T17 as T24 ON T24.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 as T1 ON T1.I=X.I JOIN T1 as T2 ON T2.I=X.I JOIN T1 as T3 ON T3.I=X.I JOIN T1 as T4 ON T4.I=X.I JOIN T1 as T5 ON T5.I=X.I JOIN T1 as T6 ON T6.I=X.I JOIN T1 as T7 ON T7.I=X.I JOIN T1 as T8 ON T8.I=X.I JOIN T9 as T9 ON T9.I=X.I JOIN T9 as T10 ON T10.I=X.I JOIN T9 as T11 ON T11.I=X.I JOIN T9 as T12 ON T12.I=X.I JOIN T9 as T13 ON T13.I=X.I JOIN T9 as T14 ON T14.I=X.I JOIN T9 as T15 ON T15.I=X.I JOIN T9 as T16 ON T16.I=X.I JOIN T17 as T17 ON T17.I=X.I JOIN T17 as T18 ON T18.I=X.I JOIN T17 as T19 ON T19.I=X.I JOIN T17 as T20 ON T20.I=X.I JOIN T17 as T21 ON T21.I=X.I JOIN T17 as T22 ON T22.I=X.I JOIN T17 as T23 ON T23.I=X.I JOIN T17 as T24 ON T24.I=X.I JOIN T25 as T25 ON T25.I=X.I JOIN T25 as T26 ON T26.I=X.I JOIN T25 as T27 ON T27.I=X.I JOIN T25 as T28 ON T28.I=X.I JOIN T25 as T29 ON T29.I=X.I JOIN T25 as T30 ON T30.I=X.I JOIN T25 as T31 ON T31.I=X.I JOIN T25 as T32 ON T32.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 as T1 ON T1.I=X.I JOIN T1 as T2 ON T2.I=X.I JOIN T1 as T3 ON T3.I=X.I JOIN T1 as T4 ON T4.I=X.I JOIN T1 as T5 ON T5.I=X.I JOIN T1 as T6 ON T6.I=X.I JOIN T1 as T7 ON T7.I=X.I JOIN T1 as T8 ON T8.I=X.I JOIN T9 as T9 ON T9.I=X.I JOIN T9 as T10 ON T10.I=X.I JOIN T9 as T11 ON T11.I=X.I JOIN T9 as T12 ON T12.I=X.I JOIN T9 as T13 ON T13.I=X.I JOIN T9 as T14 ON T14.I=X.I JOIN T9 as T15 ON T15.I=X.I JOIN T9 as T16 ON T16.I=X.I JOIN T17 as T17 ON T17.I=X.I JOIN T17 as T18 ON T18.I=X.I JOIN T17 as T19 ON T19.I=X.I JOIN T17 as T20 ON T20.I=X.I JOIN T17 as T21 ON T21.I=X.I JOIN T17 as T22 ON T22.I=X.I JOIN T17 as T23 ON T23.I=X.I JOIN T17 as T24 ON T24.I=X.I JOIN T25 as T25 ON T25.I=X.I JOIN T25 as T26 ON T26.I=X.I JOIN T25 as T27 ON T27.I=X.I JOIN T25 as T28 ON T28.I=X.I JOIN T25 as T29 ON T29.I=X.I JOIN T25 as T30 ON T30.I=X.I JOIN T25 as T31 ON T31.I=X.I JOIN T25 as T32 ON T32.I=X.I JOIN T33 as T33 ON T33.I=X.I JOIN T33 as T34 ON T34.I=X.I 
 JOIN T33 as T35 ON T35.I=X.I JOIN T33 as T36 ON T36.I=X.I JOIN T33 as T37 ON T37.I=X.I JOIN T33 as T38 ON T38.I=X.I JOIN T33 as T39 ON T39.I=X.I JOIN T33 as T40 ON T40.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 as T1 ON T1.I=X.I JOIN T1 as T2 ON T2.I=X.I JOIN T1 as T3 ON T3.I=X.I JOIN T1 as T4 ON T4.I=X.I JOIN T1 as T5 ON T5.I=X.I JOIN T1 as T6 ON T6.I=X.I JOIN T1 as T7 ON T7.I=X.I JOIN T1 as T8 ON T8.I=X.I JOIN T9 as T9 ON T9.I=X.I JOIN T9 as T10 ON T10.I=X.I JOIN T9 as T11 ON T11.I=X.I JOIN T9 as T12 ON T12.I=X.I JOIN T9 as T13 ON T13.I=X.I JOIN T9 as T14 ON T14.I=X.I JOIN T9 as T15 ON T15.I=X.I JOIN T9 as T16 ON T16.I=X.I JOIN T17 as T17 ON T17.I=X.I JOIN T17 as T18 ON T18.I=X.I JOIN T17 as T19 ON T19.I=X.I JOIN T17 as T20 ON T20.I=X.I JOIN T17 as T21 ON T21.I=X.I JOIN T17 as T22 ON T22.I=X.I JOIN T17 as T23 ON T23.I=X.I JOIN T17 as T24 ON T24.I=X.I JOIN T25 as T25 ON T25.I=X.I JOIN T25 as T26 ON T26.I=X.I JOIN T25 as T27 ON T27.I=X.I JOIN T25 as T28 ON T28.I=X.I JOIN T25 as T29 ON T29.I=X.I JOIN T25 as T30 ON T30.I=X.I JOIN T25 as T31 ON T31.I=X.I JOIN T25 as T32 ON T32.I=X.I JOIN T33 as T33 ON T33.I=X.I JOIN T33 as T34 ON T34.I=X.I 
 JOIN T33 as T35 ON T35.I=X.I JOIN T33 as T36 ON T36.I=X.I JOIN T33 as T37 ON T37.I=X.I JOIN T33 as T38 ON T38.I=X.I JOIN T33 as T39 ON T39.I=X.I JOIN T33 as T40 ON T40.I=X.I JOIN T41 as T41 ON T41.I=X.I JOIN T41 as T42 ON T42.I=X.I JOIN T41 as T43 ON T43.I=X.I JOIN T41 as T44 ON T44.I=X.I JOIN T41 as T45 ON T45.I=X.I JOIN T41 as T46 ON T46.I=X.I JOIN T41 as T47 ON T47.I=X.I JOIN T41 as T48 ON T48.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 as T1 ON T1.I=X.I JOIN T1 as T2 ON T2.I=X.I JOIN T1 as T3 ON T3.I=X.I JOIN T1 as T4 ON T4.I=X.I JOIN T1 as T5 ON T5.I=X.I JOIN T1 as T6 ON T6.I=X.I JOIN T1 as T7 ON T7.I=X.I JOIN T1 as T8 ON T8.I=X.I JOIN T9 as T9 ON T9.I=X.I JOIN T9 as T10 ON T10.I=X.I JOIN T9 as T11 ON T11.I=X.I JOIN T9 as T12 ON T12.I=X.I JOIN T9 as T13 ON T13.I=X.I JOIN T9 as T14 ON T14.I=X.I JOIN T9 as T15 ON T15.I=X.I JOIN T9 as T16 ON T16.I=X.I JOIN T17 as T17 ON T17.I=X.I JOIN T17 as T18 ON T18.I=X.I JOIN T17 as T19 ON T19.I=X.I JOIN T17 as T20 ON T20.I=X.I JOIN T17 as T21 ON T21.I=X.I JOIN T17 as T22 ON T22.I=X.I JOIN T17 as T23 ON T23.I=X.I JOIN T17 as T24 ON T24.I=X.I JOIN T25 as T25 ON T25.I=X.I JOIN T25 as T26 ON T26.I=X.I JOIN T25 as T27 ON T27.I=X.I JOIN T25 as T28 ON T28.I=X.I JOIN T25 as T29 ON T29.I=X.I JOIN T25 as T30 ON T30.I=X.I JOIN T25 as T31 ON T31.I=X.I JOIN T25 as T32 ON T32.I=X.I JOIN T33 as T33 ON T33.I=X.I JOIN T33 as T34 ON T34.I=X.I 
 JOIN T33 as T35 ON T35.I=X.I JOIN T33 as T36 ON T36.I=X.I JOIN T33 as T37 ON T37.I=X.I JOIN T33 as T38 ON T38.I=X.I JOIN T33 as T39 ON T39.I=X.I JOIN T33 as T40 ON T40.I=X.I JOIN T41 as T41 ON T41.I=X.I JOIN T41 as T42 ON T42.I=X.I JOIN T41 as T43 ON T43.I=X.I JOIN T41 as T44 ON T44.I=X.I JOIN T41 as T45 ON T45.I=X.I JOIN T41 as T46 ON T46.I=X.I JOIN T41 as T47 ON T47.I=X.I JOIN T41 as T48 ON T48.I=X.I JOIN T49 as T49 ON T49.I=X.I JOIN T49 as T50 ON T50.I=X.I JOIN T49 as T51 ON T51.I=X.I JOIN T49 as T52 ON T52.I=X.I JOIN T49 as T53 ON T53.I=X.I JOIN T49 as T54 ON T54.I=X.I JOIN T49 as T55 ON T55.I=X.I JOIN T49 as T56 ON T56.I=X.I;
+set optimizer_search_depth=1;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I JOIN T50 ON T50.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I JOIN T50 ON T50.I=X.I JOIN T51 ON T51.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I JOIN T50 ON T50.I=X.I JOIN T51 ON T51.I=X.I JOIN T52 ON T52.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I JOIN T50 ON T50.I=X.I JOIN T51 ON T51.I=X.I JOIN T52 ON T52.I=X.I JOIN T53 ON T53.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I JOIN T50 ON T50.I=X.I JOIN T51 ON T51.I=X.I JOIN T52 ON T52.I=X.I JOIN T53 ON T53.I=X.I JOIN T54 ON T54.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I JOIN T50 ON T50.I=X.I JOIN T51 ON T51.I=X.I JOIN T52 ON T52.I=X.I JOIN T53 ON T53.I=X.I JOIN T54 ON T54.I=X.I JOIN T55 ON T55.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I JOIN T50 ON T50.I=X.I JOIN T51 ON T51.I=X.I JOIN T52 ON T52.I=X.I JOIN T53 ON T53.I=X.I JOIN T54 ON T54.I=X.I JOIN T55 ON T55.I=X.I JOIN T56 ON T56.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I JOIN T50 ON T50.I=X.I JOIN T51 ON T51.I=X.I JOIN T52 ON T52.I=X.I JOIN T53 ON T53.I=X.I JOIN T54 ON T54.I=X.I JOIN T55 ON T55.I=X.I JOIN T56 ON T56.I=X.I JOIN T57 ON T57.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I JOIN T50 ON T50.I=X.I JOIN T51 ON T51.I=X.I JOIN T52 ON T52.I=X.I JOIN T53 ON T53.I=X.I JOIN T54 ON T54.I=X.I JOIN T55 ON T55.I=X.I JOIN T56 ON T56.I=X.I JOIN T57 ON T57.I=X.I JOIN T58 ON T58.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I JOIN T50 ON T50.I=X.I JOIN T51 ON T51.I=X.I JOIN T52 ON T52.I=X.I JOIN T53 ON T53.I=X.I JOIN T54 ON T54.I=X.I JOIN T55 ON T55.I=X.I JOIN T56 ON T56.I=X.I JOIN T57 ON T57.I=X.I JOIN T58 ON T58.I=X.I JOIN T59 ON T59.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I JOIN T50 ON T50.I=X.I JOIN T51 ON T51.I=X.I JOIN T52 ON T52.I=X.I JOIN T53 ON T53.I=X.I JOIN T54 ON T54.I=X.I JOIN T55 ON T55.I=X.I JOIN T56 ON T56.I=X.I JOIN T57 ON T57.I=X.I JOIN T58 ON T58.I=X.I JOIN T59 ON T59.I=X.I JOIN T60 ON T60.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 as T1 ON T1.I=X.I JOIN T1 as T2 ON T2.I=X.I JOIN T1 as T3 ON T3.I=X.I JOIN T1 as T4 ON T4.I=X.I JOIN T1 as T5 ON T5.I=X.I JOIN T1 as T6 ON T6.I=X.I JOIN T1 as T7 ON T7.I=X.I JOIN T1 as T8 ON T8.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 as T1 ON T1.I=X.I JOIN T1 as T2 ON T2.I=X.I JOIN T1 as T3 ON T3.I=X.I JOIN T1 as T4 ON T4.I=X.I JOIN T1 as T5 ON T5.I=X.I JOIN T1 as T6 ON T6.I=X.I JOIN T1 as T7 ON T7.I=X.I JOIN T1 as T8 ON T8.I=X.I JOIN T9 as T9 ON T9.I=X.I JOIN T9 as T10 ON T10.I=X.I JOIN T9 as T11 ON T11.I=X.I JOIN T9 as T12 ON T12.I=X.I JOIN T9 as T13 ON T13.I=X.I JOIN T9 as T14 ON T14.I=X.I JOIN T9 as T15 ON T15.I=X.I JOIN T9 as T16 ON T16.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 as T1 ON T1.I=X.I JOIN T1 as T2 ON T2.I=X.I JOIN T1 as T3 ON T3.I=X.I JOIN T1 as T4 ON T4.I=X.I JOIN T1 as T5 ON T5.I=X.I JOIN T1 as T6 ON T6.I=X.I JOIN T1 as T7 ON T7.I=X.I JOIN T1 as T8 ON T8.I=X.I JOIN T9 as T9 ON T9.I=X.I JOIN T9 as T10 ON T10.I=X.I JOIN T9 as T11 ON T11.I=X.I JOIN T9 as T12 ON T12.I=X.I JOIN T9 as T13 ON T13.I=X.I JOIN T9 as T14 ON T14.I=X.I JOIN T9 as T15 ON T15.I=X.I JOIN T9 as T16 ON T16.I=X.I JOIN T17 as T17 ON T17.I=X.I JOIN T17 as T18 ON T18.I=X.I JOIN T17 as T19 ON T19.I=X.I JOIN T17 as T20 ON T20.I=X.I JOIN T17 as T21 ON T21.I=X.I JOIN T17 as T22 ON T22.I=X.I JOIN T17 as T23 ON T23.I=X.I JOIN T17 as T24 ON T24.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 as T1 ON T1.I=X.I JOIN T1 as T2 ON T2.I=X.I JOIN T1 as T3 ON T3.I=X.I JOIN T1 as T4 ON T4.I=X.I JOIN T1 as T5 ON T5.I=X.I JOIN T1 as T6 ON T6.I=X.I JOIN T1 as T7 ON T7.I=X.I JOIN T1 as T8 ON T8.I=X.I JOIN T9 as T9 ON T9.I=X.I JOIN T9 as T10 ON T10.I=X.I JOIN T9 as T11 ON T11.I=X.I JOIN T9 as T12 ON T12.I=X.I JOIN T9 as T13 ON T13.I=X.I JOIN T9 as T14 ON T14.I=X.I JOIN T9 as T15 ON T15.I=X.I JOIN T9 as T16 ON T16.I=X.I JOIN T17 as T17 ON T17.I=X.I JOIN T17 as T18 ON T18.I=X.I JOIN T17 as T19 ON T19.I=X.I JOIN T17 as T20 ON T20.I=X.I JOIN T17 as T21 ON T21.I=X.I JOIN T17 as T22 ON T22.I=X.I JOIN T17 as T23 ON T23.I=X.I JOIN T17 as T24 ON T24.I=X.I JOIN T25 as T25 ON T25.I=X.I JOIN T25 as T26 ON T26.I=X.I JOIN T25 as T27 ON T27.I=X.I JOIN T25 as T28 ON T28.I=X.I JOIN T25 as T29 ON T29.I=X.I JOIN T25 as T30 ON T30.I=X.I JOIN T25 as T31 ON T31.I=X.I JOIN T25 as T32 ON T32.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 as T1 ON T1.I=X.I JOIN T1 as T2 ON T2.I=X.I JOIN T1 as T3 ON T3.I=X.I JOIN T1 as T4 ON T4.I=X.I JOIN T1 as T5 ON T5.I=X.I JOIN T1 as T6 ON T6.I=X.I JOIN T1 as T7 ON T7.I=X.I JOIN T1 as T8 ON T8.I=X.I JOIN T9 as T9 ON T9.I=X.I JOIN T9 as T10 ON T10.I=X.I JOIN T9 as T11 ON T11.I=X.I JOIN T9 as T12 ON T12.I=X.I JOIN T9 as T13 ON T13.I=X.I JOIN T9 as T14 ON T14.I=X.I JOIN T9 as T15 ON T15.I=X.I JOIN T9 as T16 ON T16.I=X.I JOIN T17 as T17 ON T17.I=X.I JOIN T17 as T18 ON T18.I=X.I JOIN T17 as T19 ON T19.I=X.I JOIN T17 as T20 ON T20.I=X.I JOIN T17 as T21 ON T21.I=X.I JOIN T17 as T22 ON T22.I=X.I JOIN T17 as T23 ON T23.I=X.I JOIN T17 as T24 ON T24.I=X.I JOIN T25 as T25 ON T25.I=X.I JOIN T25 as T26 ON T26.I=X.I JOIN T25 as T27 ON T27.I=X.I JOIN T25 as T28 ON T28.I=X.I JOIN T25 as T29 ON T29.I=X.I JOIN T25 as T30 ON T30.I=X.I JOIN T25 as T31 ON T31.I=X.I JOIN T25 as T32 ON T32.I=X.I JOIN T33 as T33 ON T33.I=X.I JOIN T33 as T34 ON T34.I=X.I 
 JOIN T33 as T35 ON T35.I=X.I JOIN T33 as T36 ON T36.I=X.I JOIN T33 as T37 ON T37.I=X.I JOIN T33 as T38 ON T38.I=X.I JOIN T33 as T39 ON T39.I=X.I JOIN T33 as T40 ON T40.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 as T1 ON T1.I=X.I JOIN T1 as T2 ON T2.I=X.I JOIN T1 as T3 ON T3.I=X.I JOIN T1 as T4 ON T4.I=X.I JOIN T1 as T5 ON T5.I=X.I JOIN T1 as T6 ON T6.I=X.I JOIN T1 as T7 ON T7.I=X.I JOIN T1 as T8 ON T8.I=X.I JOIN T9 as T9 ON T9.I=X.I JOIN T9 as T10 ON T10.I=X.I JOIN T9 as T11 ON T11.I=X.I JOIN T9 as T12 ON T12.I=X.I JOIN T9 as T13 ON T13.I=X.I JOIN T9 as T14 ON T14.I=X.I JOIN T9 as T15 ON T15.I=X.I JOIN T9 as T16 ON T16.I=X.I JOIN T17 as T17 ON T17.I=X.I JOIN T17 as T18 ON T18.I=X.I JOIN T17 as T19 ON T19.I=X.I JOIN T17 as T20 ON T20.I=X.I JOIN T17 as T21 ON T21.I=X.I JOIN T17 as T22 ON T22.I=X.I JOIN T17 as T23 ON T23.I=X.I JOIN T17 as T24 ON T24.I=X.I JOIN T25 as T25 ON T25.I=X.I JOIN T25 as T26 ON T26.I=X.I JOIN T25 as T27 ON T27.I=X.I JOIN T25 as T28 ON T28.I=X.I JOIN T25 as T29 ON T29.I=X.I JOIN T25 as T30 ON T30.I=X.I JOIN T25 as T31 ON T31.I=X.I JOIN T25 as T32 ON T32.I=X.I JOIN T33 as T33 ON T33.I=X.I JOIN T33 as T34 ON T34.I=X.I 
 JOIN T33 as T35 ON T35.I=X.I JOIN T33 as T36 ON T36.I=X.I JOIN T33 as T37 ON T37.I=X.I JOIN T33 as T38 ON T38.I=X.I JOIN T33 as T39 ON T39.I=X.I JOIN T33 as T40 ON T40.I=X.I JOIN T41 as T41 ON T41.I=X.I JOIN T41 as T42 ON T42.I=X.I JOIN T41 as T43 ON T43.I=X.I JOIN T41 as T44 ON T44.I=X.I JOIN T41 as T45 ON T45.I=X.I JOIN T41 as T46 ON T46.I=X.I JOIN T41 as T47 ON T47.I=X.I JOIN T41 as T48 ON T48.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 as T1 ON T1.I=X.I JOIN T1 as T2 ON T2.I=X.I JOIN T1 as T3 ON T3.I=X.I JOIN T1 as T4 ON T4.I=X.I JOIN T1 as T5 ON T5.I=X.I JOIN T1 as T6 ON T6.I=X.I JOIN T1 as T7 ON T7.I=X.I JOIN T1 as T8 ON T8.I=X.I JOIN T9 as T9 ON T9.I=X.I JOIN T9 as T10 ON T10.I=X.I JOIN T9 as T11 ON T11.I=X.I JOIN T9 as T12 ON T12.I=X.I JOIN T9 as T13 ON T13.I=X.I JOIN T9 as T14 ON T14.I=X.I JOIN T9 as T15 ON T15.I=X.I JOIN T9 as T16 ON T16.I=X.I JOIN T17 as T17 ON T17.I=X.I JOIN T17 as T18 ON T18.I=X.I JOIN T17 as T19 ON T19.I=X.I JOIN T17 as T20 ON T20.I=X.I JOIN T17 as T21 ON T21.I=X.I JOIN T17 as T22 ON T22.I=X.I JOIN T17 as T23 ON T23.I=X.I JOIN T17 as T24 ON T24.I=X.I JOIN T25 as T25 ON T25.I=X.I JOIN T25 as T26 ON T26.I=X.I JOIN T25 as T27 ON T27.I=X.I JOIN T25 as T28 ON T28.I=X.I JOIN T25 as T29 ON T29.I=X.I JOIN T25 as T30 ON T30.I=X.I JOIN T25 as T31 ON T31.I=X.I JOIN T25 as T32 ON T32.I=X.I JOIN T33 as T33 ON T33.I=X.I JOIN T33 as T34 ON T34.I=X.I 
 JOIN T33 as T35 ON T35.I=X.I JOIN T33 as T36 ON T36.I=X.I JOIN T33 as T37 ON T37.I=X.I JOIN T33 as T38 ON T38.I=X.I JOIN T33 as T39 ON T39.I=X.I JOIN T33 as T40 ON T40.I=X.I JOIN T41 as T41 ON T41.I=X.I JOIN T41 as T42 ON T42.I=X.I JOIN T41 as T43 ON T43.I=X.I JOIN T41 as T44 ON T44.I=X.I JOIN T41 as T45 ON T45.I=X.I JOIN T41 as T46 ON T46.I=X.I JOIN T41 as T47 ON T47.I=X.I JOIN T41 as T48 ON T48.I=X.I JOIN T49 as T49 ON T49.I=X.I JOIN T49 as T50 ON T50.I=X.I JOIN T49 as T51 ON T51.I=X.I JOIN T49 as T52 ON T52.I=X.I JOIN T49 as T53 ON T53.I=X.I JOIN T49 as T54 ON T54.I=X.I JOIN T49 as T55 ON T55.I=X.I JOIN T49 as T56 ON T56.I=X.I;
+set optimizer_search_depth=3;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I JOIN T50 ON T50.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I JOIN T50 ON T50.I=X.I JOIN T51 ON T51.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I JOIN T50 ON T50.I=X.I JOIN T51 ON T51.I=X.I JOIN T52 ON T52.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I JOIN T50 ON T50.I=X.I JOIN T51 ON T51.I=X.I JOIN T52 ON T52.I=X.I JOIN T53 ON T53.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I JOIN T50 ON T50.I=X.I JOIN T51 ON T51.I=X.I JOIN T52 ON T52.I=X.I JOIN T53 ON T53.I=X.I JOIN T54 ON T54.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I JOIN T50 ON T50.I=X.I JOIN T51 ON T51.I=X.I JOIN T52 ON T52.I=X.I JOIN T53 ON T53.I=X.I JOIN T54 ON T54.I=X.I JOIN T55 ON T55.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I JOIN T50 ON T50.I=X.I JOIN T51 ON T51.I=X.I JOIN T52 ON T52.I=X.I JOIN T53 ON T53.I=X.I JOIN T54 ON T54.I=X.I JOIN T55 ON T55.I=X.I JOIN T56 ON T56.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I JOIN T50 ON T50.I=X.I JOIN T51 ON T51.I=X.I JOIN T52 ON T52.I=X.I JOIN T53 ON T53.I=X.I JOIN T54 ON T54.I=X.I JOIN T55 ON T55.I=X.I JOIN T56 ON T56.I=X.I JOIN T57 ON T57.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I JOIN T50 ON T50.I=X.I JOIN T51 ON T51.I=X.I JOIN T52 ON T52.I=X.I JOIN T53 ON T53.I=X.I JOIN T54 ON T54.I=X.I JOIN T55 ON T55.I=X.I JOIN T56 ON T56.I=X.I JOIN T57 ON T57.I=X.I JOIN T58 ON T58.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I JOIN T50 ON T50.I=X.I JOIN T51 ON T51.I=X.I JOIN T52 ON T52.I=X.I JOIN T53 ON T53.I=X.I JOIN T54 ON T54.I=X.I JOIN T55 ON T55.I=X.I JOIN T56 ON T56.I=X.I JOIN T57 ON T57.I=X.I JOIN T58 ON T58.I=X.I JOIN T59 ON T59.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I JOIN T50 ON T50.I=X.I JOIN T51 ON T51.I=X.I JOIN T52 ON T52.I=X.I JOIN T53 ON T53.I=X.I JOIN T54 ON T54.I=X.I JOIN T55 ON T55.I=X.I JOIN T56 ON T56.I=X.I JOIN T57 ON T57.I=X.I JOIN T58 ON T58.I=X.I JOIN T59 ON T59.I=X.I JOIN T60 ON T60.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 as T1 ON T1.I=X.I JOIN T1 as T2 ON T2.I=X.I JOIN T1 as T3 ON T3.I=X.I JOIN T1 as T4 ON T4.I=X.I JOIN T1 as T5 ON T5.I=X.I JOIN T1 as T6 ON T6.I=X.I JOIN T1 as T7 ON T7.I=X.I JOIN T1 as T8 ON T8.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 as T1 ON T1.I=X.I JOIN T1 as T2 ON T2.I=X.I JOIN T1 as T3 ON T3.I=X.I JOIN T1 as T4 ON T4.I=X.I JOIN T1 as T5 ON T5.I=X.I JOIN T1 as T6 ON T6.I=X.I JOIN T1 as T7 ON T7.I=X.I JOIN T1 as T8 ON T8.I=X.I JOIN T9 as T9 ON T9.I=X.I JOIN T9 as T10 ON T10.I=X.I JOIN T9 as T11 ON T11.I=X.I JOIN T9 as T12 ON T12.I=X.I JOIN T9 as T13 ON T13.I=X.I JOIN T9 as T14 ON T14.I=X.I JOIN T9 as T15 ON T15.I=X.I JOIN T9 as T16 ON T16.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 as T1 ON T1.I=X.I JOIN T1 as T2 ON T2.I=X.I JOIN T1 as T3 ON T3.I=X.I JOIN T1 as T4 ON T4.I=X.I JOIN T1 as T5 ON T5.I=X.I JOIN T1 as T6 ON T6.I=X.I JOIN T1 as T7 ON T7.I=X.I JOIN T1 as T8 ON T8.I=X.I JOIN T9 as T9 ON T9.I=X.I JOIN T9 as T10 ON T10.I=X.I JOIN T9 as T11 ON T11.I=X.I JOIN T9 as T12 ON T12.I=X.I JOIN T9 as T13 ON T13.I=X.I JOIN T9 as T14 ON T14.I=X.I JOIN T9 as T15 ON T15.I=X.I JOIN T9 as T16 ON T16.I=X.I JOIN T17 as T17 ON T17.I=X.I JOIN T17 as T18 ON T18.I=X.I JOIN T17 as T19 ON T19.I=X.I JOIN T17 as T20 ON T20.I=X.I JOIN T17 as T21 ON T21.I=X.I JOIN T17 as T22 ON T22.I=X.I JOIN T17 as T23 ON T23.I=X.I JOIN T17 as T24 ON T24.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 as T1 ON T1.I=X.I JOIN T1 as T2 ON T2.I=X.I JOIN T1 as T3 ON T3.I=X.I JOIN T1 as T4 ON T4.I=X.I JOIN T1 as T5 ON T5.I=X.I JOIN T1 as T6 ON T6.I=X.I JOIN T1 as T7 ON T7.I=X.I JOIN T1 as T8 ON T8.I=X.I JOIN T9 as T9 ON T9.I=X.I JOIN T9 as T10 ON T10.I=X.I JOIN T9 as T11 ON T11.I=X.I JOIN T9 as T12 ON T12.I=X.I JOIN T9 as T13 ON T13.I=X.I JOIN T9 as T14 ON T14.I=X.I JOIN T9 as T15 ON T15.I=X.I JOIN T9 as T16 ON T16.I=X.I JOIN T17 as T17 ON T17.I=X.I JOIN T17 as T18 ON T18.I=X.I JOIN T17 as T19 ON T19.I=X.I JOIN T17 as T20 ON T20.I=X.I JOIN T17 as T21 ON T21.I=X.I JOIN T17 as T22 ON T22.I=X.I JOIN T17 as T23 ON T23.I=X.I JOIN T17 as T24 ON T24.I=X.I JOIN T25 as T25 ON T25.I=X.I JOIN T25 as T26 ON T26.I=X.I JOIN T25 as T27 ON T27.I=X.I JOIN T25 as T28 ON T28.I=X.I JOIN T25 as T29 ON T29.I=X.I JOIN T25 as T30 ON T30.I=X.I JOIN T25 as T31 ON T31.I=X.I JOIN T25 as T32 ON T32.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 as T1 ON T1.I=X.I JOIN T1 as T2 ON T2.I=X.I JOIN T1 as T3 ON T3.I=X.I JOIN T1 as T4 ON T4.I=X.I JOIN T1 as T5 ON T5.I=X.I JOIN T1 as T6 ON T6.I=X.I JOIN T1 as T7 ON T7.I=X.I JOIN T1 as T8 ON T8.I=X.I JOIN T9 as T9 ON T9.I=X.I JOIN T9 as T10 ON T10.I=X.I JOIN T9 as T11 ON T11.I=X.I JOIN T9 as T12 ON T12.I=X.I JOIN T9 as T13 ON T13.I=X.I JOIN T9 as T14 ON T14.I=X.I JOIN T9 as T15 ON T15.I=X.I JOIN T9 as T16 ON T16.I=X.I JOIN T17 as T17 ON T17.I=X.I JOIN T17 as T18 ON T18.I=X.I JOIN T17 as T19 ON T19.I=X.I JOIN T17 as T20 ON T20.I=X.I JOIN T17 as T21 ON T21.I=X.I JOIN T17 as T22 ON T22.I=X.I JOIN T17 as T23 ON T23.I=X.I JOIN T17 as T24 ON T24.I=X.I JOIN T25 as T25 ON T25.I=X.I JOIN T25 as T26 ON T26.I=X.I JOIN T25 as T27 ON T27.I=X.I JOIN T25 as T28 ON T28.I=X.I JOIN T25 as T29 ON T29.I=X.I JOIN T25 as T30 ON T30.I=X.I JOIN T25 as T31 ON T31.I=X.I JOIN T25 as T32 ON T32.I=X.I JOIN T33 as T33 ON T33.I=X.I JOIN T33 as T34 ON T34.I=X.I 
 JOIN T33 as T35 ON T35.I=X.I JOIN T33 as T36 ON T36.I=X.I JOIN T33 as T37 ON T37.I=X.I JOIN T33 as T38 ON T38.I=X.I JOIN T33 as T39 ON T39.I=X.I JOIN T33 as T40 ON T40.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 as T1 ON T1.I=X.I JOIN T1 as T2 ON T2.I=X.I JOIN T1 as T3 ON T3.I=X.I JOIN T1 as T4 ON T4.I=X.I JOIN T1 as T5 ON T5.I=X.I JOIN T1 as T6 ON T6.I=X.I JOIN T1 as T7 ON T7.I=X.I JOIN T1 as T8 ON T8.I=X.I JOIN T9 as T9 ON T9.I=X.I JOIN T9 as T10 ON T10.I=X.I JOIN T9 as T11 ON T11.I=X.I JOIN T9 as T12 ON T12.I=X.I JOIN T9 as T13 ON T13.I=X.I JOIN T9 as T14 ON T14.I=X.I JOIN T9 as T15 ON T15.I=X.I JOIN T9 as T16 ON T16.I=X.I JOIN T17 as T17 ON T17.I=X.I JOIN T17 as T18 ON T18.I=X.I JOIN T17 as T19 ON T19.I=X.I JOIN T17 as T20 ON T20.I=X.I JOIN T17 as T21 ON T21.I=X.I JOIN T17 as T22 ON T22.I=X.I JOIN T17 as T23 ON T23.I=X.I JOIN T17 as T24 ON T24.I=X.I JOIN T25 as T25 ON T25.I=X.I JOIN T25 as T26 ON T26.I=X.I JOIN T25 as T27 ON T27.I=X.I JOIN T25 as T28 ON T28.I=X.I JOIN T25 as T29 ON T29.I=X.I JOIN T25 as T30 ON T30.I=X.I JOIN T25 as T31 ON T31.I=X.I JOIN T25 as T32 ON T32.I=X.I JOIN T33 as T33 ON T33.I=X.I JOIN T33 as T34 ON T34.I=X.I 
 JOIN T33 as T35 ON T35.I=X.I JOIN T33 as T36 ON T36.I=X.I JOIN T33 as T37 ON T37.I=X.I JOIN T33 as T38 ON T38.I=X.I JOIN T33 as T39 ON T39.I=X.I JOIN T33 as T40 ON T40.I=X.I JOIN T41 as T41 ON T41.I=X.I JOIN T41 as T42 ON T42.I=X.I JOIN T41 as T43 ON T43.I=X.I JOIN T41 as T44 ON T44.I=X.I JOIN T41 as T45 ON T45.I=X.I JOIN T41 as T46 ON T46.I=X.I JOIN T41 as T47 ON T47.I=X.I JOIN T41 as T48 ON T48.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 as T1 ON T1.I=X.I JOIN T1 as T2 ON T2.I=X.I JOIN T1 as T3 ON T3.I=X.I JOIN T1 as T4 ON T4.I=X.I JOIN T1 as T5 ON T5.I=X.I JOIN T1 as T6 ON T6.I=X.I JOIN T1 as T7 ON T7.I=X.I JOIN T1 as T8 ON T8.I=X.I JOIN T9 as T9 ON T9.I=X.I JOIN T9 as T10 ON T10.I=X.I JOIN T9 as T11 ON T11.I=X.I JOIN T9 as T12 ON T12.I=X.I JOIN T9 as T13 ON T13.I=X.I JOIN T9 as T14 ON T14.I=X.I JOIN T9 as T15 ON T15.I=X.I JOIN T9 as T16 ON T16.I=X.I JOIN T17 as T17 ON T17.I=X.I JOIN T17 as T18 ON T18.I=X.I JOIN T17 as T19 ON T19.I=X.I JOIN T17 as T20 ON T20.I=X.I JOIN T17 as T21 ON T21.I=X.I JOIN T17 as T22 ON T22.I=X.I JOIN T17 as T23 ON T23.I=X.I JOIN T17 as T24 ON T24.I=X.I JOIN T25 as T25 ON T25.I=X.I JOIN T25 as T26 ON T26.I=X.I JOIN T25 as T27 ON T27.I=X.I JOIN T25 as T28 ON T28.I=X.I JOIN T25 as T29 ON T29.I=X.I JOIN T25 as T30 ON T30.I=X.I JOIN T25 as T31 ON T31.I=X.I JOIN T25 as T32 ON T32.I=X.I JOIN T33 as T33 ON T33.I=X.I JOIN T33 as T34 ON T34.I=X.I 
 JOIN T33 as T35 ON T35.I=X.I JOIN T33 as T36 ON T36.I=X.I JOIN T33 as T37 ON T37.I=X.I JOIN T33 as T38 ON T38.I=X.I JOIN T33 as T39 ON T39.I=X.I JOIN T33 as T40 ON T40.I=X.I JOIN T41 as T41 ON T41.I=X.I JOIN T41 as T42 ON T42.I=X.I JOIN T41 as T43 ON T43.I=X.I JOIN T41 as T44 ON T44.I=X.I JOIN T41 as T45 ON T45.I=X.I JOIN T41 as T46 ON T46.I=X.I JOIN T41 as T47 ON T47.I=X.I JOIN T41 as T48 ON T48.I=X.I JOIN T49 as T49 ON T49.I=X.I JOIN T49 as T50 ON T50.I=X.I JOIN T49 as T51 ON T51.I=X.I JOIN T49 as T52 ON T52.I=X.I JOIN T49 as T53 ON T53.I=X.I JOIN T49 as T54 ON T54.I=X.I JOIN T49 as T55 ON T55.I=X.I JOIN T49 as T56 ON T56.I=X.I;
+set optimizer_search_depth=62;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I JOIN T50 ON T50.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I JOIN T50 ON T50.I=X.I JOIN T51 ON T51.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I JOIN T50 ON T50.I=X.I JOIN T51 ON T51.I=X.I JOIN T52 ON T52.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I JOIN T50 ON T50.I=X.I JOIN T51 ON T51.I=X.I JOIN T52 ON T52.I=X.I JOIN T53 ON T53.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I JOIN T50 ON T50.I=X.I JOIN T51 ON T51.I=X.I JOIN T52 ON T52.I=X.I JOIN T53 ON T53.I=X.I JOIN T54 ON T54.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I JOIN T50 ON T50.I=X.I JOIN T51 ON T51.I=X.I JOIN T52 ON T52.I=X.I JOIN T53 ON T53.I=X.I JOIN T54 ON T54.I=X.I JOIN T55 ON T55.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I JOIN T50 ON T50.I=X.I JOIN T51 ON T51.I=X.I JOIN T52 ON T52.I=X.I JOIN T53 ON T53.I=X.I JOIN T54 ON T54.I=X.I JOIN T55 ON T55.I=X.I JOIN T56 ON T56.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I JOIN T50 ON T50.I=X.I JOIN T51 ON T51.I=X.I JOIN T52 ON T52.I=X.I JOIN T53 ON T53.I=X.I JOIN T54 ON T54.I=X.I JOIN T55 ON T55.I=X.I JOIN T56 ON T56.I=X.I JOIN T57 ON T57.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I JOIN T50 ON T50.I=X.I JOIN T51 ON T51.I=X.I JOIN T52 ON T52.I=X.I JOIN T53 ON T53.I=X.I JOIN T54 ON T54.I=X.I JOIN T55 ON T55.I=X.I JOIN T56 ON T56.I=X.I JOIN T57 ON T57.I=X.I JOIN T58 ON T58.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I JOIN T50 ON T50.I=X.I JOIN T51 ON T51.I=X.I JOIN T52 ON T52.I=X.I JOIN T53 ON T53.I=X.I JOIN T54 ON T54.I=X.I JOIN T55 ON T55.I=X.I JOIN T56 ON T56.I=X.I JOIN T57 ON T57.I=X.I JOIN T58 ON T58.I=X.I JOIN T59 ON T59.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 ON T1.I=X.I JOIN T2 ON T2.I=X.I JOIN T3 ON T3.I=X.I JOIN T4 ON T4.I=X.I JOIN T5 ON T5.I=X.I JOIN T6 ON T6.I=X.I JOIN T7 ON T7.I=X.I JOIN T8 ON T8.I=X.I JOIN T9 ON T9.I=X.I JOIN T10 ON T10.I=X.I JOIN T11 ON T11.I=X.I JOIN T12 ON T12.I=X.I JOIN T13 ON T13.I=X.I JOIN T14 ON T14.I=X.I JOIN T15 ON T15.I=X.I JOIN T16 ON T16.I=X.I JOIN T17 ON T17.I=X.I JOIN T18 ON T18.I=X.I JOIN T19 ON T19.I=X.I JOIN T20 ON T20.I=X.I JOIN T21 ON T21.I=X.I JOIN T22 ON T22.I=X.I JOIN T23 ON T23.I=X.I JOIN T24 ON T24.I=X.I JOIN T25 ON T25.I=X.I JOIN T26 ON T26.I=X.I JOIN T27 ON T27.I=X.I JOIN T28 ON T28.I=X.I JOIN T29 ON T29.I=X.I JOIN T30 ON T30.I=X.I JOIN T31 ON T31.I=X.I JOIN T32 ON T32.I=X.I JOIN T33 ON T33.I=X.I JOIN T34 ON T34.I=X.I JOIN T35 ON T35.I=X.I JOIN T36 ON T36.I=X.I JOIN T37 ON T37.I=X.I JOIN T38 ON T38.I=X.I JOIN T39 ON T39.I=X.I JOIN T40 ON T40.I=X.I JOIN T41 ON T41.I=X.I JOIN T42 ON T42.I=X.I JOIN T43 ON T43.I=X.I JOIN T44 ON T44.I=X.I JO
 IN T45 ON T45.I=X.I JOIN T46 ON T46.I=X.I JOIN T47 ON T47.I=X.I JOIN T48 ON T48.I=X.I JOIN T49 ON T49.I=X.I JOIN T50 ON T50.I=X.I JOIN T51 ON T51.I=X.I JOIN T52 ON T52.I=X.I JOIN T53 ON T53.I=X.I JOIN T54 ON T54.I=X.I JOIN T55 ON T55.I=X.I JOIN T56 ON T56.I=X.I JOIN T57 ON T57.I=X.I JOIN T58 ON T58.I=X.I JOIN T59 ON T59.I=X.I JOIN T60 ON T60.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 as T1 ON T1.I=X.I JOIN T1 as T2 ON T2.I=X.I JOIN T1 as T3 ON T3.I=X.I JOIN T1 as T4 ON T4.I=X.I JOIN T1 as T5 ON T5.I=X.I JOIN T1 as T6 ON T6.I=X.I JOIN T1 as T7 ON T7.I=X.I JOIN T1 as T8 ON T8.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 as T1 ON T1.I=X.I JOIN T1 as T2 ON T2.I=X.I JOIN T1 as T3 ON T3.I=X.I JOIN T1 as T4 ON T4.I=X.I JOIN T1 as T5 ON T5.I=X.I JOIN T1 as T6 ON T6.I=X.I JOIN T1 as T7 ON T7.I=X.I JOIN T1 as T8 ON T8.I=X.I JOIN T9 as T9 ON T9.I=X.I JOIN T9 as T10 ON T10.I=X.I JOIN T9 as T11 ON T11.I=X.I JOIN T9 as T12 ON T12.I=X.I JOIN T9 as T13 ON T13.I=X.I JOIN T9 as T14 ON T14.I=X.I JOIN T9 as T15 ON T15.I=X.I JOIN T9 as T16 ON T16.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 as T1 ON T1.I=X.I JOIN T1 as T2 ON T2.I=X.I JOIN T1 as T3 ON T3.I=X.I JOIN T1 as T4 ON T4.I=X.I JOIN T1 as T5 ON T5.I=X.I JOIN T1 as T6 ON T6.I=X.I JOIN T1 as T7 ON T7.I=X.I JOIN T1 as T8 ON T8.I=X.I JOIN T9 as T9 ON T9.I=X.I JOIN T9 as T10 ON T10.I=X.I JOIN T9 as T11 ON T11.I=X.I JOIN T9 as T12 ON T12.I=X.I JOIN T9 as T13 ON T13.I=X.I JOIN T9 as T14 ON T14.I=X.I JOIN T9 as T15 ON T15.I=X.I JOIN T9 as T16 ON T16.I=X.I JOIN T17 as T17 ON T17.I=X.I JOIN T17 as T18 ON T18.I=X.I JOIN T17 as T19 ON T19.I=X.I JOIN T17 as T20 ON T20.I=X.I JOIN T17 as T21 ON T21.I=X.I JOIN T17 as T22 ON T22.I=X.I JOIN T17 as T23 ON T23.I=X.I JOIN T17 as T24 ON T24.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 as T1 ON T1.I=X.I JOIN T1 as T2 ON T2.I=X.I JOIN T1 as T3 ON T3.I=X.I JOIN T1 as T4 ON T4.I=X.I JOIN T1 as T5 ON T5.I=X.I JOIN T1 as T6 ON T6.I=X.I JOIN T1 as T7 ON T7.I=X.I JOIN T1 as T8 ON T8.I=X.I JOIN T9 as T9 ON T9.I=X.I JOIN T9 as T10 ON T10.I=X.I JOIN T9 as T11 ON T11.I=X.I JOIN T9 as T12 ON T12.I=X.I JOIN T9 as T13 ON T13.I=X.I JOIN T9 as T14 ON T14.I=X.I JOIN T9 as T15 ON T15.I=X.I JOIN T9 as T16 ON T16.I=X.I JOIN T17 as T17 ON T17.I=X.I JOIN T17 as T18 ON T18.I=X.I JOIN T17 as T19 ON T19.I=X.I JOIN T17 as T20 ON T20.I=X.I JOIN T17 as T21 ON T21.I=X.I JOIN T17 as T22 ON T22.I=X.I JOIN T17 as T23 ON T23.I=X.I JOIN T17 as T24 ON T24.I=X.I JOIN T25 as T25 ON T25.I=X.I JOIN T25 as T26 ON T26.I=X.I JOIN T25 as T27 ON T27.I=X.I JOIN T25 as T28 ON T28.I=X.I JOIN T25 as T29 ON T29.I=X.I JOIN T25 as T30 ON T30.I=X.I JOIN T25 as T31 ON T31.I=X.I JOIN T25 as T32 ON T32.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 as T1 ON T1.I=X.I JOIN T1 as T2 ON T2.I=X.I JOIN T1 as T3 ON T3.I=X.I JOIN T1 as T4 ON T4.I=X.I JOIN T1 as T5 ON T5.I=X.I JOIN T1 as T6 ON T6.I=X.I JOIN T1 as T7 ON T7.I=X.I JOIN T1 as T8 ON T8.I=X.I JOIN T9 as T9 ON T9.I=X.I JOIN T9 as T10 ON T10.I=X.I JOIN T9 as T11 ON T11.I=X.I JOIN T9 as T12 ON T12.I=X.I JOIN T9 as T13 ON T13.I=X.I JOIN T9 as T14 ON T14.I=X.I JOIN T9 as T15 ON T15.I=X.I JOIN T9 as T16 ON T16.I=X.I JOIN T17 as T17 ON T17.I=X.I JOIN T17 as T18 ON T18.I=X.I JOIN T17 as T19 ON T19.I=X.I JOIN T17 as T20 ON T20.I=X.I JOIN T17 as T21 ON T21.I=X.I JOIN T17 as T22 ON T22.I=X.I JOIN T17 as T23 ON T23.I=X.I JOIN T17 as T24 ON T24.I=X.I JOIN T25 as T25 ON T25.I=X.I JOIN T25 as T26 ON T26.I=X.I JOIN T25 as T27 ON T27.I=X.I JOIN T25 as T28 ON T28.I=X.I JOIN T25 as T29 ON T29.I=X.I JOIN T25 as T30 ON T30.I=X.I JOIN T25 as T31 ON T31.I=X.I JOIN T25 as T32 ON T32.I=X.I JOIN T33 as T33 ON T33.I=X.I JOIN T33 as T34 ON T34.I=X.I 
 JOIN T33 as T35 ON T35.I=X.I JOIN T33 as T36 ON T36.I=X.I JOIN T33 as T37 ON T37.I=X.I JOIN T33 as T38 ON T38.I=X.I JOIN T33 as T39 ON T39.I=X.I JOIN T33 as T40 ON T40.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 as T1 ON T1.I=X.I JOIN T1 as T2 ON T2.I=X.I JOIN T1 as T3 ON T3.I=X.I JOIN T1 as T4 ON T4.I=X.I JOIN T1 as T5 ON T5.I=X.I JOIN T1 as T6 ON T6.I=X.I JOIN T1 as T7 ON T7.I=X.I JOIN T1 as T8 ON T8.I=X.I JOIN T9 as T9 ON T9.I=X.I JOIN T9 as T10 ON T10.I=X.I JOIN T9 as T11 ON T11.I=X.I JOIN T9 as T12 ON T12.I=X.I JOIN T9 as T13 ON T13.I=X.I JOIN T9 as T14 ON T14.I=X.I JOIN T9 as T15 ON T15.I=X.I JOIN T9 as T16 ON T16.I=X.I JOIN T17 as T17 ON T17.I=X.I JOIN T17 as T18 ON T18.I=X.I JOIN T17 as T19 ON T19.I=X.I JOIN T17 as T20 ON T20.I=X.I JOIN T17 as T21 ON T21.I=X.I JOIN T17 as T22 ON T22.I=X.I JOIN T17 as T23 ON T23.I=X.I JOIN T17 as T24 ON T24.I=X.I JOIN T25 as T25 ON T25.I=X.I JOIN T25 as T26 ON T26.I=X.I JOIN T25 as T27 ON T27.I=X.I JOIN T25 as T28 ON T28.I=X.I JOIN T25 as T29 ON T29.I=X.I JOIN T25 as T30 ON T30.I=X.I JOIN T25 as T31 ON T31.I=X.I JOIN T25 as T32 ON T32.I=X.I JOIN T33 as T33 ON T33.I=X.I JOIN T33 as T34 ON T34.I=X.I 
 JOIN T33 as T35 ON T35.I=X.I JOIN T33 as T36 ON T36.I=X.I JOIN T33 as T37 ON T37.I=X.I JOIN T33 as T38 ON T38.I=X.I JOIN T33 as T39 ON T39.I=X.I JOIN T33 as T40 ON T40.I=X.I JOIN T41 as T41 ON T41.I=X.I JOIN T41 as T42 ON T42.I=X.I JOIN T41 as T43 ON T43.I=X.I JOIN T41 as T44 ON T44.I=X.I JOIN T41 as T45 ON T45.I=X.I JOIN T41 as T46 ON T46.I=X.I JOIN T41 as T47 ON T47.I=X.I JOIN T41 as T48 ON T48.I=X.I;
+select @@optimizer_prune_level;
+select @@optimizer_search_depth;
+EXPLAIN SELECT COUNT(*) FROM T1 AS X JOIN T1 as T1 ON T1.I=X.I JOIN T1 as T2 ON T2.I=X.I JOIN T1 as T3 ON T3.I=X.I JOIN T1 as T4 ON T4.I=X.I JOIN T1 as T5 ON T5.I=X.I JOIN T1 as T6 ON T6.I=X.I JOIN T1 as T7 ON T7.I=X.I JOIN T1 as T8 ON T8.I=X.I JOIN T9 as T9 ON T9.I=X.I JOIN T9 as T10 ON T10.I=X.I JOIN T9 as T11 ON T11.I=X.I JOIN T9 as T12 ON T12.I=X.I JOIN T9 as T13 ON T13.I=X.I JOIN T9 as T14 ON T14.I=X.I JOIN T9 as T15 ON T15.I=X.I JOIN T9 as T16 ON T16.I=X.I JOIN T17 as T17 ON T17.I=X.I JOIN T17 as T18 ON T18.I=X.I JOIN T17 as T19 ON T19.I=X.I JOIN T17 as T20 ON T20.I=X.I JOIN T17 as T21 ON T21.I=X.I JOIN T17 as T22 ON T22.I=X.I JOIN T17 as T23 ON T23.I=X.I JOIN T17 as T24 ON T24.I=X.I JOIN T25 as T25 ON T25.I=X.I JOIN T25 as T26 ON T26.I=X.I JOIN T25 as T27 ON T27.I=X.I JOIN T25 as T28 ON T28.I=X.I JOIN T25 as T29 ON T29.I=X.I JOIN T25 as T30 ON T30.I=X.I JOIN T25 as T31 ON T31.I=X.I JOIN T25 as T32 ON T32.I=X.I JOIN T33 as T33 ON T33.I=X.I JOIN T33 as T34 ON T34.I=X.I 
 JOIN T33 as T35 ON T35.I=X.I JOIN T33 as T36 ON T36.I=X.I JOIN T33 as T37 ON T37.I=X.I JOIN T33 as T38 ON T38.I=X.I JOIN T33 as T39 ON T39.I=X.I JOIN T33 as T40 ON T40.I=X.I JOIN T41 as T41 ON T41.I=X.I JOIN T41 as T42 ON T42.I=X.I JOIN T41 as T43 ON T43.I=X.I JOIN T41 as T44 ON T44.I=X.I JOIN T41 as T45 ON T45.I=X.I JOIN T41 as T46 ON T46.I=X.I JOIN T41 as T47 ON T47.I=X.I JOIN T41 as T48 ON T48.I=X.I JOIN T49 as T49 ON T49.I=X.I JOIN T49 as T50 ON T50.I=X.I JOIN T49 as T51 ON T51.I=X.I JOIN T49 as T52 ON T52.I=X.I JOIN T49 as T53 ON T53.I=X.I JOIN T49 as T54 ON T54.I=X.I JOIN T49 as T55 ON T55.I=X.I JOIN T49 as T56 ON T56.I=X.I;
+DROP TABLE t100, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40, T41, T42, T43, T44, T45, T46, T47, T48, T49, T50, T51, T52, T53, T54, T55, T56, T57, T58, T59, T60, T61;
+SET OPTIMIZER_SEARCH_DEPTH = DEFAULT;
+END OF 5.6 TESTS

=== modified file 'mysql-test/r/join.result'
--- a/mysql-test/r/join.result	2010-12-16 17:38:26 +0000
+++ b/mysql-test/r/join.result	2011-02-22 14:24:33 +0000
@@ -895,7 +895,7 @@ id	select_type	table	type	possible_keys	
 1	SIMPLE	B	eq_ref	PRIMARY	PRIMARY	4	test.A.b	1	
 show status like '%cost%';
 Variable_name	Value
-Last_query_cost	24.016090
+Last_query_cost	28.016090
 select '^^: The above should be ~= 20 + cost(select * from t1). Value less than 20 is an error' Z;
 Z
 ^^: The above should be ~= 20 + cost(select * from t1). Value less than 20 is an error

=== modified file 'mysql-test/r/join_cache_jcl1.result'
--- a/mysql-test/r/join_cache_jcl1.result	2011-02-17 13:25:01 +0000
+++ b/mysql-test/r/join_cache_jcl1.result	2011-02-22 14:24:33 +0000
@@ -1311,11 +1311,11 @@ id	select_type	table	type	possible_keys	
 1	SIMPLE	t5	eq_ref	PRIMARY,t5_formattypeid	PRIMARY	4	test.t4.formatclassid	1	Using where
 1	SIMPLE	t2	eq_ref	PRIMARY	PRIMARY	4	test.t1.metaid	1	
 1	SIMPLE	t7	ref	PRIMARY	PRIMARY	4	test.t1.metaid	1	Using index
-1	SIMPLE	t3	ref	t3_metaid,t3_formatid,t3_metaidformatid	t3_metaid	4	test.t1.metaid	2	Using where
 1	SIMPLE	t8	eq_ref	PRIMARY	PRIMARY	4	test.t7.artistid	1	
-1	SIMPLE	t9	index	PRIMARY,t9_subgenreid,t9_metaid	PRIMARY	8	NULL	2	Using where; Using index; Using join buffer (BNL, regular buffers)
+1	SIMPLE	t9	ref	PRIMARY,t9_subgenreid,t9_metaid	t9_metaid	4	test.t7.metaid	2	Using index condition
 1	SIMPLE	t10	eq_ref	PRIMARY,t10_genreid	PRIMARY	4	test.t9.subgenreid	1	
 1	SIMPLE	t11	eq_ref	PRIMARY	PRIMARY	4	test.t10.genreid	1	
+1	SIMPLE	t3	ALL	t3_metaid,t3_formatid,t3_metaidformatid	NULL	NULL	NULL	2	Using where; Using join buffer (BNL, regular buffers)
 SELECT t1.uniquekey, t1.xml AS affiliateXml,
 t8.name AS artistName, t8.artistid, 
 t11.name AS genreName, t11.genreid, t11.priority AS genrePriority,

=== modified file 'mysql-test/r/join_cache_jcl2.result'
--- a/mysql-test/r/join_cache_jcl2.result	2011-02-17 13:25:01 +0000
+++ b/mysql-test/r/join_cache_jcl2.result	2011-02-22 14:24:33 +0000
@@ -1311,11 +1311,11 @@ id	select_type	table	type	possible_keys	
 1	SIMPLE	t5	eq_ref	PRIMARY,t5_formattypeid	PRIMARY	4	test.t4.formatclassid	1	Using where
 1	SIMPLE	t2	eq_ref	PRIMARY	PRIMARY	4	test.t1.metaid	1	
 1	SIMPLE	t7	ref	PRIMARY	PRIMARY	4	test.t1.metaid	1	Using index
-1	SIMPLE	t3	ref	t3_metaid,t3_formatid,t3_metaidformatid	t3_metaid	4	test.t1.metaid	2	Using where
 1	SIMPLE	t8	eq_ref	PRIMARY	PRIMARY	4	test.t7.artistid	1	
-1	SIMPLE	t9	index	PRIMARY,t9_subgenreid,t9_metaid	PRIMARY	8	NULL	2	Using where; Using index; Using join buffer (BNL, incremental buffers)
+1	SIMPLE	t9	ref	PRIMARY,t9_subgenreid,t9_metaid	t9_metaid	4	test.t7.metaid	2	Using index condition
 1	SIMPLE	t10	eq_ref	PRIMARY,t10_genreid	PRIMARY	4	test.t9.subgenreid	1	
 1	SIMPLE	t11	eq_ref	PRIMARY	PRIMARY	4	test.t10.genreid	1	
+1	SIMPLE	t3	ALL	t3_metaid,t3_formatid,t3_metaidformatid	NULL	NULL	NULL	2	Using where; Using join buffer (BNL, incremental buffers)
 SELECT t1.uniquekey, t1.xml AS affiliateXml,
 t8.name AS artistName, t8.artistid, 
 t11.name AS genreName, t11.genreid, t11.priority AS genrePriority,

=== modified file 'mysql-test/r/join_cache_jcl3.result'
--- a/mysql-test/r/join_cache_jcl3.result	2011-02-17 13:25:01 +0000
+++ b/mysql-test/r/join_cache_jcl3.result	2011-02-22 14:24:33 +0000
@@ -1311,11 +1311,11 @@ id	select_type	table	type	possible_keys	
 1	SIMPLE	t5	eq_ref	PRIMARY,t5_formattypeid	PRIMARY	4	test.t4.formatclassid	1	Using where
 1	SIMPLE	t2	eq_ref	PRIMARY	PRIMARY	4	test.t1.metaid	1	
 1	SIMPLE	t7	ref	PRIMARY	PRIMARY	4	test.t1.metaid	1	Using index
-1	SIMPLE	t3	ref	t3_metaid,t3_formatid,t3_metaidformatid	t3_metaid	4	test.t1.metaid	2	Using where
 1	SIMPLE	t8	eq_ref	PRIMARY	PRIMARY	4	test.t7.artistid	1	
-1	SIMPLE	t9	index	PRIMARY,t9_subgenreid,t9_metaid	PRIMARY	8	NULL	2	Using where; Using index; Using join buffer (BNL, regular buffers)
+1	SIMPLE	t9	ref	PRIMARY,t9_subgenreid,t9_metaid	t9_metaid	4	test.t7.metaid	2	Using index condition
 1	SIMPLE	t10	eq_ref	PRIMARY,t10_genreid	PRIMARY	4	test.t9.subgenreid	1	
 1	SIMPLE	t11	eq_ref	PRIMARY	PRIMARY	4	test.t10.genreid	1	
+1	SIMPLE	t3	ALL	t3_metaid,t3_formatid,t3_metaidformatid	NULL	NULL	NULL	2	Using where; Using join buffer (BNL, regular buffers)
 SELECT t1.uniquekey, t1.xml AS affiliateXml,
 t8.name AS artistName, t8.artistid, 
 t11.name AS genreName, t11.genreid, t11.priority AS genrePriority,

=== modified file 'mysql-test/r/join_cache_jcl4.result'
--- a/mysql-test/r/join_cache_jcl4.result	2011-02-17 13:25:01 +0000
+++ b/mysql-test/r/join_cache_jcl4.result	2011-02-22 14:24:33 +0000
@@ -1311,11 +1311,11 @@ id	select_type	table	type	possible_keys	
 1	SIMPLE	t5	eq_ref	PRIMARY,t5_formattypeid	PRIMARY	4	test.t4.formatclassid	1	Using where
 1	SIMPLE	t2	eq_ref	PRIMARY	PRIMARY	4	test.t1.metaid	1	
 1	SIMPLE	t7	ref	PRIMARY	PRIMARY	4	test.t1.metaid	1	Using index
-1	SIMPLE	t3	ref	t3_metaid,t3_formatid,t3_metaidformatid	t3_metaid	4	test.t1.metaid	2	Using where
 1	SIMPLE	t8	eq_ref	PRIMARY	PRIMARY	4	test.t7.artistid	1	
-1	SIMPLE	t9	index	PRIMARY,t9_subgenreid,t9_metaid	PRIMARY	8	NULL	2	Using where; Using index; Using join buffer (BNL, incremental buffers)
+1	SIMPLE	t9	ref	PRIMARY,t9_subgenreid,t9_metaid	t9_metaid	4	test.t7.metaid	2	Using index condition
 1	SIMPLE	t10	eq_ref	PRIMARY,t10_genreid	PRIMARY	4	test.t9.subgenreid	1	
 1	SIMPLE	t11	eq_ref	PRIMARY	PRIMARY	4	test.t10.genreid	1	
+1	SIMPLE	t3	ALL	t3_metaid,t3_formatid,t3_metaidformatid	NULL	NULL	NULL	2	Using where; Using join buffer (BNL, incremental buffers)
 SELECT t1.uniquekey, t1.xml AS affiliateXml,
 t8.name AS artistName, t8.artistid, 
 t11.name AS genreName, t11.genreid, t11.priority AS genrePriority,

=== modified file 'mysql-test/r/status.result'
--- a/mysql-test/r/status.result	2010-05-10 09:37:24 +0000
+++ b/mysql-test/r/status.result	2011-02-22 14:24:33 +0000
@@ -149,7 +149,7 @@ a	a
 1	1
 SHOW SESSION STATUS LIKE 'Last_query_cost';
 Variable_name	Value
-Last_query_cost	4.805989
+Last_query_cost	5.205989
 DROP TABLE t1;
 show status like 'com_show_status';
 Variable_name	Value

=== modified file 'mysql-test/r/subquery_sj_none.result'
--- a/mysql-test/r/subquery_sj_none.result	2011-02-21 10:36:31 +0000
+++ b/mysql-test/r/subquery_sj_none.result	2011-02-22 14:24:33 +0000
@@ -76,10 +76,10 @@ a
 explain extended select * from t2 where t2.a in (select t1.a from t1,t3 where t1.b=t3.a);
 id	select_type	table	type	possible_keys	key	key_len	ref	rows	filtered	Extra
 1	PRIMARY	t2	index	NULL	a	5	NULL	4	100.00	Using where; Using index
-2	DEPENDENT SUBQUERY	t1	ref	a	a	5	func	1001	100.00	Using index
-2	DEPENDENT SUBQUERY	t3	index	a	a	5	NULL	3	100.00	Using where; Using index; Using join buffer (BNL, incremental buffers)
+2	DEPENDENT SUBQUERY	t3	index	a	a	5	NULL	3	100.00	Using where; Using index
+2	DEPENDENT SUBQUERY	t1	ref	a	a	10	func,test.t3.a	1167	100.00	Using index
 Warnings:
-Note	1003	select `test`.`t2`.`a` AS `a` from `test`.`t2` where <in_optimizer>(`test`.`t2`.`a`,<exists>(select 1 from `test`.`t1` join `test`.`t3` where ((`test`.`t3`.`a` = `test`.`t1`.`b`) and (<cache>(`test`.`t2`.`a`) = `test`.`t1`.`a`))))
+Note	1003	select `test`.`t2`.`a` AS `a` from `test`.`t2` where <in_optimizer>(`test`.`t2`.`a`,<exists>(select 1 from `test`.`t1` join `test`.`t3` where ((`test`.`t1`.`b` = `test`.`t3`.`a`) and (<cache>(`test`.`t2`.`a`) = `test`.`t1`.`a`))))
 insert into t1 values (3,31);
 select * from t2 where t2.a in (select a from t1 where t1.b <> 30);
 a
@@ -2881,8 +2881,8 @@ t2.b1 IN (select c1 from t3 where c2 > '
 id	select_type	table	type	possible_keys	key	key_len	ref	rows	filtered	Extra
 1	PRIMARY	t1	ALL	NULL	NULL	NULL	NULL	3	100.00	Using where
 2	DEPENDENT SUBQUERY	t1_16	ALL	NULL	NULL	NULL	NULL	3	100.00	Using where
-3	DEPENDENT SUBQUERY	t2	ALL	NULL	NULL	NULL	NULL	5	100.00	Using where
-3	DEPENDENT SUBQUERY	t2_16	ALL	NULL	NULL	NULL	NULL	3	100.00	Using where; Using join buffer (BNL, incremental buffers)
+3	DEPENDENT SUBQUERY	t2_16	ALL	NULL	NULL	NULL	NULL	3	100.00	Using where
+3	DEPENDENT SUBQUERY	t2	ALL	NULL	NULL	NULL	NULL	5	100.00	Using where; Using join buffer (BNL, incremental buffers)
 4	DEPENDENT SUBQUERY	t3	ALL	NULL	NULL	NULL	NULL	4	100.00	Using where
 Warnings:
 Note	1003	select `test`.`t1`.`a1` AS `a1`,`test`.`t1`.`a2` AS `a2` from `test`.`t1` where <in_optimizer>(concat(`test`.`t1`.`a1`,'x'),<exists>(select 1 from `test`.`t1_16` where (<in_optimizer>((`test`.`t1_16`.`a1`,`test`.`t1_16`.`a2`),<exists>(select `test`.`t2_16`.`b1`,`test`.`t2_16`.`b2` from `test`.`t2_16` join `test`.`t2` where ((`test`.`t2`.`b2` = substr(`test`.`t2_16`.`b2`,1,6)) and <in_optimizer>(`test`.`t2`.`b1`,<exists>(select 1 from `test`.`t3` where ((`test`.`t3`.`c2` > '0') and (<cache>(`test`.`t2`.`b1`) = `test`.`t3`.`c1`)))) and (<cache>(`test`.`t1_16`.`a1`) = `test`.`t2_16`.`b1`) and (<cache>(`test`.`t1_16`.`a2`) = `test`.`t2_16`.`b2`)))) and (<cache>(concat(`test`.`t1`.`a1`,'x')) = left(`test`.`t1_16`.`a1`,8)))))
@@ -3952,8 +3952,8 @@ WHERE int_nokey IN (SELECT it2.int_key
 FROM it1 LEFT JOIN it2 ON it2.datetime_key);
 id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
 1	PRIMARY	ot1	ALL	NULL	NULL	NULL	NULL	20	Using where
+2	DEPENDENT SUBQUERY	it1	index	NULL	int_key	4	NULL	2	Using index
 2	DEPENDENT SUBQUERY	it2	ref	int_key	int_key	4	func	3	Using where
-2	DEPENDENT SUBQUERY	it1	index	NULL	int_key	4	NULL	2	Using index; Using join buffer (BNL, incremental buffers)
 DROP TABLE ot1, it1, it2;
 # End of BUG#38075
 # 
@@ -5221,8 +5221,8 @@ and t2.uid=t1.fid;
 id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
 1	PRIMARY	t1	ALL	NULL	NULL	NULL	NULL	11	Using where
 1	PRIMARY	t2	eq_ref	PRIMARY	PRIMARY	4	test.t1.fid	1	
+2	DEPENDENT SUBQUERY	t4	eq_ref	PRIMARY	PRIMARY	4	func	1	Using index
 2	DEPENDENT SUBQUERY	t3	ref	uid	uid	5	const	4	Using where
-2	DEPENDENT SUBQUERY	t4	eq_ref	PRIMARY	PRIMARY	4	func	1	Using where; Using index
 select name from t2, t1 
 where t1.uid in (select t4.uid from t4, t3 where t3.uid=1 and t4.uid=t3.fid)
 and t2.uid=t1.fid;

=== modified file 'mysql-test/t/greedy_optimizer.test'
--- a/mysql-test/t/greedy_optimizer.test	2011-02-17 11:38:07 +0000
+++ b/mysql-test/t/greedy_optimizer.test	2011-02-22 14:24:33 +0000
@@ -424,3 +424,471 @@ SET optimizer_search_depth = DEFAULT;
 DROP TABLE t1,t2,t2_1,t3,t3_1,t4,t4_1,t5,t5_1;
 
 --echo End of 5.0 tests
+
+
+
+--echo #
+--echo # Bug #59326: Greedy optimizer produce stupid query execution plans.
+--echo #
+
+CREATE TABLE t10(
+  K INT NOT NULL AUTO_INCREMENT,
+  I INT,
+  PRIMARY KEY(K)
+);
+INSERT INTO t10(I) VALUES (1),(2),(3),(4),(5),(6),(7),(8),(9),(0);
+
+CREATE TABLE t100 LIKE t10;
+INSERT INTO t100(I)
+SELECT X.I FROM t10 AS X,t10 AS Y;
+
+CREATE TABLE t10000 LIKE t10;
+INSERT INTO t10000(I)
+SELECT X.I FROM t100 AS X, t100 AS Y;
+
+let $total_handler_reads=
+select sum(variable_value) from information_schema.session_status
+ where VARIABLE_NAME like 'Handler_read%';
+
+
+## All crossproducts should be executed in order t10,t100,t10000
+EXPLAIN SELECT * FROM t10,t100,t10000;
+EXPLAIN SELECT * FROM t10,t10000,t100;
+EXPLAIN SELECT * FROM t100,t10,t10000;
+EXPLAIN SELECT * FROM t100,t10000,t10;
+EXPLAIN SELECT * FROM t10000,t10,t100;
+EXPLAIN SELECT * FROM t10000,t100,t10;
+
+######
+## Ordering between T100,T10000 EQ-joined T10 will
+## normally be with smallest EQ-table joined first
+######
+let $query=
+SELECT STRAIGHT_JOIN COUNT(*) FROM t10,t100,t10000
+WHERE t100.K=t10.I
+  AND t10000.K=t10.I;
+--source include/expect_qep.inc
+
+## However, swapping EQ_REF-joined tables gives the same cost
+let $query=
+SELECT STRAIGHT_JOIN COUNT(*) FROM t10,t10000,t100
+WHERE t100.K=t10.I
+  AND t10000.K=t10.I;
+--source include/check_qep.inc
+
+#####
+# Expect all variants of EQ joining t100 & t10000 with T10
+# to have same cost # handler_reads:
+let $query=
+SELECT COUNT(*) FROM t10,t100,t10000
+WHERE t100.K=t10.I
+  AND t10000.K=t10.I;
+--source include/check_qep.inc
+
+let $query=
+SELECT COUNT(*) FROM t10,t10000,t100
+WHERE t100.K=t10.I
+  AND t10000.K=t10.I;
+--source include/check_qep.inc
+
+let $query=
+SELECT COUNT(*) FROM t10,t100,t10000
+WHERE t100.K=t10.I
+  AND t10000.K=t10.K;
+--source include/check_qep.inc
+
+let $query=
+SELECT COUNT(*) FROM t10,t10000,t100
+WHERE t100.K=t10.I
+  AND t10000.K=t10.K;
+--source include/check_qep.inc
+
+let $query=
+SELECT COUNT(*) FROM t100,t10,t10000
+WHERE t100.K=t10.I
+  AND t10000.K=t10.K;
+--source include/check_qep.inc
+
+let $query=
+SELECT COUNT(*) FROM t100,t10000,t10
+WHERE t100.K=t10.I
+  AND t10000.K=t10.K;
+--source include/check_qep.inc
+
+let $query=
+SELECT COUNT(*) FROM t10000,t10,t100
+WHERE t100.K=t10.I
+  AND t10000.K=t10.K;
+--source include/check_qep.inc
+
+let $query=
+SELECT COUNT(*) FROM t10000,t100,t10
+WHERE t100.K=t10.I
+  AND t10000.K=t10.K;
+--source include/check_qep.inc
+
+
+#####
+## EQ_REF Should be executed before table scan(ALL)
+## - Independent of #records in table being EQ_REF-joined
+#####
+#####
+# Expect: Join EQ_REF(t100) before ALL(t10000)
+let $query=
+SELECT STRAIGHT_JOIN COUNT(*) FROM t10,t100,t10000
+WHERE t100.K=t10.I
+  AND t10000.I=t10.I;
+--source include/expect_qep.inc
+
+let $query=
+SELECT COUNT(*) FROM t10,t100,t10000
+WHERE t100.K=t10.I
+  AND t10000.I=t10.I;
+--source include/check_qep.inc
+
+let $query=
+SELECT COUNT(*) FROM t10,t10000,t100
+WHERE t100.K=t10.I
+  AND t10000.I=t10.I;
+--source include/check_qep.inc
+
+#####
+# Expect: Join EQ_REF(t10000) before ALL(t100) (star-join)
+let $query=
+SELECT STRAIGHT_JOIN COUNT(*) FROM t10,t10000,t100
+WHERE t100.I=t10.I
+  AND t10000.K=t10.I;
+--source include/expect_qep.inc
+
+let $query=
+SELECT COUNT(*) FROM t10,t100,t10000
+WHERE t100.I=t10.I
+  AND t10000.K=t10.I;
+--source include/check_qep.inc
+
+let $query=
+SELECT COUNT(*) FROM t10,t10000,t100
+WHERE t100.I=t10.I
+  AND t10000.K=t10.I;
+--source include/check_qep.inc
+
+#####
+# Expect: Join EQ_REF(t10000) before ALL(t100)
+let $query=
+SELECT STRAIGHT_JOIN COUNT(*) FROM t10,t10000,t100
+WHERE t100.I=t10.I
+  AND t10000.K=t100.I;
+--source include/expect_qep.inc
+
+let $query=
+SELECT COUNT(*) FROM t10,t100,t10000
+WHERE t100.I=t10.I
+  AND t10000.K=t100.I;
+--source include/check_qep.inc
+
+let $query=
+SELECT COUNT(*) FROM t10,t10000,t100
+WHERE t100.I=t10.I
+  AND t10000.K=t100.I;
+--source include/check_qep.inc
+
+
+#####
+## EQ_REF & ALL join two instances of t10000 with t10:
+## Always EQ_REF join first before producing cross product
+#####
+
+#####
+# Expected QEP: 'join EQ_REF(X) on X.K=t10.I' before 'cross' ALL(Y)
+let $query=
+SELECT STRAIGHT_JOIN COUNT(*) FROM t10,t10000 X,t10000 Y
+WHERE X.K=t10.I;
+--source include/expect_qep.inc
+
+let $query=
+SELECT COUNT(*) FROM t10,t10000 X,t10000 Y
+WHERE X.K=t10.I;
+--source include/check_qep.inc
+
+let $query=
+SELECT COUNT(*) FROM t10,t10000 Y,t10000 X
+WHERE X.K=t10.I;
+--source include/check_qep.inc
+
+#####
+# Expected QEP: 'join EQ_REF(X) on X.K=t10.I' before ALL(Y)
+let $query=
+SELECT STRAIGHT_JOIN COUNT(*) FROM t10,t10000 X,t10000 Y
+WHERE X.K=t10.I
+  AND Y.I=t10.I;
+--source include/expect_qep.inc
+
+let $query=
+SELECT COUNT(*) FROM t10,t10000 X,t10000 Y
+WHERE X.K=t10.I
+  AND Y.I=t10.I;
+--source include/check_qep.inc
+
+let $query=
+SELECT COUNT(*) FROM t10,t10000 Y,t10000 X
+WHERE X.K=t10.I
+  AND Y.I=t10.I;
+--source include/check_qep.inc
+
+#####
+# Expected QEP: 'join EQ_REF(X) on X.K=t10.I' before ALL(Y)
+let $query=
+SELECT STRAIGHT_JOIN COUNT(*) FROM t10,t10000 X,t10000 Y
+WHERE X.K=t10.I
+  AND Y.I=X.K;
+--source include/expect_qep.inc
+
+let $query=
+SELECT COUNT(*) FROM t10,t10000 X,t10000 Y
+WHERE X.K=t10.I
+  AND Y.I=X.K;
+--source include/check_qep.inc
+
+let $query=
+SELECT COUNT(*) FROM t10,t10000 Y,t10000 X
+WHERE X.K=t10.I
+  AND Y.I=X.K;
+--source include/check_qep.inc
+
+
+
+## Create indexes to test REF access
+CREATE INDEX IX ON t10(I);
+CREATE INDEX IX ON t100(I);
+CREATE INDEX IX ON t10000(I);
+
+########
+## EQ_REF Should be executed before 'REF'
+## - Independent of #records in table being EQ_REF-joined
+
+####
+# Expected QEP: 'join EQ_REF(t100) on t100.K=t10.I' before REF(t10000)
+let $query=
+SELECT STRAIGHT_JOIN COUNT(*) FROM t10,t100,t10000
+WHERE t100.K=t10.I
+  AND t10000.I=t10.I;
+--source include/expect_qep.inc
+
+let $query=
+SELECT COUNT(*) FROM t10,t100,t10000
+WHERE t100.K=t10.I
+  AND t10000.I=t10.I;
+--source include/check_qep.inc
+
+let $query=
+SELECT COUNT(*) FROM t10,t10000,t100
+WHERE t100.K=t10.I
+  AND t10000.I=t10.I;
+--source include/check_qep.inc
+
+
+#####
+## EQ_REF & REF join two instances of t10000 with t10:
+#####
+
+#####
+## Expect this QEP, cost & #handler_read
+# Expected QEP: 'join EQ_REF(X) on X.K=t10.I' before 'cross' ALL(Y)
+let $query=
+SELECT STRAIGHT_JOIN COUNT(*) FROM t10,t10000 X,t10000 Y
+WHERE X.K=t10.I;
+--source include/expect_qep.inc
+
+let $query=
+SELECT COUNT(*) FROM t10,t10000 X,t10000 Y
+WHERE X.K=t10.I;
+--source include/check_qep.inc
+
+let $query=
+SELECT COUNT(*) FROM t10,t10000 Y,t10000 X
+WHERE X.K=t10.I;
+--source include/check_qep.inc
+
+#####
+# Expected QEP: 'join EQ_REF(X) on X.K=t10.I' before REF(Y)
+let $query=
+SELECT STRAIGHT_JOIN COUNT(*) FROM t10,t10000 X,t10000 Y
+WHERE X.K=t10.I
+  AND Y.I=t10.I;
+--source include/expect_qep.inc
+
+let $query=
+SELECT COUNT(*) FROM t10,t10000 X,t10000 Y
+WHERE X.K=t10.I
+  AND Y.I=t10.I;
+--source include/check_qep.inc
+
+let $query=
+SELECT COUNT(*) FROM t10,t10000 Y,t10000 X
+WHERE X.K=t10.I
+  AND Y.I=t10.I;
+--source include/check_qep.inc
+
+#####
+# Expected QEP: 'join EQ_REF(X) on X.K=t10.I' before REF(Y)
+let $query=
+SELECT STRAIGHT_JOIN COUNT(*) FROM t10,t10000 X,t10000 Y
+WHERE X.K=t10.I
+  AND Y.I=X.K;
+--source include/expect_qep.inc
+
+let $query=
+SELECT COUNT(*) FROM t10,t10000 X,t10000 Y
+WHERE X.K=t10.I
+  AND Y.I=X.K;
+--source include/check_qep.inc
+
+let $query=
+SELECT COUNT(*) FROM t10,t10000 Y,t10000 X
+WHERE X.K=t10.I
+  AND Y.I=X.K;
+--source include/check_qep.inc
+
+########
+
+
+
+########
+
+--echo #
+--echo # Test improved capabilities of analyzing complex query
+--echo # plans without restricting 'optimizer_search_depth'.
+--echo # Fix problems like those reported as bug#41740 & bug#58225. 
+--echo #
+--echo # EPLAIN of queries using T1-T62 will timeout/hang wo/ fixes
+--echo #
+
+DROP TABLE t10, t10000;
+
+--disable_result_log
+
+let $tabledef=
+( K INT NOT NULL AUTO_INCREMENT,
+  I INT,
+  A INT,
+  PRIMARY KEY(K), KEY IX(A)
+) engine = InnoDB;
+
+let $analyze = ANALYZE TABLE t100;
+
+let $i= 1;
+while ($i < 62)
+{
+  let $create= CREATE TABLE T$i $tabledef;
+  eval $create;
+
+  let $insert =
+  INSERT INTO T$i(I,A) SELECT X.K,X.K FROM t100 AS X, t100 AS Y WHERE X.K < 20 AND Y.K <= $i;
+  eval $insert;
+
+  let $analyze = $analyze, T$i;
+  inc $i;
+}
+eval $analyze;
+
+set optimizer_prune_level=1;
+
+
+#################
+## The EXPLAIN'ed query itself can't be part of the verified 
+## result as the QEP is not 100% predictable due to variation
+## in statistics from the engines. This is believed to be
+## caused by:
+##  - Variations in table fill degree.
+##  - 'Fuzzy' statistics provided by engines.
+##  - Round errors caused by 'cost' calculation using 
+##    'only' 64-bit double precision.
+##  - Other bugs...?
+##
+###############
+
+## Will test with optimizer_search_depth= [0,1,3,62]
+let $depth= 0;
+while ($depth<4)
+{
+  if ($depth==0)
+  {
+    set optimizer_search_depth=0; 
+  }
+  if ($depth==1)
+  {
+    set optimizer_search_depth=1;
+  }
+  if ($depth==2)
+  {
+    set optimizer_search_depth=3;
+  }
+  if ($depth==3)
+  {
+    set optimizer_search_depth=62;
+  }
+  inc $depth;
+
+
+  ## Test pruning of joined table scans (ALL) 
+  ## Prepare of QEP without timeout is heavily dependent
+  ## on maintaining correctly '#rows-sorted' plan
+  ##
+  let $query= SELECT COUNT(*) FROM T1 AS X;
+  let $i= 1;
+  while ($i < 61)
+  {
+    let $query= $query JOIN T$i ON T$i.I=X.I;
+    inc $i;
+
+    select @@optimizer_prune_level;
+    select @@optimizer_search_depth;
+    eval EXPLAIN $query;
+  }
+
+  ## Test pruning of joined table scans (ALL) 
+  ## with multiple instances of same table.
+  ## (All instances being equally expensive)
+  let $query= SELECT COUNT(*) FROM T1 AS X;
+  let $i= 1;
+  while ($i <= 56)
+  {
+    let $t= T$i;
+    let $query= $query JOIN $t as T$i ON T$i.I=X.I;
+    inc $i;
+    let $query= $query JOIN $t as T$i ON T$i.I=X.I;
+    inc $i;
+    let $query= $query JOIN $t as T$i ON T$i.I=X.I;
+    inc $i;
+    let $query= $query JOIN $t as T$i ON T$i.I=X.I;
+    inc $i;
+    let $query= $query JOIN $t as T$i ON T$i.I=X.I;
+    inc $i;
+    let $query= $query JOIN $t as T$i ON T$i.I=X.I;
+    inc $i;
+    let $query= $query JOIN $t as T$i ON T$i.I=X.I;
+    inc $i;
+    let $query= $query JOIN $t as T$i ON T$i.I=X.I;
+    inc $i;
+
+    select @@optimizer_prune_level;
+    select @@optimizer_search_depth;
+    eval EXPLAIN $query;
+  }
+}
+
+let $drop = DROP TABLE t100;
+let $i= 1;
+while ($i < 62)
+{
+  let $drop = $drop, T$i;
+  inc $i;
+}
+eval $drop;
+
+--enable_result_log
+
+SET OPTIMIZER_SEARCH_DEPTH = DEFAULT;
+
+--ECHO END OF 5.6 TESTS
+

=== modified file 'sql/sql_select.cc'
--- a/sql/sql_select.cc	2011-02-18 10:59:18 +0000
+++ b/sql/sql_select.cc	2011-02-22 14:24:33 +0000
@@ -7792,7 +7792,8 @@ optimize_straight_join(JOIN *join, table
 
     /* compute the cost of the new plan extended with 's' */
     record_count*= join->positions[idx].records_read;
-    read_time+=    join->positions[idx].read_time;
+    read_time+=    join->positions[idx].read_time
+                   + record_count / (double) TIME_FOR_COMPARE;
     advance_sj_state(join, join_tables, s, idx, &record_count, &read_time,
                      &loose_scan_pos);
 
@@ -7800,13 +7801,19 @@ optimize_straight_join(JOIN *join, table
     ++idx;
   }
 
-  read_time+= record_count / (double) TIME_FOR_COMPARE;
   if (join->sort_by_table &&
       join->sort_by_table != join->positions[join->const_tables].table->table)
     read_time+= record_count;  // We have to make a temp table
   memcpy((uchar*) join->best_positions, (uchar*) join->positions,
          sizeof(POSITION)*idx);
-  join->best_read= read_time;
+
+  /**
+   * If many plans have identical cost, which one will be used
+   * depends on how compiler optimizes floating-point calculations.
+   * this fix adds repeatability to the optimizer.
+   * (Similar code in best_extension_by_li...)
+   */
+  join->best_read= read_time - 0.001;
 }
 
 
@@ -8037,12 +8044,19 @@ greedy_search(JOIN      *join,
     while (pos && best_table != pos)
       pos= join->best_ref[++best_idx];
     DBUG_ASSERT((pos != NULL)); // should always find 'best_table'
-    /* move 'best_table' at the first free position in the array of joins */
-    swap_variables(JOIN_TAB*, join->best_ref[idx], join->best_ref[best_idx]);
+    /*
+      Maintain '#rows-sorted' order of 'best_ref[]':
+       - Shift 'best_ref[]' to make first position free. 
+       - Insert 'best_table' at the first free position in the array of joins.
+    */
+    memmove(join->best_ref + idx + 1, join->best_ref + idx,
+            sizeof(JOIN_TAB*) * (best_idx - idx));
+    join->best_ref[idx]= best_table;
 
     /* compute the cost of the new plan extended with 'best_table' */
     record_count*= join->positions[idx].records_read;
-    read_time+=    join->positions[idx].read_time;
+    read_time+=    join->positions[idx].read_time
+                   + record_count / (double) TIME_FOR_COMPARE;
 
     remaining_tables&= ~(best_table->table->map);
     --size_remain;
@@ -8087,10 +8101,11 @@ void get_partial_join_cost(JOIN *join, u
     if (join->best_positions[i].records_read)
     {
       record_count *= join->best_positions[i].records_read;
-      read_time += join->best_positions[i].read_time;
+      read_time += join->best_positions[i].read_time
+                   + record_count / (double) TIME_FOR_COMPARE;
     }
   }
-  *read_time_arg= read_time;// + record_count / TIME_FOR_COMPARE;
+  *read_time_arg= read_time;
   *record_count_arg= record_count;
 }
 
@@ -8231,7 +8246,6 @@ best_extension_by_limited_search(JOIN   
      'join' is a partial plan with lower cost than the best plan so far,
      so continue expanding it further with the tables in 'remaining_tables'.
   */
-  JOIN_TAB *s;
   double best_record_count= DBL_MAX;
   double best_read_time=    DBL_MAX;
 
@@ -8244,9 +8258,23 @@ best_extension_by_limited_search(JOIN   
 
   bool has_sj= !join->select_lex->sj_nests.is_empty();
 
+  JOIN_TAB *s;
+  JOIN_TAB *saved_refs[MAX_TABLES];
+  // Save 'best_ref[]' as we has to restore before return.
+  memcpy(saved_refs, join->best_ref + idx, 
+         sizeof(JOIN_TAB*) * (join->tables - idx));
+
   for (JOIN_TAB **pos= join->best_ref + idx ; (s= *pos) ; pos++)
   {
     table_map real_table_bit= s->table->map;
+
+    /*
+      Don't move swap inside conditional code: All items should
+      be uncond. swapped to maintain '#rows-ordered' best_ref[].
+      This is critical for early pruning of bad plans.
+    */
+    swap_variables(JOIN_TAB*, join->best_ref[idx], *pos);
+
     if ((remaining_tables & real_table_bit) && 
         (allowed_tables & real_table_bit) &&
         !(remaining_tables & s->dependent) && 
@@ -8258,12 +8286,13 @@ best_extension_by_limited_search(JOIN   
       /* Find the best access method from 's' to the current partial plan */
       POSITION loose_scan_pos;
       best_access_path(join, s, remaining_tables, idx, FALSE, record_count, 
-                       join->positions + idx, &loose_scan_pos);
+                       position, &loose_scan_pos);
 
       /* Compute the cost of extending the plan with 's' */
-
       current_record_count= record_count * position->records_read;
-      current_read_time=    read_time + position->read_time;
+      current_read_time=    read_time
+                            + position->read_time
+                            + current_record_count / (double) TIME_FOR_COMPARE;
 
       if (has_sj)
       {
@@ -8281,15 +8310,12 @@ best_extension_by_limited_search(JOIN   
         join->positions[idx].sj_strategy= SJ_OPT_NONE;
 
       /* Expand only partial plans with lower cost than the best QEP so far */
-      if ((current_read_time +
-           current_record_count / (double) TIME_FOR_COMPARE) >= join->best_read)
+      if (current_read_time >= join->best_read)
       {
         DBUG_EXECUTE("opt", print_plan(join, idx+1,
                                        current_record_count,
                                        read_time,
-                                       (current_read_time +
-                                        current_record_count / 
-                                        (double) TIME_FOR_COMPARE),
+                                       current_read_time,
                                        "prune_by_cost"););
         backout_nj_sj_state(remaining_tables, s);
         continue;
@@ -8329,8 +8355,8 @@ best_extension_by_limited_search(JOIN   
       }
 
       if ( (search_depth > 1) && (remaining_tables & ~real_table_bit) & allowed_tables )
-      { /* Recursively expand the current partial plan */
-        swap_variables(JOIN_TAB*, join->best_ref[idx], *pos);
+      {
+        /* Explore more best extensions of plan */
         if (best_extension_by_limited_search(join,
                                              remaining_tables & ~real_table_bit,
                                              idx + 1,
@@ -8339,14 +8365,12 @@ best_extension_by_limited_search(JOIN   
                                              search_depth - 1,
                                              prune_level))
           DBUG_RETURN(TRUE);
-        swap_variables(JOIN_TAB*, join->best_ref[idx], *pos);
       }
       else
       { /*
           'join' is either the best partial QEP with 'search_depth' relations,
           or the best complete QEP so far, whichever is smaller.
         */
-        current_read_time+= current_record_count / (double) TIME_FOR_COMPARE;
         if (join->sort_by_table &&
             join->sort_by_table !=
             join->positions[join->const_tables].table->table)
@@ -8356,7 +8380,7 @@ best_extension_by_limited_search(JOIN   
              Hence it may be wrong.
           */
           current_read_time+= current_record_count;
-        if ((search_depth == 1) || (current_read_time < join->best_read))
+        if (current_read_time < join->best_read)
         {
           memcpy((uchar*) join->best_positions, (uchar*) join->positions,
                  sizeof(POSITION) * (idx + 1));
@@ -8371,6 +8395,9 @@ best_extension_by_limited_search(JOIN   
       backout_nj_sj_state(remaining_tables, s);
     }
   }
+
+  // Restore previous #rows sorted best_ref[]
+  memcpy(join->best_ref + idx, saved_refs, sizeof(JOIN_TAB*) * (join->tables-idx));
   DBUG_RETURN(FALSE);
 }
 
@@ -14397,7 +14424,7 @@ void advance_sj_state(JOIN *join, table_
   proceeds up the tree to NJ1, incrementing its counter as well. All join
   nests are now completely covered by the QEP.
 
-  restore_prev_nj_state() does the above in reverse. As seen above, the node
+  backout_nj_sj_state() does the above in reverse. As seen above, the node
   NJ1 contains the nodes t2, t3, and NJ2. Its counter being equal to 3 means
   that the plan covers t2, t3, and NJ2, @e and that the sub-plan (t4 x t5)
   completely covers NJ2. The removal of t5 from the partial plan will first
@@ -14408,7 +14435,7 @@ void advance_sj_state(JOIN *join, table_
   NJ2.
 
   SYNOPSIS
-    restore_prev_nj_state()
+    backout_nj_sj_state()
       last  join table to remove, it is assumed to be the last in current 
             partial join order.
      

No bundle (reason: useless for push emails).
Thread
bzr push into mysql-trunk branch (ole.john.aske:3700 to 3701) Bug#11766256Ole John Aske22 Feb