mirror of
https://github.com/MariaDB/server.git
synced 2025-08-07 00:04:31 +03:00
Merge 10.5 into 10.6
This commit is contained in:
@@ -161,21 +161,21 @@ class Explain_table_access;
|
||||
class Explain_basic_join : public Explain_node
|
||||
{
|
||||
public:
|
||||
enum explain_node_type get_type() { return EXPLAIN_BASIC_JOIN; }
|
||||
enum explain_node_type get_type() override { return EXPLAIN_BASIC_JOIN; }
|
||||
|
||||
Explain_basic_join(MEM_ROOT *root) : Explain_node(root), join_tabs(NULL) {}
|
||||
~Explain_basic_join();
|
||||
|
||||
bool add_table(Explain_table_access *tab, Explain_query *query);
|
||||
|
||||
uint get_select_id() { return select_id; }
|
||||
uint get_select_id() override { return select_id; }
|
||||
|
||||
uint select_id;
|
||||
|
||||
int print_explain(Explain_query *query, select_result_sink *output,
|
||||
uint8 explain_flags, bool is_analyze);
|
||||
uint8 explain_flags, bool is_analyze) override;
|
||||
void print_explain_json(Explain_query *query, Json_writer *writer,
|
||||
bool is_analyze);
|
||||
bool is_analyze) override;
|
||||
|
||||
void print_explain_json_interns(Explain_query *query, Json_writer *writer,
|
||||
bool is_analyze);
|
||||
@@ -205,7 +205,7 @@ class Explain_aggr_node;
|
||||
class Explain_select : public Explain_basic_join
|
||||
{
|
||||
public:
|
||||
enum explain_node_type get_type() { return EXPLAIN_SELECT; }
|
||||
enum explain_node_type get_type() override { return EXPLAIN_SELECT; }
|
||||
|
||||
Explain_select(MEM_ROOT *root, bool is_analyze) :
|
||||
Explain_basic_join(root),
|
||||
@@ -260,9 +260,9 @@ public:
|
||||
Explain_aggr_node* aggr_tree;
|
||||
|
||||
int print_explain(Explain_query *query, select_result_sink *output,
|
||||
uint8 explain_flags, bool is_analyze);
|
||||
uint8 explain_flags, bool is_analyze) override;
|
||||
void print_explain_json(Explain_query *query, Json_writer *writer,
|
||||
bool is_analyze);
|
||||
bool is_analyze) override;
|
||||
|
||||
Table_access_tracker *get_using_temporary_read_tracker()
|
||||
{
|
||||
@@ -299,7 +299,7 @@ class Explain_aggr_filesort : public Explain_aggr_node
|
||||
List<Item> sort_items;
|
||||
List<ORDER::enum_order> sort_directions;
|
||||
public:
|
||||
enum_explain_aggr_node_type get_type() { return AGGR_OP_FILESORT; }
|
||||
enum_explain_aggr_node_type get_type() override { return AGGR_OP_FILESORT; }
|
||||
Filesort_tracker tracker;
|
||||
|
||||
Explain_aggr_filesort(MEM_ROOT *mem_root, bool is_analyze,
|
||||
@@ -311,20 +311,20 @@ public:
|
||||
class Explain_aggr_tmp_table : public Explain_aggr_node
|
||||
{
|
||||
public:
|
||||
enum_explain_aggr_node_type get_type() { return AGGR_OP_TEMP_TABLE; }
|
||||
enum_explain_aggr_node_type get_type() override { return AGGR_OP_TEMP_TABLE; }
|
||||
};
|
||||
|
||||
class Explain_aggr_remove_dups : public Explain_aggr_node
|
||||
{
|
||||
public:
|
||||
enum_explain_aggr_node_type get_type() { return AGGR_OP_REMOVE_DUPLICATES; }
|
||||
enum_explain_aggr_node_type get_type() override { return AGGR_OP_REMOVE_DUPLICATES; }
|
||||
};
|
||||
|
||||
class Explain_aggr_window_funcs : public Explain_aggr_node
|
||||
{
|
||||
List<Explain_aggr_filesort> sorts;
|
||||
public:
|
||||
enum_explain_aggr_node_type get_type() { return AGGR_OP_WINDOW_FUNCS; }
|
||||
enum_explain_aggr_node_type get_type() override { return AGGR_OP_WINDOW_FUNCS; }
|
||||
|
||||
void print_json_members(Json_writer *writer, bool is_analyze);
|
||||
friend class Window_funcs_computation;
|
||||
@@ -351,10 +351,10 @@ public:
|
||||
fake_select_lex_explain(root, is_analyze)
|
||||
{}
|
||||
|
||||
enum explain_node_type get_type() { return EXPLAIN_UNION; }
|
||||
enum explain_node_type get_type() override { return EXPLAIN_UNION; }
|
||||
unit_common_op operation;
|
||||
|
||||
uint get_select_id()
|
||||
uint get_select_id() override
|
||||
{
|
||||
DBUG_ASSERT(union_members.elements() > 0);
|
||||
return union_members.at(0);
|
||||
@@ -377,9 +377,9 @@ public:
|
||||
union_members.append(select_no);
|
||||
}
|
||||
int print_explain(Explain_query *query, select_result_sink *output,
|
||||
uint8 explain_flags, bool is_analyze);
|
||||
uint8 explain_flags, bool is_analyze) override;
|
||||
void print_explain_json(Explain_query *query, Json_writer *writer,
|
||||
bool is_analyze);
|
||||
bool is_analyze) override;
|
||||
|
||||
const char *fake_select_type;
|
||||
bool using_filesort;
|
||||
@@ -914,8 +914,8 @@ public:
|
||||
handler_for_stats(NULL)
|
||||
{}
|
||||
|
||||
virtual enum explain_node_type get_type() { return EXPLAIN_UPDATE; }
|
||||
virtual uint get_select_id() { return 1; /* always root */ }
|
||||
enum explain_node_type get_type() override { return EXPLAIN_UPDATE; }
|
||||
uint get_select_id() override { return 1; /* always root */ }
|
||||
|
||||
const char *select_type;
|
||||
|
||||
@@ -974,10 +974,10 @@ public:
|
||||
/* The same as Explain_table_access::handler_for_stats */
|
||||
handler *handler_for_stats;
|
||||
|
||||
virtual int print_explain(Explain_query *query, select_result_sink *output,
|
||||
uint8 explain_flags, bool is_analyze);
|
||||
virtual void print_explain_json(Explain_query *query, Json_writer *writer,
|
||||
bool is_analyze);
|
||||
int print_explain(Explain_query *query, select_result_sink *output,
|
||||
uint8 explain_flags, bool is_analyze) override;
|
||||
void print_explain_json(Explain_query *query, Json_writer *writer,
|
||||
bool is_analyze) override;
|
||||
};
|
||||
|
||||
|
||||
@@ -997,13 +997,13 @@ public:
|
||||
|
||||
StringBuffer<64> table_name;
|
||||
|
||||
enum explain_node_type get_type() { return EXPLAIN_INSERT; }
|
||||
uint get_select_id() { return 1; /* always root */ }
|
||||
enum explain_node_type get_type() override { return EXPLAIN_INSERT; }
|
||||
uint get_select_id() override { return 1; /* always root */ }
|
||||
|
||||
int print_explain(Explain_query *query, select_result_sink *output,
|
||||
uint8 explain_flags, bool is_analyze);
|
||||
void print_explain_json(Explain_query *query, Json_writer *writer,
|
||||
bool is_analyze);
|
||||
int print_explain(Explain_query *query, select_result_sink *output,
|
||||
uint8 explain_flags, bool is_analyze) override;
|
||||
void print_explain_json(Explain_query *query, Json_writer *writer,
|
||||
bool is_analyze) override;
|
||||
};
|
||||
|
||||
|
||||
@@ -1024,13 +1024,13 @@ public:
|
||||
*/
|
||||
bool deleting_all_rows;
|
||||
|
||||
virtual enum explain_node_type get_type() { return EXPLAIN_DELETE; }
|
||||
virtual uint get_select_id() { return 1; /* always root */ }
|
||||
enum explain_node_type get_type() override { return EXPLAIN_DELETE; }
|
||||
uint get_select_id() override { return 1; /* always root */ }
|
||||
|
||||
virtual int print_explain(Explain_query *query, select_result_sink *output,
|
||||
uint8 explain_flags, bool is_analyze);
|
||||
virtual void print_explain_json(Explain_query *query, Json_writer *writer,
|
||||
bool is_analyze);
|
||||
int print_explain(Explain_query *query, select_result_sink *output,
|
||||
uint8 explain_flags, bool is_analyze) override;
|
||||
void print_explain_json(Explain_query *query, Json_writer *writer,
|
||||
bool is_analyze) override;
|
||||
};
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user