mirror of
https://github.com/postgres/postgres.git
synced 2025-08-09 17:03:00 +03:00
pg_overexplain: Additional EXPLAIN options for debugging.
There's a fair amount of information in the Plan and PlanState trees that isn't printed by any existing EXPLAIN option. This means that, when working on the planner, it's often necessary to rely on facilities such as debug_print_plan, which produce excessively voluminous output. Hence, use the new EXPLAIN extension facilities to implement EXPLAIN (DEBUG) and EXPLAIN (RANGE_TABLE) as extensions to the core EXPLAIN facility. A great deal more could be done here, and the specific choices about what to print and how are definitely arguable, but this is at least a starting point for discussion and a jumping-off point for possible future improvements. Reviewed-by: Sami Imseih <samimseih@gmail.com> Reviewed-by: Tom Lane <tgl@sss.pgh.pa.us> Reviweed-by: Andrei Lepikhov <lepihov@gmail.com> (who didn't like it) Discussion: http://postgr.es/m/CA+TgmoZfvQUBWQ2P8iO30jywhfEAKyNzMZSR+uc2xr9PZBw6eQ@mail.gmail.com
This commit is contained in:
28
contrib/pg_overexplain/meson.build
Normal file
28
contrib/pg_overexplain/meson.build
Normal file
@@ -0,0 +1,28 @@
|
||||
# Copyright (c) 2022-2025, PostgreSQL Global Development Group
|
||||
|
||||
pg_overexplain_sources = files(
|
||||
'pg_overexplain.c',
|
||||
)
|
||||
|
||||
if host_system == 'windows'
|
||||
pg_overexplain_sources += rc_lib_gen.process(win32ver_rc, extra_args: [
|
||||
'--NAME', 'pg_overexplain',
|
||||
'--FILEDESC', 'pg_overexplain - allow EXPLAIN to dump even more details',])
|
||||
endif
|
||||
|
||||
pg_overexplain = shared_module('pg_overexplain',
|
||||
pg_overexplain_sources,
|
||||
kwargs: contrib_mod_args,
|
||||
)
|
||||
contrib_targets += pg_overexplain
|
||||
|
||||
tests += {
|
||||
'name': 'pg_overexplain',
|
||||
'sd': meson.current_source_dir(),
|
||||
'bd': meson.current_build_dir(),
|
||||
'regress': {
|
||||
'sql': [
|
||||
'pg_overexplain',
|
||||
],
|
||||
},
|
||||
}
|
Reference in New Issue
Block a user