TEXT type in MySQL

Go ahead and log it as one. It comes from the “try to convert from what you are saying to something more cross-database consistent” logic which is a bit of a mess in 2.0 and is the main focus of 3.0. I’ll make sure it stays consistant in 3.0.


I cannot use the TEXT type to the changelog.xml. Everytime i use it, liquibase automaitically change the type into LONGTEXT and create the table. Has anyone suffered this issue ?
[Update] it works fine if i set it as ‘longtext’, ‘mediumtext’ or ‘tinytext’. Only the ‘text’ type will be converted into ‘longtext’. Is this considered as a bug?

The bug was created? Is there a workaround?

 that can be used as workaround.

Any quick solution for the false conversion in MYSQL? ie TEXT => LONGTEXT. Using the extension seems reasonable. Can anyone post the steps required to add it? 

I am having this problem in a fairly recent liquibase version. Was it ever fixed?

It hasn’t been yet. I created https://liquibase.jira.com/browse/CORE-1560 to track the fix and will fix it in 3.1.0


Thanks Nathan. This is a pressing issue, any chance you have a patch I can apply right now, or a describe a workaround for us?

We use both longtext and text, so we cannot simply replace.


No patch yet, but it is something I’m planning to work on in the next couple weeks. Sorry.


Same problem with TIMESTAMP, liquibase always converts TIMESTAMP to TIMESTAMP WITH TIME ZONE . Here is how I fixed it. I added a tag to your change set, like below.
Very useful to have this to tweak the ouput SQL generated by LB.


So, something like for that particular changeset should fix your problem.