aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAlexander Korotkov <akorotkov@postgresql.org>2023-04-23 13:55:49 +0300
committerAlexander Korotkov <akorotkov@postgresql.org>2023-04-23 14:00:13 +0300
commit9ef5a358378423a1208bee73b9cb3381f27cd3c2 (patch)
tree300a107329b7f4de3c0e386beaba2452c2287a49 /src
parentdde926b0f67d461f578e29c5505f21e0c710fba0 (diff)
downloadpostgresql-9ef5a358378423a1208bee73b9cb3381f27cd3c2.tar.gz
postgresql-9ef5a358378423a1208bee73b9cb3381f27cd3c2.zip
Fix custom validators call in build_local_reloptions()
We need to call them only when validate == true. Backpatch to 13, where opclass options were introduced. Reported-by: Tom Lane Discussion: https://postgr.es/m/2656633.1681831542%40sss.pgh.pa.us Reviewed-by: Tom Lane, Pavel Borisov Backpatch-through: 13
Diffstat (limited to 'src')
-rw-r--r--src/backend/access/common/reloptions.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/backend/access/common/reloptions.c b/src/backend/access/common/reloptions.c
index b5602f53233..39e0cd1fca6 100644
--- a/src/backend/access/common/reloptions.c
+++ b/src/backend/access/common/reloptions.c
@@ -1963,8 +1963,9 @@ build_local_reloptions(local_relopts *relopts, Datum options, bool validate)
fillRelOptions(opts, relopts->relopt_struct_size, vals, noptions, validate,
elems, noptions);
- foreach(lc, relopts->validators)
- ((relopts_validator) lfirst(lc)) (opts, vals, noptions);
+ if (validate)
+ foreach(lc, relopts->validators)
+ ((relopts_validator) lfirst(lc)) (opts, vals, noptions);
if (elems)
pfree(elems);