Avoid overflow in MaybeRemoveOldWalSummaries().
authorNathan Bossart <nathan@postgresql.org>
Wed, 20 Mar 2024 18:31:58 +0000 (13:31 -0500)
committerNathan Bossart <nathan@postgresql.org>
Wed, 20 Mar 2024 18:31:58 +0000 (13:31 -0500)
commit80686761c49d5194d224b344e968c26981611726
tree7ff7640bcf58bae4213cfe38e746035c7c89b82f
parent9acae56ce0b0812f3e940cf1f87e73e8d5784e78
Avoid overflow in MaybeRemoveOldWalSummaries().

This commit limits the maximum value of wal_summary_keep_time to
INT_MAX / SECS_PER_MINUTE to avoid overflow when it is converted to
seconds.  In passing, use the HOURS_PER_DAY, MINS_PER_HOUR, and
SECS_PER_MINUTE macros in the code for this GUC instead of hard-
coding those values.

Discussion: https://postgr.es/m/20240314210010.GA3056455%40nathanxps13
src/backend/postmaster/walsummarizer.c
src/backend/utils/misc/guc_tables.c