StackOverflowError after change log lock being aquired

Hi,

We have been running Liquibase with our Sybase databases across all our environments for many years. Last week our deploy job began to experience a StackOverflowError Exception, this occurs when attempting to deploy to 3 different databases as such we don’t believe the issue to be database related.

In summary, in the logs, we see:

06:43:48  [INFO] Executing on Database: jdbc:sybase:Tds:<serverNameRemoved>.xmp.net.intra:5000/<databaseNameremoved>?SQLINITSTRING=set quoted_identifier off
06:43:48  [INFO] SELECT COUNT(*) FROM DATABASECHANGELOGLOCK
06:43:48  [INFO] SELECT COUNT(*) FROM DATABASECHANGELOGLOCK
06:43:48  [INFO] Successfully acquired change log lock
06:43:53  [INFO] Successfully released change log lock
06:43:53  [INFO] ------------------------------------------------------------------------
06:43:53  [INFO] BUILD FAILURE

Then 48 lines like:

06:43:53  constituent[0]: file:/apps/apache-maven/apache-maven-3.6.1/conf/logging/
06:43:53  constituent[1]: file:/apps/apache-maven/apache-maven-3.6.1/lib/maven-model-builder-3.6.1.jar
06:43:53  constituent[2]: file:/apps/apache-maven/apache-maven-3.6.1/lib/maven-resolver-connector-basic-1.3.3.jar
<lines omitted>
06:43:53  constituent[44]: file:/apps/apache-maven/apache-maven-3.6.1/lib/commons-lang3-3.8.1.jar
06:43:53  constituent[45]: file:/apps/apache-maven/apache-maven-3.6.1/lib/javax.inject-1.jar
06:43:53  constituent[46]: file:/apps/apache-maven/apache-maven-3.6.1/lib/maven-builder-support-3.6.1.jar
06:43:53  constituent[47]: file:/apps/apache-maven/apache-maven-3.6.1/lib/wagon-file-3.3.2.jar

Followed by:

06:43:53  Exception in thread "main" java.lang.StackOverflowError
06:43:53  	at java.base/java.lang.ClassLoader.defineClass1(Native Method)
06:43:53  	at java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1016)
06:43:53  	at java.base/java.security.SecureClassLoader.defineClass(SecureClassLoader.java:174)
<lines omitted>
06:43:53  	at liquibase.parser.core.xml.AbstractChangeLogParser.parse(AbstractChangeLogParser.java:23)
06:43:53  	at liquibase.changelog.DatabaseChangeLog.include(DatabaseChangeLog.java:565)
06:43:53  	at liquibase.changelog.DatabaseChangeLog.handleChildNode(DatabaseChangeLog.java:348)
06:43:53  	at liquibase.changelog.DatabaseChangeLog.load(DatabaseChangeLog.java:305)
06:43:53  	at liquibase.parser.core.xml.AbstractChangeLogParser.parse(AbstractChangeLogParser.java:23)
06:43:53  	at liquibase.changelog.DatabaseChangeLog.include(DatabaseChangeLog.java:565)
06:43:53  	at liquibase.changelog.DatabaseChangeLog.handleChildNode(DatabaseChangeLog.java:348)
06:43:53  	at liquibase.changelog.DatabaseChangeLog.load(DatabaseChangeLog.java:305)

Hello @Beard0 . Thanks for reaching out. I would submit this as a GitHub issue here: GitHub · Where software is built

To help the community team triage the issue be sure to include the version of Liquibase you’re using, step by step instructions to reproduce the issue and, if possible, a full log file. If you can’t share the full log file, the complete stack trace would be very helpful.

A changelog that represents your setup would also be tremendously helpful.