mirror of
https://git.postgresql.org/git/postgresql.git
synced 2024-10-06 11:26:51 +02:00
5a3423ad8e
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
70 lines
2.1 KiB
SQL
70 lines
2.1 KiB
SQL
/* 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;
|