[Pg-kit]: Fix enum migration when dropping values used as defaults #4831
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.
Summary
Fixes PostgreSQL enum migration errors when dropping enum values that are used as column defaults.
Problem
When attempting to drop an enum value that is currently used as a default value for a column, PostgreSQL throws an error:
This occurs because PostgreSQL cannot drop or modify an enum type while it's still referenced by a default constraint.
Solution
Added logic to drop default constraints before converting columns to text type during enum modifications. This ensures proper handling of dependencies when enum values are dropped.
Changes
AlterTypeDropValueConvertor
insqlgenerator.ts
to addDROP DEFAULT
statementsTest plan
Fixes #4295
🤖 Generated with Claude Code