Fix initialization of pg_stat_get_lastscan()
authorMichael Paquier <michael@paquier.xyz>
Tue, 8 Nov 2022 01:50:09 +0000 (10:50 +0900)
committerMichael Paquier <michael@paquier.xyz>
Tue, 8 Nov 2022 01:50:09 +0000 (10:50 +0900)
commitd7744d50a5394db8d973d1cfa034ed6640aec13c
tree4f6e0c025c2703890a2d64899ab44601063dad6c
parent1613de8bc34b4977d0186b56ef5a00ef8058a74a
Fix initialization of pg_stat_get_lastscan()

A NULL result should be reported when a stats timestamp is set to 0, but
c037471 missed that, leading to a confusing timestamp value after for
example a DML on a freshly-created relation with no scans done on it
yet.

This impacted the following attributes for two system views:
- pg_stat_all_tables.last_idx_scan
- pg_stat_all_tables.last_seq_scan
- pg_stat_all_indexes.last_idx_scan

Reported-by: Robert Treat
Analyzed-by: Peter Eisentraut
Author: Dave Page
Discussion: https://postgr.es/m/CABV9wwPzMfSaz3EfKXXDxKmMprbxwF5r6WPuxqA=5mzRUqfTGg@mail.gmail.com
src/backend/utils/adt/pgstatfuncs.c
src/test/regress/expected/stats.out
src/test/regress/sql/stats.sql