pgsql: Converge all SQL-level statistics timing values to float8 millis - Mailing list pgsql-committers

From Tom Lane
Subject pgsql: Converge all SQL-level statistics timing values to float8 millis
Date
Msg-id E1SOuxF-0006AS-Mt@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Converge all SQL-level statistics timing values to float8 milliseconds.

This patch adjusts the core statistics views to match the decision already
taken for pg_stat_statements, that values representing elapsed time should
be represented as float8 and measured in milliseconds.  By using float8,
we are no longer tied to a specific maximum precision of timing data.
(Internally, it's still microseconds, but we could now change that without
needing changes at the SQL level.)

The columns affected are
pg_stat_bgwriter.checkpoint_write_time
pg_stat_bgwriter.checkpoint_sync_time
pg_stat_database.blk_read_time
pg_stat_database.blk_write_time
pg_stat_user_functions.total_time
pg_stat_user_functions.self_time
pg_stat_xact_user_functions.total_time
pg_stat_xact_user_functions.self_time

The first four of these are new in 9.2, so there is no compatibility issue
from changing them.  The others require a release note comment that they
are now double precision (and can show a fractional part) rather than
bigint as before; also their underlying statistics functions now match
the column definitions, instead of returning bigint microseconds.

Branch
------
master

Details
-------
http://git.postgresql.org/pg/commitdiff/809e7e21af8cd24855f1802524a13bbaa823f929

Modified Files
--------------
doc/src/sgml/monitoring.sgml         |   14 +++++-------
src/backend/access/transam/xlog.c    |    3 +-
src/backend/catalog/system_views.sql |   12 +++++-----
src/backend/postmaster/pgstat.c      |   30 +++++++++++++-------------
src/backend/utils/adt/pgstatfuncs.c  |   38 +++++++++++++++++++--------------
src/include/catalog/catversion.h     |    2 +-
src/include/catalog/pg_proc.h        |   32 ++++++++++++++--------------
src/include/pgstat.h                 |   21 +++++++++---------
src/test/regress/expected/rules.out  |    6 ++--
9 files changed, 80 insertions(+), 78 deletions(-)


pgsql-committers by date:

Previous
From: Peter Eisentraut
Date:
Subject: pgsql: Mark ReThrowError() with attribute noreturn
Next
From: Peter Eisentraut
Date:
Subject: pgsql: Improve markup of cmdsynopsis elements