-
Olav Sandstaa authored
WL#7339 started to use more correct records per key estimates from InnoDB. This caused the cost estimate for the original query plan to become four times higher than previous, which caused another query plan to be selected. The new selected query plan does a table scan on the orders table. This table has 1.5 million records. On this table we have the following condition: orders.o_orderstatus = 'F' This is used for calculating the condition filter effect for this table. With the current guestimate for equality conditions of 0.005, this caused the estimated number of partial rows to be produced from this table to be only 7500. In reality, 730.000 rows were produced. The cause for this very wrong estimate is that the o_orderstatus column only contains three distinct values and almost half of the records have the value 'F'. To make the condition filter produce a better (more conservative) estimate for cases like this and to reduce the likelihood of similar regressions, the fix for this problem is to increase the condition filter constant for equality estimates to 0.1. With this we estimate that 1 of 10 records will pass the filter (instead of only 1 out of 200). Changes in tests: @ mysql-test/r/compress.result Changes in filtered estimate in explain output. @ mysql-test/r/derived.result Mostly changes to filtered estimates. One change in query plan. This query now gets the same plan as it had before WL#6635. @ mysql-test/r/ds_mrr-big.result Changes in filtered estimate in explain output. @ mysql-test/r/eq_range_idx_stat.result Changes in filtered estimate in explain output. @ mysql-test/r/explain_for_connection_rqg_json.result Mostly changes to filtered and rows estimates. One query has changes to its query plan. @ mysql-test/r/explain_for_connection_rqg_trad.result Mostly changes to filtered and rows estimates. One query has changes to its query plan. @ mysql-test/r/explain_other.result Changes in filtered estimate in explain output. @ mysql-test/r/filter_single_col_idx_big.result Changes in filtered estimate in explain output. @ mysql-test/r/filter_single_col_idx_small.result Mostly changes to filtered estimates. One query has changes to its query plan: changes from using FirstMatch to do materialization. @ mysql-test/t/filter_single_col_idx_small.test Added test to verify that the filter estimate for basic filter constants is not less than one row @ mysql-test/r/greedy_optimizer.result Mostly changes to filtered and cost estimates. Eight queries has changes in query plans. Four of these changes back to the query plan they had before WL#6335 was pushed. The four last had similar changes in query plans as for when WL#6635 was pushed. @ mysql-test/r/greedy_search.result Mostly changes to filtered estimates. Two queries has changes to its query plan. One of these are returned to what it was before WL#6635 was pushed. The other has similar changes to as what was introduced by WL#6335. The number of partial query plans for some queries are increased. With the exception of one of these, all new numbers are below what it was before WL#6335. The one the has a very high increas in the number of partial query plans, changes from 22201 to 5799004. Before WL#6635 this query considered 735518 partial query plans. @ mysql-test/r/group_by.result Changes in filtered estimate in explain output. @ mysql-test/r/group_min_max.result Changes in filtered estimate in explain output. @ mysql-test/r/group_min_max_innodb.result Changes in filtered estimate in explain output. @ mysql-test/r/heap.result Changes in filtered estimate in explain output. @ mysql-test/r/heap_hash.result One change in query plan. The new plan is more similar to what the query plan was before WL#6635 was pushed. It has the same join order but uses table scan on the second table instead of ref access as it did before WL#6635. @ mysql-test/r/index_merge_innodb.result Changes in filtered estimate in explain output. @ mysql-test/r/index_merge_intersect_dml.result Changes in filtered estimate in explain output. @ mysql-test/r/index_merge_myisam.result Changes in filtered estimate in explain output. @ mysql-test/r/innodb_explain_json_non_select_all.result Changes in filtered, rows and cost estimates in explain output. @ mysql-test/r/innodb_explain_json_non_select_none.result Changes in filtered, rows and estimates in explain output. @ mysql-test/r/innodb_explain_non_select_all.result Changes in filtered estimate in explain output. @ mysql-test/r/innodb_explain_non_select_none.result Changes in filtered estimate in explain output. @ mysql-test/r/innodb_icp.result Changes in filtered estimate in explain output. @ mysql-test/r/innodb_icp_all.result Changes in filtered estimate in explain output. @ mysql-test/r/innodb_icp_none.result Changes in filtered estimate in explain output. @ mysql-test/r/join.result Changes in filtered estimate in explain output. @ mysql-test/r/join_cache_bka.result Changes in filtered estimate in explain output. @ mysql-test/r/join_cache_bka_nixbnl.result Changes in filtered estimate in explain output. @ mysql-test/r/join_cache_bkaunique.result Changes in filtered estimate in explain output. @ mysql-test/r/join_cache_bnl.result Changes in filtered estimate in explain output. @ mysql-test/r/join_cache_nojb.result Changes in filtered estimate in explain output. @ mysql-test/r/join_outer.result Changes in filtered estimate in explain output. @ mysql-test/r/join_outer_bka.result Changes in filtered estimate in explain output. @ mysql-test/r/join_outer_bka_nixbnl.result Changes in filtered estimate in explain output. @ mysql-test/r/myisam_explain_json_non_select_all.result Changes in filtered, rows and cost estimates in explain output. @ mysql-test/r/myisam_explain_json_non_select_none.result Changes in filtered, rows and cost estimates in explain output. @ mysql-test/r/myisam_explain_non_select_all.result Changes in filtered estimate in explain output. @ mysql-test/r/myisam_explain_non_select_none.result Changes in filtered estimate in explain output. @ mysql-test/r/myisam_icp.result Changes in filtered estimate in explain output. @ mysql-test/r/myisam_icp_all.result Changes in filtered estimate in explain output. @ mysql-test/r/myisam_icp_none.result Changes in filtered estimate in explain output. @ mysql-test/r/named_pipe.result Changes in filtered estimate in explain output. @ mysql-test/r/negation_elimination.result Changes in filtered estimate in explain output. @ mysql-test/r/null_key_all.result Changes in filtered estimate in explain output. @ mysql-test/r/null_key_icp.result Changes in filtered estimate in explain output. @ mysql-test/r/null_key_none.result Changes in filtered estimate in explain output. @ mysql-test/r/order_by_all.result One query has changes to query plan. The new query plan is the same as this query had before WL#6635 was pushed. @ mysql-test/r/order_by_icp_mrr.result One query has changes to query plan. The new query plan is the same as this query had before WL#6635 was pushed. @ mysql-test/r/order_by_none.result One query has changes to query plan. The new query plan is the same as this query had before WL#6635 was pushed. @ mysql-test/r/partition_locking.result Changes in filtered estimate in explain output. @ mysql-test/r/partition_pruning.result Changes in filtered estimate in explain output. @ mysql-test/r/range_all.result Changes in filtered estimate in explain output. @ mysql-test/r/range_icp.result Changes in filtered estimate in explain output. @ mysql-test/r/range_icp_mrr.result Changes in filtered estimate in explain output. @ mysql-test/r/range_mrr.result Changes in filtered estimate in explain output. @ mysql-test/r/range_mrr_cost.result Changes in filtered estimate in explain output. @ mysql-test/r/range_none.result Changes in filtered estimate in explain output. @ mysql-test/r/select_all.result Changes in filtered estimate in explain output. @ mysql-test/r/select_all_bka.result Changes in filtered estimate in explain output. @ mysql-test/r/select_all_bka_nixbnl.result Changes in filtered estimate in explain output. @ mysql-test/r/select_icp_mrr.result Changes in filtered estimate in explain output. @ mysql-test/r/select_icp_mrr_bka.result Changes in filtered estimate in explain output. @ mysql-test/r/select_icp_mrr_bka_nixbnl.result Changes in filtered estimate in explain output. @ mysql-test/r/select_none.result Changes in filtered estimate in explain output. @ mysql-test/r/select_none_bka.result Changes in filtered estimate in explain output. @ mysql-test/r/select_none_bka_nixbnl.result Changes in filtered estimate in explain output. @ mysql-test/r/shm.result Changes in filtered estimate in explain output. @ mysql-test/r/ssl.result Changes in filtered estimate in explain output. @ mysql-test/r/ssl_compress.result Changes in filtered estimate in explain output. @ mysql-test/r/subquery_all.result Changes in filtered estimate in explain output. @ mysql-test/r/subquery_all_bka.result Changes in filtered estimate in explain output. @ mysql-test/r/subquery_all_bka_nixbnl.result Changes in filtered estimate in explain output. @ mysql-test/r/subquery_nomat_nosj.result Changes in filtered estimate in explain output. @ mysql-test/r/subquery_nomat_nosj_bka.result Changes in filtered estimate in explain output. @ mysql-test/r/subquery_nomat_nosj_bka_nixbnl.result Changes in filtered estimate in explain output. @ mysql-test/r/subquery_none.result Changes in filtered estimate in explain output. @ mysql-test/r/subquery_none_bka.result Changes in filtered estimate in explain output. @ mysql-test/r/subquery_none_bka_nixbnl.result Changes in filtered estimate in explain output. @ mysql-test/r/subquery_sj_all.result Mostly changes to filtered, rows and cost estimates. Three queries has plan changes. Two of these returns to what the plan was before WL#6635. The last has changes that makes the plan look more like it was before WL#6635 but not identical. @ mysql-test/r/subquery_sj_all_bka.result Mostly changes to filtered, rows and cost estimates. Seven queries have real plan changes. Four of these returns to the plan they had before WL#6635. @ mysql-test/r/subquery_sj_all_bka_nixbnl.result Mostly changes to filtered, rows and cost estimates. Seven queries have real plan changes. Four of these returns to the plan they had before WL#6635. @ mysql-test/r/subquery_sj_all_bkaunique.result Mostly changes to filtered, rows and cost estimates. Eight queries have real plan changes. Five of these returns to the plan they had before WL#6635. @ mysql-test/r/subquery_sj_dupsweed.result Mostly changes to filtered, rows and cost estimates. One query has real plan changes. The new query plan is the same as this query had before WL#6635. @ mysql-test/r/subquery_sj_dupsweed_bka.result Mostly changes to filtered, rows and cost estimates. Two queries have real plan changes. The new query plans are the same as these queries had before WL#6635. @ mysql-test/r/subquery_sj_dupsweed_bka_nixbnl.result Changes to filtered, rows and cost estimates. @ mysql-test/r/subquery_sj_dupsweed_bkaunique.result Mostly changes to filtered, rows and cost estimates. Two queries have real plan changes. The new query plans are the same as these queries had before WL#6635. @ mysql-test/r/subquery_sj_firstmatch.result Mostly changes to filtered, rows and cost estimates. One query has real plan changes. The new query plan is the same as this query had before WL#6635. @ mysql-test/r/subquery_sj_firstmatch_bka.result Mostly changes to filtered, rows and cost estimates. One query has real plan changes. The new query plan is the same as this query had before WL#6635. @ mysql-test/r/subquery_sj_firstmatch_bka_nixbnl.result Changes to filtered, rows and cost estimates. @ mysql-test/r/subquery_sj_firstmatch_bkaunique.result Mostly changes to filtered, rows and cost estimates. One query has real plan changes. The new query plan is the same as this query had before WL#6635. @ mysql-test/r/subquery_sj_loosescan.result Mostly changes to filtered, rows and cost estimates. Four queries have real plan changes. The new query plans are the same as these queries had before WL#6635. @ mysql-test/r/subquery_sj_loosescan_bka.result Mostly changes to filtered, rows and cost estimates. Four queries have real plan changes. The new query plans are the same as these queries had before WL#6635. @ mysql-test/r/subquery_sj_loosescan_bka_nixbnl.result Mostly changes to filtered, rows and cost estimates. Two queries have real plan changes. The new query plans are the same as these queries had before WL#6635. @ mysql-test/r/subquery_sj_loosescan_bkaunique.result Mostly changes to filtered, rows and cost estimates. Four queries have real plan changes. The new query plans are the same as these queries had before WL#6635. @ mysql-test/r/subquery_sj_mat.result Mostly changes to filtered, rows and cost estimates. Eight queries have real plan changes. Seven of these returns to the plan they had before WL#6635. @ mysql-test/r/subquery_sj_mat_bka.result Mostly changes to filtered, rows and cost estimates. Eight queries have real plan changes. Seven of these returns to the plan they had before WL#6635. @ mysql-test/r/subquery_sj_mat_bka_nixbnl.result Mostly changes to filtered, rows and cost estimates. Seven queries have real plan changes. Six of these returns to the plan they had before WL#6635. @ mysql-test/r/subquery_sj_mat_bkaunique.result Mostly changes to filtered, rows and cost estimates. Eight queries have real plan changes. Seven of these returns to the plan they had before WL#6635. @ mysql-test/r/subquery_sj_mat_nosj.result Changes to filtered and cost estimates in explain output. @ mysql-test/r/subquery_sj_none.result Changes to filtered, rows and cost estimates in explain output. @ mysql-test/r/subquery_sj_none_bka.result Changes to filtered, rows and cost estimates in explain output. @ mysql-test/r/subquery_sj_none_bka_nixbnl.result Changes to filtered, rows and cost estimates in explain output. @ mysql-test/r/subquery_sj_none_bkaunique.result Changes to filtered, rows and cost estimates in explain output. @ mysql-test/r/subselect_innodb.result Changes in filtered estimate in explain output. @ mysql-test/r/type_temporal_fractional.result Changes in filtered estimate in explain output. @ mysql-test/r/wl6711_heap_to_disk.result Changes in filtered estimate in explain output. @ mysql-test/suite/innodb/r/innodb_lock_wait_timeout_1.result Changes in filtered estimate in explain output. @ mysql-test/suite/opt_trace/r/general2_no_prot.result Changes in rows and cost estimates in explain output. @ mysql-test/suite/opt_trace/r/general2_ps_prot.result Changes in rows and cost estimates in explain output. @ mysql-test/suite/opt_trace/r/range_no_prot.result Changes in filtered and rows estimates in explain output. @ mysql-test/suite/opt_trace/r/range_ps_prot.result Changes in filtered estimate in explain output. @ mysql-test/suite/opt_trace/r/subquery_no_prot.result Changes in filtered, rows and cost estimates in explain output. @ mysql-test/suite/opt_trace/r/subquery_ps_prot.result Changes in filtered, rows and cost estimates in explain output. @ mysql-test/suite/parts/r/partition_alter3_innodb.result Changes in filtered estimate in explain output. @ mysql-test/suite/parts/r/partition_alter3_myisam.result Changes in filtered estimate in explain output. @ mysql-test/suite/perfschema/r/batch_table_io_func.result Changes in filtered estimate in explain output. @ sql/item.h Change the value for the condition filter constant COND_FILTER_EQUALITY from 0.005 to 0.1. @ unittest/gunit/item_filter-t.cc Change in unit test for condition filter for IN lists: Reduced from having six values in the IN list to four values. The reason is that with six values in the IN list the calculated condition filter will be larger than 0.5 and then rounded down to 0.5.
Olav Sandstaa authoredWL#7339 started to use more correct records per key estimates from InnoDB. This caused the cost estimate for the original query plan to become four times higher than previous, which caused another query plan to be selected. The new selected query plan does a table scan on the orders table. This table has 1.5 million records. On this table we have the following condition: orders.o_orderstatus = 'F' This is used for calculating the condition filter effect for this table. With the current guestimate for equality conditions of 0.005, this caused the estimated number of partial rows to be produced from this table to be only 7500. In reality, 730.000 rows were produced. The cause for this very wrong estimate is that the o_orderstatus column only contains three distinct values and almost half of the records have the value 'F'. To make the condition filter produce a better (more conservative) estimate for cases like this and to reduce the likelihood of similar regressions, the fix for this problem is to increase the condition filter constant for equality estimates to 0.1. With this we estimate that 1 of 10 records will pass the filter (instead of only 1 out of 200). Changes in tests: @ mysql-test/r/compress.result Changes in filtered estimate in explain output. @ mysql-test/r/derived.result Mostly changes to filtered estimates. One change in query plan. This query now gets the same plan as it had before WL#6635. @ mysql-test/r/ds_mrr-big.result Changes in filtered estimate in explain output. @ mysql-test/r/eq_range_idx_stat.result Changes in filtered estimate in explain output. @ mysql-test/r/explain_for_connection_rqg_json.result Mostly changes to filtered and rows estimates. One query has changes to its query plan. @ mysql-test/r/explain_for_connection_rqg_trad.result Mostly changes to filtered and rows estimates. One query has changes to its query plan. @ mysql-test/r/explain_other.result Changes in filtered estimate in explain output. @ mysql-test/r/filter_single_col_idx_big.result Changes in filtered estimate in explain output. @ mysql-test/r/filter_single_col_idx_small.result Mostly changes to filtered estimates. One query has changes to its query plan: changes from using FirstMatch to do materialization. @ mysql-test/t/filter_single_col_idx_small.test Added test to verify that the filter estimate for basic filter constants is not less than one row @ mysql-test/r/greedy_optimizer.result Mostly changes to filtered and cost estimates. Eight queries has changes in query plans. Four of these changes back to the query plan they had before WL#6335 was pushed. The four last had similar changes in query plans as for when WL#6635 was pushed. @ mysql-test/r/greedy_search.result Mostly changes to filtered estimates. Two queries has changes to its query plan. One of these are returned to what it was before WL#6635 was pushed. The other has similar changes to as what was introduced by WL#6335. The number of partial query plans for some queries are increased. With the exception of one of these, all new numbers are below what it was before WL#6335. The one the has a very high increas in the number of partial query plans, changes from 22201 to 5799004. Before WL#6635 this query considered 735518 partial query plans. @ mysql-test/r/group_by.result Changes in filtered estimate in explain output. @ mysql-test/r/group_min_max.result Changes in filtered estimate in explain output. @ mysql-test/r/group_min_max_innodb.result Changes in filtered estimate in explain output. @ mysql-test/r/heap.result Changes in filtered estimate in explain output. @ mysql-test/r/heap_hash.result One change in query plan. The new plan is more similar to what the query plan was before WL#6635 was pushed. It has the same join order but uses table scan on the second table instead of ref access as it did before WL#6635. @ mysql-test/r/index_merge_innodb.result Changes in filtered estimate in explain output. @ mysql-test/r/index_merge_intersect_dml.result Changes in filtered estimate in explain output. @ mysql-test/r/index_merge_myisam.result Changes in filtered estimate in explain output. @ mysql-test/r/innodb_explain_json_non_select_all.result Changes in filtered, rows and cost estimates in explain output. @ mysql-test/r/innodb_explain_json_non_select_none.result Changes in filtered, rows and estimates in explain output. @ mysql-test/r/innodb_explain_non_select_all.result Changes in filtered estimate in explain output. @ mysql-test/r/innodb_explain_non_select_none.result Changes in filtered estimate in explain output. @ mysql-test/r/innodb_icp.result Changes in filtered estimate in explain output. @ mysql-test/r/innodb_icp_all.result Changes in filtered estimate in explain output. @ mysql-test/r/innodb_icp_none.result Changes in filtered estimate in explain output. @ mysql-test/r/join.result Changes in filtered estimate in explain output. @ mysql-test/r/join_cache_bka.result Changes in filtered estimate in explain output. @ mysql-test/r/join_cache_bka_nixbnl.result Changes in filtered estimate in explain output. @ mysql-test/r/join_cache_bkaunique.result Changes in filtered estimate in explain output. @ mysql-test/r/join_cache_bnl.result Changes in filtered estimate in explain output. @ mysql-test/r/join_cache_nojb.result Changes in filtered estimate in explain output. @ mysql-test/r/join_outer.result Changes in filtered estimate in explain output. @ mysql-test/r/join_outer_bka.result Changes in filtered estimate in explain output. @ mysql-test/r/join_outer_bka_nixbnl.result Changes in filtered estimate in explain output. @ mysql-test/r/myisam_explain_json_non_select_all.result Changes in filtered, rows and cost estimates in explain output. @ mysql-test/r/myisam_explain_json_non_select_none.result Changes in filtered, rows and cost estimates in explain output. @ mysql-test/r/myisam_explain_non_select_all.result Changes in filtered estimate in explain output. @ mysql-test/r/myisam_explain_non_select_none.result Changes in filtered estimate in explain output. @ mysql-test/r/myisam_icp.result Changes in filtered estimate in explain output. @ mysql-test/r/myisam_icp_all.result Changes in filtered estimate in explain output. @ mysql-test/r/myisam_icp_none.result Changes in filtered estimate in explain output. @ mysql-test/r/named_pipe.result Changes in filtered estimate in explain output. @ mysql-test/r/negation_elimination.result Changes in filtered estimate in explain output. @ mysql-test/r/null_key_all.result Changes in filtered estimate in explain output. @ mysql-test/r/null_key_icp.result Changes in filtered estimate in explain output. @ mysql-test/r/null_key_none.result Changes in filtered estimate in explain output. @ mysql-test/r/order_by_all.result One query has changes to query plan. The new query plan is the same as this query had before WL#6635 was pushed. @ mysql-test/r/order_by_icp_mrr.result One query has changes to query plan. The new query plan is the same as this query had before WL#6635 was pushed. @ mysql-test/r/order_by_none.result One query has changes to query plan. The new query plan is the same as this query had before WL#6635 was pushed. @ mysql-test/r/partition_locking.result Changes in filtered estimate in explain output. @ mysql-test/r/partition_pruning.result Changes in filtered estimate in explain output. @ mysql-test/r/range_all.result Changes in filtered estimate in explain output. @ mysql-test/r/range_icp.result Changes in filtered estimate in explain output. @ mysql-test/r/range_icp_mrr.result Changes in filtered estimate in explain output. @ mysql-test/r/range_mrr.result Changes in filtered estimate in explain output. @ mysql-test/r/range_mrr_cost.result Changes in filtered estimate in explain output. @ mysql-test/r/range_none.result Changes in filtered estimate in explain output. @ mysql-test/r/select_all.result Changes in filtered estimate in explain output. @ mysql-test/r/select_all_bka.result Changes in filtered estimate in explain output. @ mysql-test/r/select_all_bka_nixbnl.result Changes in filtered estimate in explain output. @ mysql-test/r/select_icp_mrr.result Changes in filtered estimate in explain output. @ mysql-test/r/select_icp_mrr_bka.result Changes in filtered estimate in explain output. @ mysql-test/r/select_icp_mrr_bka_nixbnl.result Changes in filtered estimate in explain output. @ mysql-test/r/select_none.result Changes in filtered estimate in explain output. @ mysql-test/r/select_none_bka.result Changes in filtered estimate in explain output. @ mysql-test/r/select_none_bka_nixbnl.result Changes in filtered estimate in explain output. @ mysql-test/r/shm.result Changes in filtered estimate in explain output. @ mysql-test/r/ssl.result Changes in filtered estimate in explain output. @ mysql-test/r/ssl_compress.result Changes in filtered estimate in explain output. @ mysql-test/r/subquery_all.result Changes in filtered estimate in explain output. @ mysql-test/r/subquery_all_bka.result Changes in filtered estimate in explain output. @ mysql-test/r/subquery_all_bka_nixbnl.result Changes in filtered estimate in explain output. @ mysql-test/r/subquery_nomat_nosj.result Changes in filtered estimate in explain output. @ mysql-test/r/subquery_nomat_nosj_bka.result Changes in filtered estimate in explain output. @ mysql-test/r/subquery_nomat_nosj_bka_nixbnl.result Changes in filtered estimate in explain output. @ mysql-test/r/subquery_none.result Changes in filtered estimate in explain output. @ mysql-test/r/subquery_none_bka.result Changes in filtered estimate in explain output. @ mysql-test/r/subquery_none_bka_nixbnl.result Changes in filtered estimate in explain output. @ mysql-test/r/subquery_sj_all.result Mostly changes to filtered, rows and cost estimates. Three queries has plan changes. Two of these returns to what the plan was before WL#6635. The last has changes that makes the plan look more like it was before WL#6635 but not identical. @ mysql-test/r/subquery_sj_all_bka.result Mostly changes to filtered, rows and cost estimates. Seven queries have real plan changes. Four of these returns to the plan they had before WL#6635. @ mysql-test/r/subquery_sj_all_bka_nixbnl.result Mostly changes to filtered, rows and cost estimates. Seven queries have real plan changes. Four of these returns to the plan they had before WL#6635. @ mysql-test/r/subquery_sj_all_bkaunique.result Mostly changes to filtered, rows and cost estimates. Eight queries have real plan changes. Five of these returns to the plan they had before WL#6635. @ mysql-test/r/subquery_sj_dupsweed.result Mostly changes to filtered, rows and cost estimates. One query has real plan changes. The new query plan is the same as this query had before WL#6635. @ mysql-test/r/subquery_sj_dupsweed_bka.result Mostly changes to filtered, rows and cost estimates. Two queries have real plan changes. The new query plans are the same as these queries had before WL#6635. @ mysql-test/r/subquery_sj_dupsweed_bka_nixbnl.result Changes to filtered, rows and cost estimates. @ mysql-test/r/subquery_sj_dupsweed_bkaunique.result Mostly changes to filtered, rows and cost estimates. Two queries have real plan changes. The new query plans are the same as these queries had before WL#6635. @ mysql-test/r/subquery_sj_firstmatch.result Mostly changes to filtered, rows and cost estimates. One query has real plan changes. The new query plan is the same as this query had before WL#6635. @ mysql-test/r/subquery_sj_firstmatch_bka.result Mostly changes to filtered, rows and cost estimates. One query has real plan changes. The new query plan is the same as this query had before WL#6635. @ mysql-test/r/subquery_sj_firstmatch_bka_nixbnl.result Changes to filtered, rows and cost estimates. @ mysql-test/r/subquery_sj_firstmatch_bkaunique.result Mostly changes to filtered, rows and cost estimates. One query has real plan changes. The new query plan is the same as this query had before WL#6635. @ mysql-test/r/subquery_sj_loosescan.result Mostly changes to filtered, rows and cost estimates. Four queries have real plan changes. The new query plans are the same as these queries had before WL#6635. @ mysql-test/r/subquery_sj_loosescan_bka.result Mostly changes to filtered, rows and cost estimates. Four queries have real plan changes. The new query plans are the same as these queries had before WL#6635. @ mysql-test/r/subquery_sj_loosescan_bka_nixbnl.result Mostly changes to filtered, rows and cost estimates. Two queries have real plan changes. The new query plans are the same as these queries had before WL#6635. @ mysql-test/r/subquery_sj_loosescan_bkaunique.result Mostly changes to filtered, rows and cost estimates. Four queries have real plan changes. The new query plans are the same as these queries had before WL#6635. @ mysql-test/r/subquery_sj_mat.result Mostly changes to filtered, rows and cost estimates. Eight queries have real plan changes. Seven of these returns to the plan they had before WL#6635. @ mysql-test/r/subquery_sj_mat_bka.result Mostly changes to filtered, rows and cost estimates. Eight queries have real plan changes. Seven of these returns to the plan they had before WL#6635. @ mysql-test/r/subquery_sj_mat_bka_nixbnl.result Mostly changes to filtered, rows and cost estimates. Seven queries have real plan changes. Six of these returns to the plan they had before WL#6635. @ mysql-test/r/subquery_sj_mat_bkaunique.result Mostly changes to filtered, rows and cost estimates. Eight queries have real plan changes. Seven of these returns to the plan they had before WL#6635. @ mysql-test/r/subquery_sj_mat_nosj.result Changes to filtered and cost estimates in explain output. @ mysql-test/r/subquery_sj_none.result Changes to filtered, rows and cost estimates in explain output. @ mysql-test/r/subquery_sj_none_bka.result Changes to filtered, rows and cost estimates in explain output. @ mysql-test/r/subquery_sj_none_bka_nixbnl.result Changes to filtered, rows and cost estimates in explain output. @ mysql-test/r/subquery_sj_none_bkaunique.result Changes to filtered, rows and cost estimates in explain output. @ mysql-test/r/subselect_innodb.result Changes in filtered estimate in explain output. @ mysql-test/r/type_temporal_fractional.result Changes in filtered estimate in explain output. @ mysql-test/r/wl6711_heap_to_disk.result Changes in filtered estimate in explain output. @ mysql-test/suite/innodb/r/innodb_lock_wait_timeout_1.result Changes in filtered estimate in explain output. @ mysql-test/suite/opt_trace/r/general2_no_prot.result Changes in rows and cost estimates in explain output. @ mysql-test/suite/opt_trace/r/general2_ps_prot.result Changes in rows and cost estimates in explain output. @ mysql-test/suite/opt_trace/r/range_no_prot.result Changes in filtered and rows estimates in explain output. @ mysql-test/suite/opt_trace/r/range_ps_prot.result Changes in filtered estimate in explain output. @ mysql-test/suite/opt_trace/r/subquery_no_prot.result Changes in filtered, rows and cost estimates in explain output. @ mysql-test/suite/opt_trace/r/subquery_ps_prot.result Changes in filtered, rows and cost estimates in explain output. @ mysql-test/suite/parts/r/partition_alter3_innodb.result Changes in filtered estimate in explain output. @ mysql-test/suite/parts/r/partition_alter3_myisam.result Changes in filtered estimate in explain output. @ mysql-test/suite/perfschema/r/batch_table_io_func.result Changes in filtered estimate in explain output. @ sql/item.h Change the value for the condition filter constant COND_FILTER_EQUALITY from 0.005 to 0.1. @ unittest/gunit/item_filter-t.cc Change in unit test for condition filter for IN lists: Reduced from having six values in the IN list to four values. The reason is that with six values in the IN list the calculated condition filter will be larger than 0.5 and then rounded down to 0.5.
Loading