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

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Converge all SQL-level statistics timing values to float8 millis
Date: 2012-04-30 18:04:09
Message-ID: E1SOuxF-0006AS-Mt@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: 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(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Peter Eisentraut 2012-04-30 18:19:07 pgsql: Improve markup of cmdsynopsis elements
Previous Message Peter Eisentraut 2012-04-30 17:24:00 pgsql: Mark ReThrowError() with attribute noreturn