diff options
Diffstat (limited to 'src/backend/utils/activity/pgstat_database.c')
-rw-r--r-- | src/backend/utils/activity/pgstat_database.c | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/backend/utils/activity/pgstat_database.c b/src/backend/utils/activity/pgstat_database.c index 29bc0909748..7757d2ace74 100644 --- a/src/backend/utils/activity/pgstat_database.c +++ b/src/backend/utils/activity/pgstat_database.c @@ -263,6 +263,23 @@ AtEOXact_PgStat_Database(bool isCommit, bool parallel) } /* + * Notify the stats system about parallel worker information. + */ +void +pgstat_update_parallel_workers_stats(PgStat_Counter workers_to_launch, + PgStat_Counter workers_launched) +{ + PgStat_StatDBEntry *dbentry; + + if (!OidIsValid(MyDatabaseId)) + return; + + dbentry = pgstat_prep_database_pending(MyDatabaseId); + dbentry->parallel_workers_to_launch += workers_to_launch; + dbentry->parallel_workers_launched += workers_launched; +} + +/* * Subroutine for pgstat_report_stat(): Handle xact commit/rollback and I/O * timings. */ @@ -425,6 +442,8 @@ pgstat_database_flush_cb(PgStat_EntryRef *entry_ref, bool nowait) PGSTAT_ACCUM_DBCOUNT(sessions_abandoned); PGSTAT_ACCUM_DBCOUNT(sessions_fatal); PGSTAT_ACCUM_DBCOUNT(sessions_killed); + PGSTAT_ACCUM_DBCOUNT(parallel_workers_to_launch); + PGSTAT_ACCUM_DBCOUNT(parallel_workers_launched); #undef PGSTAT_ACCUM_DBCOUNT pgstat_unlock_entry(entry_ref); |