|
PostgreSQL Source Code git master
|
#include "postgres.h"#include "catalog/pg_class.h"#include "commands/defrem.h"#include "commands/explain.h"#include "commands/explain_format.h"#include "commands/explain_state.h"#include "fmgr.h"#include "parser/parsetree.h"#include "storage/lock.h"#include "utils/builtins.h"#include "utils/lsyscache.h"
Go to the source code of this file.
Data Structures | |
| struct | overexplain_options |
Variables | |
| static int | es_extension_id |
| static explain_per_node_hook_type | prev_explain_per_node_hook |
| static explain_per_plan_hook_type | prev_explain_per_plan_hook |
Definition at line 68 of file pg_overexplain.c.
References es_extension_id, explain_per_node_hook, explain_per_plan_hook, GetExplainExtensionId(), overexplain_debug_handler(), overexplain_per_node_hook(), overexplain_per_plan_hook(), overexplain_range_table_handler(), prev_explain_per_node_hook, prev_explain_per_plan_hook, and RegisterExtensionExplainOption().
Definition at line 694 of file pg_overexplain.c.
References Alias::aliasname, appendStringInfo(), appendStringInfoChar(), Assert, buf, Alias::colnames, ExplainPropertyText(), fb(), foreach_node, initStringInfo(), pfree(), and quote_identifier().
Referenced by overexplain_range_table().
|
static |
Definition at line 723 of file pg_overexplain.c.
References appendStringInfo(), Assert, bms_is_empty, bms_next_member(), buf, ExplainPropertyText(), fb(), initStringInfo(), pfree(), and x.
Referenced by overexplain_debug(), overexplain_per_node_hook(), and overexplain_range_table().
|
static |
Definition at line 297 of file pg_overexplain.c.
References appendStringInfoString(), PlannedStmt::canSetTag, CMD_DELETE, CMD_INSERT, CMD_MERGE, CMD_NOTHING, CMD_SELECT, CMD_UNKNOWN, CMD_UPDATE, CMD_UTILITY, PlannedStmt::commandType, StringInfoData::data, PlannedStmt::dependsOnRole, EXPLAIN_FORMAT_TEXT, ExplainCloseGroup(), ExplainIndentText(), ExplainOpenGroup(), ExplainPropertyText(), fb(), ExplainState::format, PlannedStmt::hasModifyingCTE, PlannedStmt::hasReturning, ExplainState::indent, initStringInfo(), StringInfoData::len, overexplain_bitmapset(), overexplain_intlist(), PlannedStmt::parallelModeNeeded, PlannedStmt::paramExecTypes, psprintf(), PlannedStmt::relationOids, PlannedStmt::rewindPlanIDs, PlannedStmt::stmt_len, PlannedStmt::stmt_location, ExplainState::str, and PlannedStmt::transientPlan.
Referenced by overexplain_per_plan_hook().
|
static |
Definition at line 109 of file pg_overexplain.c.
References defGetBoolean(), and overexplain_ensure_options().
Referenced by _PG_init().
|
static |
Definition at line 90 of file pg_overexplain.c.
References es_extension_id, fb(), GetExplainExtensionState(), palloc0_object, and SetExplainExtensionState().
Referenced by overexplain_debug_handler(), and overexplain_range_table_handler().
Definition at line 749 of file pg_overexplain.c.
References appendStringInfo(), appendStringInfoString(), Assert, buf, ExplainPropertyText(), fb(), foreach_int, foreach_oid, foreach_xid, i, initStringInfo(), IsA, NIL, pfree(), and x.
Referenced by overexplain_debug(), and overexplain_range_table().
|
static |
Definition at line 134 of file pg_overexplain.c.
References bms_is_empty, es_extension_id, EXPLAIN_FORMAT_TEXT, ExplainPropertyBool(), ExplainPropertyInteger(), fb(), ExplainState::format, GetExplainExtensionState(), nodeTag, overexplain_bitmapset(), PlanState::plan, plan, and prev_explain_per_node_hook.
Referenced by _PG_init().
|
static |
Definition at line 264 of file pg_overexplain.c.
References es_extension_id, fb(), GetExplainExtensionState(), overexplain_debug(), overexplain_range_table(), and prev_explain_per_plan_hook.
Referenced by _PG_init().
|
static |
Definition at line 395 of file pg_overexplain.c.
References appendStringInfo(), bms_is_empty, DEFAULT_LOCKMETHOD, EXPLAIN_FORMAT_TEXT, ExplainCloseGroup(), ExplainIndentText(), ExplainOpenGroup(), ExplainPropertyBool(), ExplainPropertyFloat(), ExplainPropertyInteger(), ExplainPropertyText(), ExplainPropertyUInteger(), fb(), ExplainState::format, get_namespace_name_or_temp(), get_rel_name(), get_rel_namespace(), GetLockmodeName(), ExplainState::indent, JOIN_ANTI, JOIN_FULL, JOIN_INNER, JOIN_LEFT, JOIN_RIGHT, JOIN_RIGHT_ANTI, JOIN_RIGHT_SEMI, JOIN_SEMI, list_length(), NIL, overexplain_alias(), overexplain_bitmapset(), overexplain_intlist(), psprintf(), quote_identifier(), relname, PlannedStmt::resultRelations, rt_fetch, PlannedStmt::rtable, RTE_CTE, RTE_FUNCTION, RTE_GROUP, RTE_JOIN, RTE_NAMEDTUPLESTORE, RTE_RELATION, RTE_RESULT, RTE_SUBQUERY, RTE_TABLEFUNC, RTE_VALUES, ExplainState::str, PlannedStmt::unprunableRelids, and ExplainState::verbose.
Referenced by overexplain_per_plan_hook().
|
static |
Definition at line 120 of file pg_overexplain.c.
References defGetBoolean(), and overexplain_ensure_options().
Referenced by _PG_init().
| PG_MODULE_MAGIC_EXT | ( | . | name = "pg_overexplain", |
| . | version = PG_VERSION |
||
| ) |
|
static |
Definition at line 60 of file pg_overexplain.c.
Referenced by _PG_init(), overexplain_ensure_options(), overexplain_per_node_hook(), and overexplain_per_plan_hook().
|
static |
Definition at line 61 of file pg_overexplain.c.
Referenced by _PG_init(), and overexplain_per_node_hook().
|
static |
Definition at line 62 of file pg_overexplain.c.
Referenced by _PG_init(), and overexplain_per_plan_hook().