]> git.ipfire.org Git - thirdparty/postgresql.git/commit
Converge all SQL-level statistics timing values to float8 milliseconds.
authorTom Lane <tgl@sss.pgh.pa.us>
Mon, 30 Apr 2012 18:02:47 +0000 (14:02 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Mon, 30 Apr 2012 18:03:33 +0000 (14:03 -0400)
commit809e7e21af8cd24855f1802524a13bbaa823f929
tree450387adf177bd65f21de4c29d6428852608a8b4
parent26471a51fc833e2ce58a2f16f891256d57dd28c6
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.
doc/src/sgml/monitoring.sgml
src/backend/access/transam/xlog.c
src/backend/catalog/system_views.sql
src/backend/postmaster/pgstat.c
src/backend/utils/adt/pgstatfuncs.c
src/include/catalog/catversion.h
src/include/catalog/pg_proc.h
src/include/pgstat.h
src/test/regress/expected/rules.out