summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Lane2024-01-26 20:54:17 +0000
committerTom Lane2024-01-26 20:54:17 +0000
commit807369d80384cdaa696cd65b4fcee46e32142344 (patch)
tree44f69c75d4fd5dc33f13bcfed491a10f0d10b233
parent7204aea835d056ca97e86298c597a079d6ee8c97 (diff)
Compare varnullingrels too in assign_param_for_var().
Oversight in 2489d76c4. Preliminary analysis suggests that the problem may be unreachable --- but if we did have instances of the same column with different varnullingrels, we'd surely need to treat them as different Params. Discussion: https://postgr.es/m/[email protected]
-rw-r--r--src/backend/optimizer/util/paramassign.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/backend/optimizer/util/paramassign.c b/src/backend/optimizer/util/paramassign.c
index d6a923b0b68..ecbf9d299f3 100644
--- a/src/backend/optimizer/util/paramassign.c
+++ b/src/backend/optimizer/util/paramassign.c
@@ -90,7 +90,8 @@ assign_param_for_var(PlannerInfo *root, Var *var)
pvar->varattno == var->varattno &&
pvar->vartype == var->vartype &&
pvar->vartypmod == var->vartypmod &&
- pvar->varcollid == var->varcollid)
+ pvar->varcollid == var->varcollid &&
+ bms_equal(pvar->varnullingrels, var->varnullingrels))
return pitem->paramId;
}
}