Having issues while upgrading MySQL from 5.7.42 to 8.0.3 which needs new mysql-connector-j:8.3.0

71 views Asked by At

I have a legacy app that uses MySQL 5.7.42, which is coming to its EOL, and I need to upgrade it to MySQL 8.0.3. The app uses Dropwizard-core, Dropwizard-hibernate, and Dropwizard-migrations of version 1.3.24 and Java 8.

I am having issues when the build is running migrations.

liquibase.executor.jvm.JdbcExecutor: SELECT * FROM db.DATABASECHANGELOG ORDER BY DATEEXECUTED ASC, ORDEREXECUTED ASC

java.lang.ClassCastException: java.time.LocalDateTime cannot be cast to java.lang.String
        at liquibase.changelog.StandardChangeLogHistoryService.getRanChangeSets(StandardChangeLogHistoryService.java:324)
        at liquibase.changelog.AbstractChangeLogHistoryService.upgradeChecksums(AbstractChangeLogHistoryService.java:66)
        at liquibase.changelog.StandardChangeLogHistoryService.upgradeChecksums(StandardChangeLogHistoryService.java:293)
        at liquibase.Liquibase.checkLiquibaseTables(Liquibase.java:1221)

So far, I have tried upgrading the Dropwizard-* to 2.1.12, as Dropwizard no longer supports Java 8 beyond that version. Dropwizard Release Notes

I have also tried to explicitly upgrade liquibase-core version to org.liquibase:liquibase-core:4.4.3. I see a new exception after the upgrade.

java.lang.NoSuchMethodError: liquibase.resource.FileSystemResourceAccessor: method <init>()V not found
    at io.dropwizard.migrations.CloseableLiquibaseWithFileSystemMigrationsFile.<init>(CloseableLiquibaseWithFileSystemMigrationsFile.java:19)
    at io.dropwizard.migrations.AbstractLiquibaseCommand.openLiquibase(AbstractLiquibaseCommand.java:84)
    at io.dropwizard.migrations.AbstractLiquibaseCommand.run(AbstractLiquibaseCommand.java:67)
    at io.dropwizard.cli.ConfiguredCommand.run(ConfiguredCommand.java:87)
    at io.dropwizard.cli.Cli.run(Cli.java:78)
    at io.dropwizard.Application.run(Application.java:93)

I am not sure how to fix this issue. Help needed.

0

There are 0 answers