| My Project
   
    | 
 
  
 | 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) | 
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.
| virtual bool opt_explain_json_namespace::message_ctx::add_where_subquery | ( | subquery_ctx * | ctx, | 
| SELECT_LEX_UNIT * | subquery | ||
| ) |  [inline, virtual] | 
Associate WHERE subqueries of given context and unit with this object
| ctx | Context of WHERE subquery | 
| subquery | For CTX_JOIN_TAB: match given unit with a previously collected by the register_where_subquery function. | 
Reimplemented from opt_explain_json_namespace::context.
| virtual bool opt_explain_json_namespace::message_ctx::find_and_set_derived | ( | context * | subquery | ) |  [inline, virtual] | 
Try to associate a derived subquery node with this or underlying node
| subquery | Derived subquery node | 
| true | Success | 
| false | Can't associate: this node or its child nodes are not derived from the subquery | 
Reimplemented from opt_explain_json_namespace::context.
| virtual bool opt_explain_json_namespace::message_ctx::format_body | ( | Opt_trace_context * | json, | 
| Opt_trace_object * | obj | ||
| ) |  [inline, virtual] | 
Format JSON object body
| json | Formatter | 
| obj | Object of this body | 
| false | Ok | 
| true | Error | 
Implements opt_explain_json_namespace::context.
| virtual size_t opt_explain_json_namespace::message_ctx::id | ( | bool | hide | ) |  [inline, virtual] | 
Analogue of the "id" column in the traditional EXPLAIN output
| hide | if true, ban the output of K_SELECT_ID JSON property in the underlying table_with_where_and_derived_ctx objects | 
Reimplemented from opt_explain_json_namespace::table_with_where_and_derived.
 1.7.6.1
 1.7.6.1