Issue related generateChangeLog in MySQL

Hello,

I am trying to create a JSON file from existing DB in MySQL using Liquibase generateChangeLog command. But I am getting runtime error. The following is the command with all switches.  Here are the details:

Liquibase version - 3.6.3

MySQL version 5.7

Command

C:\liquibase-3.6.3-bin>liquibase --changeLogFile=./structure_db2.json --url=“jdbc:mysql://localhost:12345” --includeCatalog=true --defaultSchemaName=my_db --username=testuser --password=password --classpath=lib/snakeyaml-1.18.jar --diffTypes=“data” --logLevel=debug generateChangeLog

Error trace:

  at liquibase.serializer.core.yaml.YamlSerializer.removeClassTypeMarksFromSerializedJson(YamlSerializer.java:163)

        at liquibase.serializer.core.yaml.YamlSerializer.serialize(YamlSerializer.java:74)

        at liquibase.serializer.core.json.JsonChangeLogSerializer.write(JsonChangeLogSerializer.java:23)

        at liquibase.diff.output.changelog.DiffToChangeLog.print(DiffToChangeLog.java:148)

        at liquibase.diff.output.changelog.DiffToChangeLog.print(DiffToChangeLog.java:87)

        at liquibase.diff.output.changelog.DiffToChangeLog.print(DiffToChangeLog.java:74)

        at liquibase.command.core.GenerateChangeLogCommand.run(GenerateChangeLogCommand.java:55)

        at liquibase.command.AbstractCommand.execute(AbstractCommand.java:19)

        … 4 common frames omitted

I did research on this forum and on the internet and got some clues but nothing has worked so far. 

Here are some of the things I tried:

  • Disabled Foreign Keys

  • Removed all Foreign Keys

  • Removed all Index

I created a small temp table and the above command works fine and creates a JSON for me. That makes me think that Liquibase is not liking something in my DB structure. 

Any help will be appreciated. 

Thanks,

-Atul