diff options
Diffstat (limited to 'src/backend/optimizer/plan/createplan.c')
-rw-r--r-- | src/backend/optimizer/plan/createplan.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/backend/optimizer/plan/createplan.c b/src/backend/optimizer/plan/createplan.c index 7a81010e4cf..bf0c6208333 100644 --- a/src/backend/optimizer/plan/createplan.c +++ b/src/backend/optimizer/plan/createplan.c @@ -2623,8 +2623,11 @@ fix_indexqual_operand(Node *node, IndexOptInfo *index) ListCell *indexpr_item; /* - * Remove any binary-compatible relabeling of the indexkey + * Remove any PlaceHolderVars or binary-compatible relabeling of the + * indexkey (this must match logic in match_index_to_operand()). */ + while (IsA(node, PlaceHolderVar)) + node = (Node *) ((PlaceHolderVar *) node)->phexpr; if (IsA(node, RelabelType)) node = (Node *) ((RelabelType *) node)->arg; |