Make plpgsql_trap test more robust and less resource-intensive.

We were using "select count(*) into x from generate_series(1,
1_000_000_000_000)" to waste one second waiting for a statement
timeout trap.  Aside from consuming CPU to little purpose, this could
easily eat several hundred MB of temporary file space, which has been
observed to cause out-of-disk-space errors in the buildfarm.
Let's just use "pg_sleep(10)", which is far less resource-intensive.

Also update the "when others" exception handler so that if it does
ever again trap an error, it will tell us what error.  The cause of
these intermittent buildfarm failures had been obscure for awhile.

Discussion: https://postgr.es/m/[email protected]
Backpatch-through: 14

Branch
------
REL_18_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/496169e525cd4fe7c8ace3a7cffb52ac87e504b9

Modified Files
--------------
src/pl/plpgsql/src/expected/plpgsql_trap.out | 8 +++-----
src/pl/plpgsql/src/sql/plpgsql_trap.sql      | 6 ++----
2 files changed, 5 insertions(+), 9 deletions(-)

Reply via email to