diff --git a/contrib/pg_stat_statements/pg_stat_statements.c b/contrib/pg_stat_statements/pg_stat_statements.c index 5264d14294..6f936b7b26 100644 --- a/contrib/pg_stat_statements/pg_stat_statements.c +++ b/contrib/pg_stat_statements/pg_stat_statements.c @@ -101,7 +101,7 @@ typedef struct pgssHashKey typedef struct Counters { int64 calls; /* # of times executed */ - double total_time; /* total execution time in seconds */ + double total_time; /* total execution time, in msec */ int64 rows; /* total # of retrieved or affected rows */ int64 shared_blks_hit; /* # of shared buffer hits */ int64 shared_blks_read; /* # of shared disk blocks read */ @@ -113,8 +113,8 @@ typedef struct Counters int64 local_blks_written; /* # of local disk blocks written */ int64 temp_blks_read; /* # of temp blocks read */ int64 temp_blks_written; /* # of temp blocks written */ - double time_read; /* time spent reading in seconds */ - double time_write; /* time spent writing in seconds */ + double time_read; /* time spent reading, in msec */ + double time_write; /* time spent writing, in msec */ double usage; /* usage factor */ } Counters; @@ -752,7 +752,7 @@ pgss_ExecutorEnd(QueryDesc *queryDesc) pgss_store(queryDesc->sourceText, queryId, - queryDesc->totaltime->total, + queryDesc->totaltime->total * 1000.0, /* convert to msec */ queryDesc->estate->es_processed, &queryDesc->totaltime->bufusage, NULL); @@ -856,7 +856,7 @@ pgss_ProcessUtility(Node *parsetree, const char *queryString, pgss_store(queryString, queryId, - INSTR_TIME_GET_DOUBLE(duration), + INSTR_TIME_GET_MILLISEC(duration), rows, &bufusage, NULL); @@ -1021,9 +1021,9 @@ pgss_store(const char *query, uint32 queryId, e->counters.local_blks_written += bufusage->local_blks_written; e->counters.temp_blks_read += bufusage->temp_blks_read; e->counters.temp_blks_written += bufusage->temp_blks_written; - e->counters.time_read += INSTR_TIME_GET_DOUBLE(bufusage->time_read); - e->counters.time_write += INSTR_TIME_GET_DOUBLE(bufusage->time_write); - e->counters.usage += USAGE_EXEC(duration); + e->counters.time_read += INSTR_TIME_GET_MILLISEC(bufusage->time_read); + e->counters.time_write += INSTR_TIME_GET_MILLISEC(bufusage->time_write); + e->counters.usage += USAGE_EXEC(total_time); SpinLockRelease(&e->mutex); } diff --git a/doc/src/sgml/pgstatstatements.sgml b/doc/src/sgml/pgstatstatements.sgml index a6064727fc..1dd42de781 100644 --- a/doc/src/sgml/pgstatstatements.sgml +++ b/doc/src/sgml/pgstatstatements.sgml @@ -75,7 +75,7 @@ total_time double precision - Total time spent in the statement, in seconds + Total time spent in the statement, in milliseconds @@ -89,14 +89,14 @@ shared_blks_hit bigint - Total number of shared blocks hits by the statement + Total number of shared block cache hits by the statement shared_blks_read bigint - Total number of shared blocks reads by the statement + Total number of shared blocks read by the statement @@ -110,21 +110,21 @@ shared_blks_written bigint - Total number of shared blocks writes by the statement + Total number of shared blocks written by the statement local_blks_hit bigint - Total number of local blocks hits by the statement + Total number of local block cache hits by the statement local_blks_read bigint - Total number of local blocks reads by the statement + Total number of local blocks read by the statement @@ -138,21 +138,21 @@ local_blks_written bigint - Total number of local blocks writes by the statement + Total number of local blocks written by the statement temp_blks_read bigint - Total number of temp blocks reads by the statement + Total number of temp blocks read by the statement temp_blks_written bigint - Total number of temp blocks writes by the statement + Total number of temp blocks written by the statement @@ -160,7 +160,7 @@ double precision - Total time the statement spent reading blocks, in seconds + Total time the statement spent reading blocks, in milliseconds (if is enabled, otherwise zero) @@ -170,7 +170,7 @@ double precision - Total time the statement spent writing blocks, in seconds + Total time the statement spent writing blocks, in milliseconds (if is enabled, otherwise zero) @@ -285,7 +285,7 @@ Specify top to track top-level statements (those issued directly by clients), all to also track nested statements (such as statements invoked within functions), or none to - disable. + disable statement statistics collection. The default value is top. Only superusers can change this setting. @@ -366,31 +366,31 @@ bench=# SELECT query, calls, total_time, rows, 100.0 * shared_blks_hit / -[ RECORD 1 ]--------------------------------------------------------------------- query | UPDATE pgbench_branches SET bbalance = bbalance + ? WHERE bid = ?; calls | 3000 -total_time | 9.60900100000002 +total_time | 9609.00100000002 rows | 2836 hit_percent | 99.9778970000200936 -[ RECORD 2 ]--------------------------------------------------------------------- query | UPDATE pgbench_tellers SET tbalance = tbalance + ? WHERE tid = ?; calls | 3000 -total_time | 8.015156 +total_time | 8015.156 rows | 2990 hit_percent | 99.9731126579631345 -[ RECORD 3 ]--------------------------------------------------------------------- query | copy pgbench_accounts from stdin calls | 1 -total_time | 0.310624 +total_time | 310.624 rows | 100000 hit_percent | 0.30395136778115501520 -[ RECORD 4 ]--------------------------------------------------------------------- query | UPDATE pgbench_accounts SET abalance = abalance + ? WHERE aid = ?; calls | 3000 -total_time | 0.271741999999997 +total_time | 271.741999999997 rows | 3000 hit_percent | 93.7968855088209426 -[ RECORD 5 ]--------------------------------------------------------------------- query | alter table pgbench_accounts add primary key (aid) calls | 1 -total_time | 0.08142 +total_time | 81.42 rows | 0 hit_percent | 34.4947735191637631