Include column data type to SetColumnRemarksChange for MySQL support #2129
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.
Environment
Liquibase Version: 4.5.1-local-SNAPSHOT
Database Vendor & Version: MySQL 8
Operating System Type & Version: macOS 11.6
Pull Request Type
Description
MySQL needs column data type along with a column remark change. Even if the
columnDataType
is not actually changed, the type is required for MySQL to modify a remark on the column. So I included it inSetColumnRemarksChange
.Steps To Reproduce
To reproduce a problem this PR is trying to fix:
tester
, with columnsINT(10) id
as pk andVARCHAR(10) name
, on both databases.name
column on the reference database.diffChangeLog
in SQL.These steps will make a
NullPointerException
:The line that throws the exception requires a column data type, which does not exist, because the data type is not actually changed.
liquibase/liquibase-core/src/main/java/liquibase/sqlgenerator/core/SetColumnRemarksGenerator.java
Line 50 in 256675b