Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

It's impossible to drop an existing UDF which name overlaps with a new built-in function name [CORE2182] #2612

Closed
firebird-automations opened this issue Nov 11, 2008 · 5 comments

Comments

@firebird-automations
Copy link
Collaborator

Submitted by: @dyemanov

This is a common issue with migration to v2.1 and standard UDFs like ABS, ROUND, etc. The usual workaround is to quote the UDF name, i.e. DROP EXTERNAL FUNCTION "ABS", but it doesn't work for Dialect 1 databases.

Actually, the issue is not limited to migration only. Neither you can create an UDF that's expected to override the built-in function with the same name. And it's not about new built-in function names only, the issue is about any new non-reserved keyword introduced in the parser.

This limitation is caused by some UDF related tricks in our parser. But it can be easily improved to handle DDL properly.

Commits: 8dd79ad fdee80e

====== Test Details ======

See core_3963.fbt: one may NOT to create UDF with name <N> if PSQL function does exist with <N>, and vice versa.

@firebird-automations
Copy link
Collaborator Author

Modified by: @dyemanov

assignee: Dmitry Yemanov [ dimitr ]

@firebird-automations
Copy link
Collaborator Author

Modified by: @dyemanov

status: Open [ 1 ] => Resolved [ 5 ]

resolution: Fixed [ 1 ]

Fix Version: 2.1.2 [ 10270 ]

Fix Version: 2.5 Beta 1 [ 10251 ]

@firebird-automations
Copy link
Collaborator Author

Modified by: @pcisar

status: Resolved [ 5 ] => Closed [ 6 ]

@firebird-automations
Copy link
Collaborator Author

Modified by: @pavel-zotov

QA Status: No test

@firebird-automations
Copy link
Collaborator Author

Modified by: @pavel-zotov

status: Closed [ 6 ] => Closed [ 6 ]

QA Status: No test => Covered by another test(s)

Test Details: See core_3963.fbt: one may NOT to create UDF with name <N> if PSQL function does exist with <N>, and vice versa.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment