Skip to content

Fix issue with CALL/YIELD for user defined and qualified functions. - #2217

Merged
MuhammadTahaNaveed merged 1 commit into
apache:masterfrom
jrgemignani:fix_call_yield_bug
Sep 15, 2025
Merged

Fix issue with CALL/YIELD for user defined and qualified functions.#2217
MuhammadTahaNaveed merged 1 commit into
apache:masterfrom
jrgemignani:fix_call_yield_bug

Conversation

@jrgemignani

Copy link
Copy Markdown
Contributor

Fixed 2 issues with CALL/YIELD -

  1. If a user defined function was in search_path, the transform_FuncCall
    logic would only find it, if it were part of an extension.

  2. If a function were qualified, the transform_cypher_call_subquery
    logic would mistakenly extract the schema name instead of the
    function name.

NOTE: transform_FuncCall should be reviewed for possible refactor.

Added regression tests.

modified: src/backend/parser/cypher_clause.c
modified: src/backend/parser/cypher_expr.c
modified: regress/expected/cypher_call.out
modified: regress/sql/cypher_call.sql

@github-actionsgithub-actionsBot added master override-stale To keep issues/PRs untouched from stale action labels Sep 9, 2025
Fixed 2 issues with CALL/YIELD -
1) If a user defined function was in search_path, the transform_FuncCall
logic would only find it, if it were part of an extension.
2) If a function were qualified, the transform_cypher_call_subquery
logic would mistakenly extract the schema name instead of the
function name.
NOTE: transform_FuncCall should be reviewed for possible refactor.
Added regression tests.
modified: src/backend/parser/cypher_clause.c
modified: src/backend/parser/cypher_expr.c
modified: regress/expected/cypher_call.out
modified: regress/sql/cypher_call.sql
@MuhammadTahaNaveed
MuhammadTahaNaveed merged commit 94770a6 into apache:masterSep 15, 2025
7 checks passed
jrgemignani added a commit to jrgemignani/age that referenced this pull request Jan 30, 2026
…pache#2217)
Fixed 2 issues with CALL/YIELD -
1) If a user defined function was in search_path, the transform_FuncCall
logic would only find it, if it were part of an extension.
2) If a function were qualified, the transform_cypher_call_subquery
logic would mistakenly extract the schema name instead of the
function name.
NOTE: transform_FuncCall should be reviewed for possible refactor.
Added regression tests.
modified: src/backend/parser/cypher_clause.c
modified: src/backend/parser/cypher_expr.c
modified: regress/expected/cypher_call.out
modified: regress/sql/cypher_call.sql
MuhammadTahaNaveed pushed a commit that referenced this pull request Feb 3, 2026
…2217)
Fixed 2 issues with CALL/YIELD -
1) If a user defined function was in search_path, the transform_FuncCall
logic would only find it, if it were part of an extension.
2) If a function were qualified, the transform_cypher_call_subquery
logic would mistakenly extract the schema name instead of the
function name.
NOTE: transform_FuncCall should be reviewed for possible refactor.
Added regression tests.
modified: src/backend/parser/cypher_clause.c
modified: src/backend/parser/cypher_expr.c
modified: regress/expected/cypher_call.out
modified: regress/sql/cypher_call.sql
jrgemignani added a commit to jrgemignani/age that referenced this pull request Mar 24, 2026
…pache#2217)
Fixed 2 issues with CALL/YIELD -
1) If a user defined function was in search_path, the transform_FuncCall
logic would only find it, if it were part of an extension.
2) If a function were qualified, the transform_cypher_call_subquery
logic would mistakenly extract the schema name instead of the
function name.
NOTE: transform_FuncCall should be reviewed for possible refactor.
Added regression tests.
modified: src/backend/parser/cypher_clause.c
modified: src/backend/parser/cypher_expr.c
modified: regress/expected/cypher_call.out
modified: regress/sql/cypher_call.sql
MuhammadTahaNaveed pushed a commit that referenced this pull request Mar 26, 2026
…2217)
Fixed 2 issues with CALL/YIELD -
1) If a user defined function was in search_path, the transform_FuncCall
logic would only find it, if it were part of an extension.
2) If a function were qualified, the transform_cypher_call_subquery
logic would mistakenly extract the schema name instead of the
function name.
NOTE: transform_FuncCall should be reviewed for possible refactor.
Added regression tests.
modified: src/backend/parser/cypher_clause.c
modified: src/backend/parser/cypher_expr.c
modified: regress/expected/cypher_call.out
modified: regress/sql/cypher_call.sql
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

masteroverride-staleTo keep issues/PRs untouched from stale action

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

@jrgemignani@MuhammadTahaNaveed