Public Member Functions |
| message_ctx (context *parent_arg) |
virtual bool | format_body (Opt_trace_context *json, Opt_trace_object *obj) |
virtual size_t | id (bool hide) |
virtual bool | cacheable () |
virtual bool | dependent () |
virtual qep_row * | entry () |
virtual bool | format_derived (Opt_trace_context *json) |
| Helper function to format output for derived subquery if any.
|
virtual bool | format_where (Opt_trace_context *json) |
| Helper function to format output for associated WHERE subqueries if any.
|
virtual bool | find_and_set_derived (context *subquery) |
virtual bool | add_where_subquery (subquery_ctx *ctx, SELECT_LEX_UNIT *subquery) |
| joinable_ctx (Explain_context_enum type_arg, const char *name_arg, context *parent_arg) |
| context (Explain_context_enum type_arg, const char *name_arg, context *parent_arg) |
virtual bool | format (Opt_trace_context *json) |
bool | is_query_block () const |
virtual void | set_child (context *child) |
virtual void | set_union_result (union_result_ctx *ctx) |
| associate CTX_UNION_RESULT node with CTX_UNION node
|
virtual bool | add_subquery (subquery_list_enum subquery_type, subquery_ctx *ctx) |
virtual bool | format_nested_loop (Opt_trace_context *json) |
virtual bool | add_join_tab (joinable_ctx *ctx) |
virtual void | set_sort (sort_ctx *ctx) |
virtual bool | add_query_spec (context *ctx) |
virtual bool | format_unit (Opt_trace_context *json) |
| Helper function to format output for HAVING, ORDER/GROUP BY subqueries.
|
| Explain_context (Explain_context_enum type_arg) |
Public Member Functions inherited from opt_explain_json_namespace::table_with_where_and_derived |
| table_with_where_and_derived (Explain_context_enum type_arg, const char *name_arg, context *parent_arg) |
| table_base_ctx (Explain_context_enum type_arg, const char *name_arg, context *parent_arg) |
Node class for CTX_MESSAGE
This class is designed to represent fake tables with some messages in the "extra" column ("Impossible where" etc). We do EXPLAIN of these fake tables to replace explanation of: 1) usual actual JOIN_TABs of the whole JOIN or 2) a modifying TABLE of single-table UPDATE/DELETE/etc. So, message_ctx always represent a single half-empty fake table in a "query_block" node with optional subqueries.
Definition at line 797 of file opt_explain_json.cc.