ClassCastException During Startup with mysql-connector-java versions 8.0.23 and Later

ClassCastException During Startup with mysql-connector-java versions 8.0.23 and Later

Description

When starting Tomcat with mysql-connector-java version 8.0.23 or later, the following errors can occur:

  • Change log lock is acquired and released repeatedly
  • "Error creating bean" for many named items
  • NoSuchBeanDefinitionException
  • BeanCreationException
  • ClassCastException

This issue is a result of a change made in MySQL Connector/J 8.0.23. The release notes state the following relevant change:

"a getObject(columnIndex) call on a DATETIME column returns a LocalDateTime object now instead of a String. To receive a String like before, use getObject(columnIndex, String.class) instead."

This change is causing liquibase to fail. Please refer to the following link for more details:
"Support drivers that return a LocalDateTime for dates" 
https://github.com/liquibase/liquibase/pull/1664

This issue is being tracked under Issue# SCA-32509.

 

Workaround

  1. Replace the mysql-connector-java-8.0.23.jar file under <CODEINSIGHT_INSTALL_DIR>/tomcat/lib with mysql-connector-java version 8.0.22 or earlier.
  2. Restart Tomcat

 

Resolution

Code Insight 2021 R3 and onward will support MySQL Connector/J versions 8.0.23 and later. Code Insight 2021 R2 and older will only support MySQL Connector/J versions up to 8.0.22.

Was this article helpful? Yes No
No ratings
Version history
Revision #:
5 of 5
Last update:
‎Jul 07, 2021 11:57 AM
Updated by:
 
Contributors