[Fixed in 2.2.0] upgrade failing

Unimus support forum
Post Reply
tslytsly
Posts: 14
Joined: Mon Jun 01, 2020 7:57 am

Thu Jan 06, 2022 8:28 am

Hi,
I'm trying to upgrade to the latest build, log4j :( , but the upgrade is failing:

The script runs, but the webpage says:
Failed to start Unimus
Could not upgrade the database.
Please contact support or restart Unimus and try again.

last error in the logs is this:

Code: Select all

2022-01-06 08:15:24.447 ERROR 2233941 --- [SimpleAsyncTaskExecutor-1] n.u.b.d.LiquibaseChangeExecListenerImpl  : Failed to execute, rolling-back transaction

org.springframework.dao.TransientDataAccessResourceException: PreparedStatementCallback; SQL [update push_history_job set canceled = ?, result = ? where push_history_job.id = ?]; Cannot convert class com.sun.proxy.$Proxy287 to SQL type requested due to com.mysql.cj.exceptions.CJException - Start position [1] cannot exceed overall CLOB length [0]; nested exception is java.sql.SQLException: Cannot convert class com.sun.proxy.$Proxy287 to SQL type requested due to com.mysql.cj.exceptions.CJException - Start position [1] cannot exceed overall CLOB length [0]
        at org.springframework.jdbc.support.SQLStateSQLExceptionTranslator.doTranslate(SQLStateSQLExceptionTranslator.java:110)
        at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:70)
        at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:79)
        at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:79)
        at org.springframework.jdbc.core.JdbcTemplate.translateException(JdbcTemplate.java:1541)
        at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:667)
        at org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:960)
        at org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:981)
        at org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate.update(NamedParameterJdbcTemplate.java:328)
        at net.unimus.business.database.LiquibaseChangeExecListenerImpl.lambda$updatingPushHistoryJob$31(LiquibaseChangeExecListenerImpl.java:1529)
        at java.base/java.util.ArrayList.forEach(ArrayList.java:1541)
        at net.unimus.business.database.LiquibaseChangeExecListenerImpl.updatingPushHistoryJob(LiquibaseChangeExecListenerImpl.java:1500)
        at net.unimus.business.database.LiquibaseChangeExecListenerImpl.ran(LiquibaseChangeExecListenerImpl.java:439)
        at liquibase.changelog.visitor.UpdateVisitor.fireRan(UpdateVisitor.java:79)
        at liquibase.changelog.visitor.UpdateVisitor.visit(UpdateVisitor.java:57)
        at liquibase.changelog.ChangeLogIterator$2.lambda$null$0(ChangeLogIterator.java:111)
        at liquibase.Scope.lambda$child$0(Scope.java:160)
        at liquibase.Scope.child(Scope.java:169)
        at liquibase.Scope.child(Scope.java:159)
        at liquibase.Scope.child(Scope.java:138)
        at liquibase.changelog.ChangeLogIterator$2.lambda$run$1(ChangeLogIterator.java:110)
        at liquibase.Scope.lambda$child$0(Scope.java:160)
        at liquibase.Scope.child(Scope.java:169)
        at liquibase.Scope.child(Scope.java:159)
        at liquibase.Scope.child(Scope.java:138)
        at liquibase.Scope.child(Scope.java:222)
        at liquibase.changelog.ChangeLogIterator$2.run(ChangeLogIterator.java:94)
        at liquibase.Scope.lambda$child$0(Scope.java:160)
        at liquibase.Scope.child(Scope.java:169)
        at liquibase.Scope.child(Scope.java:159)
        at liquibase.Scope.child(Scope.java:138)
        at liquibase.Scope.child(Scope.java:222)
        at liquibase.Scope.child(Scope.java:226)
        at liquibase.changelog.ChangeLogIterator.run(ChangeLogIterator.java:66)
        at liquibase.Liquibase.lambda$null$0(Liquibase.java:273)
        at liquibase.Scope.lambda$child$0(Scope.java:160)
        at liquibase.Scope.child(Scope.java:169)
        at liquibase.Scope.child(Scope.java:159)
        at liquibase.Scope.child(Scope.java:138)
        at liquibase.Scope.child(Scope.java:222)
        at liquibase.Liquibase.lambda$update$1(Liquibase.java:272)
        at liquibase.Scope.lambda$child$0(Scope.java:160)
        at liquibase.Scope.child(Scope.java:169)
        at liquibase.Scope.child(Scope.java:159)
        at liquibase.Scope.child(Scope.java:138)
        at liquibase.Liquibase.runInScope(Liquibase.java:2322)
        at liquibase.Liquibase.update(Liquibase.java:216)
        at liquibase.Liquibase.update(Liquibase.java:202)
        at liquibase.integration.spring.SpringLiquibase.performUpdate(SpringLiquibase.java:322)
        at net.unimus.business.database.DatabaseUpdateSupport.update(DatabaseUpdateSupport.java:56)
        at net.unimus.business.database.Database.update(Database.java:246)
        at net.unimus.business.database.Database$$FastClassBySpringCGLIB$$47ee56e2.invoke(<generated>)
        at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)
        at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:779)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)
        at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:750)
        at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:97)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
        at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:750)
        at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:692)
        at net.unimus.business.database.Database$$EnhancerBySpringCGLIB$$1192e1df.update(<generated>)
        at net.unimus.system.bootstrap.boot.step.DatabaseUpdate.run(DatabaseUpdate.java:33)
        at net.unimus.system.bootstrap.boot.Boot.boot(Boot.java:94)
        at net.unimus.system.bootstrap.boot.Boot$$FastClassBySpringCGLIB$$e357c3b1.invoke(<generated>)
        at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)
        at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:779)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)
        at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:750)
        at org.springframework.aop.interceptor.AsyncExecutionInterceptor.lambda$invoke$0(AsyncExecutionInterceptor.java:115)
        at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
        at java.base/java.lang.Thread.run(Thread.java:829)
Caused by: java.sql.SQLException: Cannot convert class com.sun.proxy.$Proxy287 to SQL type requested due to com.mysql.cj.exceptions.CJException - Start position [1] cannot exceed overall CLOB length [0]
        at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:129)
        at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122)
        at com.mysql.cj.jdbc.ClientPreparedStatement.setObject(ClientPreparedStatement.java:1674)
        at org.springframework.jdbc.core.StatementCreatorUtils.setValue(StatementCreatorUtils.java:409)
        at org.springframework.jdbc.core.StatementCreatorUtils.setParameterValueInternal(StatementCreatorUtils.java:231)
        at org.springframework.jdbc.core.StatementCreatorUtils.setParameterValue(StatementCreatorUtils.java:146)
        at org.springframework.jdbc.core.PreparedStatementCreatorFactory$PreparedStatementCreatorImpl.setValues(PreparedStatementCreatorFactory.java:283)
        at org.springframework.jdbc.core.PreparedStatementCreatorFactory$PreparedStatementCreatorImpl.createPreparedStatement(PreparedStatementCreatorFactory.java:241)
        at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:649)
        ... 65 common frames omitted
Caused by: com.mysql.cj.exceptions.CJException: Start position [1] cannot exceed overall CLOB length [0]
        at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
        at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)
        at com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:61)
        at com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:105)
        at com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:100)
        at com.mysql.cj.ClientPreparedQueryBindings.setClob(ClientPreparedQueryBindings.java:403)
        at com.mysql.cj.AbstractQueryBindings.setObject(AbstractQueryBindings.java:1005)
        at com.mysql.cj.AbstractQueryBindings.setObject(AbstractQueryBindings.java:302)
        at com.mysql.cj.AbstractQueryBindings.setObject(AbstractQueryBindings.java:293)
        at com.mysql.cj.jdbc.ClientPreparedStatement.setObject(ClientPreparedStatement.java:1672)
        ... 71 common frames omitted
Caused by: java.sql.SQLException: Start position [1] cannot exceed overall CLOB length [0]
        at org.hibernate.engine.jdbc.ClobProxy.invoke(ClobProxy.java:129)
        at com.sun.proxy.$Proxy287.getSubString(Unknown Source)
        at com.mysql.cj.ClientPreparedQueryBindings.setClob(ClientPreparedQueryBindings.java:396)
        ... 75 common frames omitted

2022-01-06 08:15:24.519 ERROR 2233941 --- [SimpleAsyncTaskExecutor-1] n.u.s.b.boot.step.DatabaseUpdate         : Failed to update database schema. Reason = 'liquibase.exception.LiquibaseException: java.lang.RuntimeException: Failed to set canceled boolean value in push history jobs'
Vik@Unimus
Posts: 198
Joined: Thu Aug 05, 2021 6:35 pm

Fri Jan 07, 2022 12:41 pm

Hello,

Thank you for reaching out. Would you mind submitting a support ticket via our Portal? You can also attach Unimus' log you can find at:
Linux - /var/log/unimus
Windows - C:\ProgramData\Unimus\log

Thank you.
Vik@Unimus
Posts: 198
Joined: Thu Aug 05, 2021 6:35 pm

Thu Mar 03, 2022 1:07 pm

Just as an update, the root cause of this issue was identified and fixed one of our 2.2.0 beta branches and is also present in our current stable branch.
Post Reply