Add CHECK_FOR_INTERRUPTS() to the repeat() function

Joe Conway <mail@joeconway.com>

Commit: 28e2c6eacc69e2a186d6fe5d2b9c55c5f978d368
Author: Joe Conway <mail@joeconway.com>
Date: 2020-05-28T17:17:20Z
Releases: 9.6.19
Add CHECK_FOR_INTERRUPTS() to the repeat() function

The repeat() function loops for potentially a long time without
ever checking for interrupts. This prevents, for example, a query
cancel from interrupting until the work is all done. Fix by
inserting a CHECK_FOR_INTERRUPTS() into the loop.

Backpatch to all supported versions.

Discussion: https://www.postgresql.org/message-id/flat/8692553c-7fe8-17d9-cbc1-7cddb758f4c6%40joeconway.com

Files

PathChange+/−
src/backend/utils/adt/oracle_compat.c modified +2 −1

Discussion