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)