diff options
author | Michael Paquier <michael@paquier.xyz> | 2019-07-05 12:21:11 +0900 |
---|---|---|
committer | Michael Paquier <michael@paquier.xyz> | 2019-07-05 12:21:11 +0900 |
commit | 313f87a17155a6dbd27a3ce687cf59bd171fe75e (patch) | |
tree | 1130b22d811c49539eeb09ba8704c678f1a99938 /src/backend/utils/adt | |
parent | 8a810a177c80909b71e9fb3760a1d56ed988638a (diff) | |
download | postgresql-313f87a17155a6dbd27a3ce687cf59bd171fe75e.tar.gz postgresql-313f87a17155a6dbd27a3ce687cf59bd171fe75e.zip |
Add min() and max() aggregates for pg_lsn
This is useful for monitoring, when it comes for example to calculations
of WAL retention with replication slots and delays with a set of
standbys.
Bump catalog version.
Author: FabrÃzio de Royes Mello
Reviewed-by: Surafel Temesgen
Discussion: https://postgr.es/m/CAFcNs+oc8ZoHhowA4rR1GGCgG8QNgK_TOwPRVYQo5rYy8_PXzA@mail.gmail.com
Diffstat (limited to 'src/backend/utils/adt')
-rw-r--r-- | src/backend/utils/adt/pg_lsn.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/src/backend/utils/adt/pg_lsn.c b/src/backend/utils/adt/pg_lsn.c index 4c329a8d8fe..b4c6c2309cf 100644 --- a/src/backend/utils/adt/pg_lsn.c +++ b/src/backend/utils/adt/pg_lsn.c @@ -171,6 +171,24 @@ pg_lsn_ge(PG_FUNCTION_ARGS) PG_RETURN_BOOL(lsn1 >= lsn2); } +Datum +pg_lsn_larger(PG_FUNCTION_ARGS) +{ + XLogRecPtr lsn1 = PG_GETARG_LSN(0); + XLogRecPtr lsn2 = PG_GETARG_LSN(1); + + PG_RETURN_LSN((lsn1 > lsn2) ? lsn1 : lsn2); +} + +Datum +pg_lsn_smaller(PG_FUNCTION_ARGS) +{ + XLogRecPtr lsn1 = PG_GETARG_LSN(0); + XLogRecPtr lsn2 = PG_GETARG_LSN(1); + + PG_RETURN_LSN((lsn1 < lsn2) ? lsn1 : lsn2); +} + /* btree index opclass support */ Datum pg_lsn_cmp(PG_FUNCTION_ARGS) |