From b44e28af6f4cb839a9de896e95e5652a81961889 Mon Sep 17 00:00:00 2001 From: Monty Date: Mon, 9 May 2022 11:36:44 +0300 Subject: [PATCH] Simple optimization: Remove JOIN::set_group_rpa as it is not needed --- sql/sql_select.cc | 8 +------- sql/sql_select.h | 2 -- 2 files changed, 1 insertion(+), 9 deletions(-) diff --git a/sql/sql_select.cc b/sql/sql_select.cc index 9169ceca236..102dbe12227 100644 --- a/sql/sql_select.cc +++ b/sql/sql_select.cc @@ -532,7 +532,6 @@ void JOIN::init(THD *thd_arg, List &fields_arg, no_const_tables= FALSE; first_select= sub_select; - set_group_rpa= false; group_sent= 0; outer_ref_cond= pseudo_bits_cond= NULL; @@ -4467,7 +4466,6 @@ JOIN::reinit() if (current_ref_ptrs != items0) { set_items_ref_array(items0); - set_group_rpa= false; } /* need to reset ref access state (see join_read_key) */ @@ -15383,7 +15381,6 @@ void JOIN::cleanup(bool full) if (current_ref_ptrs != items0) { set_items_ref_array(items0); - set_group_rpa= false; } DBUG_VOID_RETURN; } @@ -23647,11 +23644,8 @@ end_send_group(JOIN *join, JOIN_TAB *join_tab, bool end_of_records) List *fields= join_tab ? (join_tab-1)->fields : join->fields; DBUG_ENTER("end_send_group"); - if (!join->items3.is_null() && !join->set_group_rpa) - { - join->set_group_rpa= true; + if (!join->items3.is_null() && join->current_ref_ptrs != join->items3) join->set_items_ref_array(join->items3); - } if (!join->first_record || end_of_records || (idx=test_if_group_changed(join->group_fields)) >= 0) diff --git a/sql/sql_select.h b/sql/sql_select.h index ec13eecd4d6..0ac33b9303e 100644 --- a/sql/sql_select.h +++ b/sql/sql_select.h @@ -1574,8 +1574,6 @@ public: /* SJM nests that are executed with SJ-Materialization strategy */ List sjm_info_list; - /** TRUE <=> ref_pointer_array is set to items3. */ - bool set_group_rpa; /** Exec time only: TRUE <=> current group has been sent */ bool group_sent; /**