From 018c77f6fb08dea1f84306c5c1020f402cf987f3 Mon Sep 17 00:00:00 2001 From: Andrey Borodin Date: Thu, 9 Nov 2023 13:52:58 +0500 Subject: [PATCH] Use mxid_age() instead of age() --- internal/collector/postgres_database.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/internal/collector/postgres_database.go b/internal/collector/postgres_database.go index 21a4270..9f7ad63 100644 --- a/internal/collector/postgres_database.go +++ b/internal/collector/postgres_database.go @@ -37,7 +37,7 @@ const ( "FROM pg_stat_database WHERE datname IN (SELECT datname FROM pg_database WHERE datallowconn AND NOT datistemplate) " + "OR datname IS NULL" - xidLimitQuery = "SELECT 'database' AS src, 2147483647 - greatest(max(age(datfrozenxid)), max(age(coalesce(nullif(datminmxid, 1), datfrozenxid)))) AS to_limit FROM pg_database " + + xidLimitQuery = "SELECT 'database' AS src, 2147483647 - greatest(max(age(datfrozenxid)), max(mxid_age(coalesce(datminmxid, 1)))) AS to_limit FROM pg_database " + "UNION SELECT 'prepared_xacts' AS src, 2147483647 - coalesce(max(age(transaction)), 0) AS to_limit FROM pg_prepared_xacts " + "UNION SELECT 'replication_slots' AS src, 2147483647 - greatest(coalesce(min(age(xmin)), 0), coalesce(min(age(catalog_xmin)), 0)) AS to_limit FROM pg_replication_slots" )