Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
generation_counter includes time spent on both JIT:ing expressions and tuple deforming which are configured independently via options jit_expressions and jit_tuple_deforming. As they are combined in the same counter it's not apparent what fraction of time the tuple deforming takes. This adds deform_counter dedicated to tuple deforming, which allows seeing more directly the influence jit_tuple_deforming is having on the query. The counter is exposed in EXPLAIN and pg_stat_statements bumpin pg_stat_statements to 1.11. Author: Dmitry Dolgov <9erthalion6@gmail.com> Reviewed-by: Pavel Stehule <pavel.stehule@gmail.com> Reviewed-by: Daniel Gustafsson <daniel@yesql.se> Discussion: https://postgr.es/m/20220612091253.eegstkufdsu4kfls@erthalion.local
- Loading branch information
1 parent
6fe3cef
commit 5a3423a
Showing
11 changed files
with
145 additions
and
6 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
69 changes: 69 additions & 0 deletions
69
contrib/pg_stat_statements/pg_stat_statements--1.10--1.11.sql
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,69 @@ | ||
/* contrib/pg_stat_statements/pg_stat_statements--1.10--1.11.sql */ | ||
|
||
-- complain if script is sourced in psql, rather than via ALTER EXTENSION | ||
\echo Use "ALTER EXTENSION pg_stat_statements UPDATE TO '1.11'" to load this file. \quit | ||
|
||
/* First we have to remove them from the extension */ | ||
ALTER EXTENSION pg_stat_statements DROP VIEW pg_stat_statements; | ||
ALTER EXTENSION pg_stat_statements DROP FUNCTION pg_stat_statements(boolean); | ||
|
||
/* Then we can drop them */ | ||
DROP VIEW pg_stat_statements; | ||
DROP FUNCTION pg_stat_statements(boolean); | ||
|
||
/* Now redefine */ | ||
CREATE FUNCTION pg_stat_statements(IN showtext boolean, | ||
OUT userid oid, | ||
OUT dbid oid, | ||
OUT toplevel bool, | ||
OUT queryid bigint, | ||
OUT query text, | ||
OUT plans int8, | ||
OUT total_plan_time float8, | ||
OUT min_plan_time float8, | ||
OUT max_plan_time float8, | ||
OUT mean_plan_time float8, | ||
OUT stddev_plan_time float8, | ||
OUT calls int8, | ||
OUT total_exec_time float8, | ||
OUT min_exec_time float8, | ||
OUT max_exec_time float8, | ||
OUT mean_exec_time float8, | ||
OUT stddev_exec_time float8, | ||
OUT rows int8, | ||
OUT shared_blks_hit int8, | ||
OUT shared_blks_read int8, | ||
OUT shared_blks_dirtied int8, | ||
OUT shared_blks_written int8, | ||
OUT local_blks_hit int8, | ||
OUT local_blks_read int8, | ||
OUT local_blks_dirtied int8, | ||
OUT local_blks_written int8, | ||
OUT temp_blks_read int8, | ||
OUT temp_blks_written int8, | ||
OUT blk_read_time float8, | ||
OUT blk_write_time float8, | ||
OUT temp_blk_read_time float8, | ||
OUT temp_blk_write_time float8, | ||
OUT wal_records int8, | ||
OUT wal_fpi int8, | ||
OUT wal_bytes numeric, | ||
OUT jit_functions int8, | ||
OUT jit_generation_time float8, | ||
OUT jit_inlining_count int8, | ||
OUT jit_inlining_time float8, | ||
OUT jit_optimization_count int8, | ||
OUT jit_optimization_time float8, | ||
OUT jit_emission_count int8, | ||
OUT jit_emission_time float8, | ||
OUT jit_deform_count int8, | ||
OUT jit_deform_time float8 | ||
) | ||
RETURNS SETOF record | ||
AS 'MODULE_PATHNAME', 'pg_stat_statements_1_11' | ||
LANGUAGE C STRICT VOLATILE PARALLEL SAFE; | ||
|
||
CREATE VIEW pg_stat_statements AS | ||
SELECT * FROM pg_stat_statements(true); | ||
|
||
GRANT SELECT ON pg_stat_statements TO PUBLIC; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,5 @@ | ||
# pg_stat_statements extension | ||
comment = 'track planning and execution statistics of all SQL statements executed' | ||
default_version = '1.10' | ||
default_version = '1.11' | ||
module_pathname = '$libdir/pg_stat_statements' | ||
relocatable = true |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters