fix: EXPOSED-695 DDL for unnamed check constraints fails when table has schema name #2368
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
Summary of the change:
Check constraints created without user-specified names now use full table name with any dot-prefixed schema name replaced with underscores.
Detailed description:
A schema-prefixed table name currently uses the full name (with dot character) when generating a name for unnamed check constraints. This results in syntax exceptions or schema-not-found exceptions because something like this
Table("my_schema.my_table")
will name the constraintcheck_my_schema.my_table_index_1
..
character replacement logic to privateTable
propertiestableName
check_my_schema_my_table_index_1
to match pattern used when naming implicit column constraints.Type of Change
Please mark the relevant options with an "X":
Affected databases:
Checklist
Related Issues
EXPOSED-695