DB schema breaking change when upgrade from 7.13 to 7.15

I was running camunda engine 7.13 that was pulled from the docker image and it was running fine with Postgresql then moved to spring-boot camunda starter 7.15 but when I try to run a process instance of a deployed process, I get an incompatible DB schema issue which states that there is a missing relation.

relation "act_ru_task_meter_log" does not exist

I suppose that there is a mechanism in the camunda project that maintains the new changes of the DB to keep it compatible with older versions like liquibase, is that right?

Here is the error I get when running a new instance.

2021-05-05 21:18:34.909 WARN 1 --- [nio-8080-exec-6] org.camunda.bpm.engine.rest.exception : ENGINE-REST-HTTP500 org.camunda.bpm.engine.rest.exception.RestException: Cannot instantiate process definition lg-customer-process:1:8d24c1ac-ada4-11eb-91ff-0a580a1404df: An exception occurred in the persistence layer. Please check the server logs for a detailed message and the entire exception stack trace.

5/5/2021 9:18:34 PM at org.camunda.bpm.engine.rest.sub.repository.impl.ProcessDefinitionResourceImpl.startProcessInstance(ProcessDefinitionResourceImpl.java:131)

5/5/2021 9:18:34 PM at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

5/5/2021 9:18:34 PM at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

5/5/2021 9:18:34 PM at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

5/5/2021 9:18:34 PM at java.lang.reflect.Method.invoke(Method.java:498)

5/5/2021 9:18:34 PM at org.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory.lambda$static$0(ResourceMethodInvocationHandlerFactory.java:52)

5/5/2021 9:18:34 PM at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher$1.run(AbstractJavaResourceMethodDispatcher.java:124)

5/5/2021 9:18:34 PM at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher.java:167)

5/5/2021 9:18:34 PM at org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider$TypeOutInvoker.doDispatch(JavaResourceMethodDispatcherProvider.java:219)

5/5/2021 9:18:34 PM at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch(AbstractJavaResourceMethodDispatcher.java:79)

5/5/2021 9:18:34 PM at org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:469)

5/5/2021 9:18:34 PM at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:391)

5/5/2021 9:18:34 PM at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:80)

5/5/2021 9:18:34 PM at org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:255)

5/5/2021 9:18:34 PM at org.glassfish.jersey.internal.Errors$1.call(Errors.java:248)

5/5/2021 9:18:34 PM at org.glassfish.jersey.internal.Errors$1.call(Errors.java:244)

5/5/2021 9:18:34 PM at org.glassfish.jersey.internal.Errors.process(Errors.java:292)

5/5/2021 9:18:34 PM at org.glassfish.jersey.internal.Errors.process(Errors.java:274)

5/5/2021 9:18:34 PM at org.glassfish.jersey.internal.Errors.process(Errors.java:244)

5/5/2021 9:18:34 PM at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:265)

5/5/2021 9:18:34 PM at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:234)

5/5/2021 9:18:34 PM at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:680)

5/5/2021 9:18:34 PM at org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:394)

5/5/2021 9:18:34 PM at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:346)

5/5/2021 9:18:34 PM at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:366)

5/5/2021 9:18:34 PM at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:319)

5/5/2021 9:18:34 PM at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:205)

5/5/2021 9:18:34 PM at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:227)

5/5/2021 9:18:34 PM at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)

5/5/2021 9:18:34 PM at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)

5/5/2021 9:18:34 PM at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)

5/5/2021 9:18:34 PM at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)

5/5/2021 9:18:34 PM at org.camunda.bpm.engine.rest.filter.CacheControlFilter.doFilter(CacheControlFilter.java:45)

5/5/2021 9:18:34 PM at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)

5/5/2021 9:18:34 PM at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)

5/5/2021 9:18:34 PM at org.camunda.bpm.engine.rest.filter.EmptyBodyFilter.doFilter(EmptyBodyFilter.java:99)

5/5/2021 9:18:34 PM at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)

5/5/2021 9:18:34 PM at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)

5/5/2021 9:18:34 PM at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)

5/5/2021 9:18:34 PM at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)

5/5/2021 9:18:34 PM at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)

5/5/2021 9:18:34 PM at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)

5/5/2021 9:18:34 PM at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)

5/5/2021 9:18:34 PM at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)

5/5/2021 9:18:34 PM at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)

5/5/2021 9:18:34 PM at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)

5/5/2021 9:18:34 PM at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)

5/5/2021 9:18:34 PM at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)

5/5/2021 9:18:34 PM at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)

5/5/2021 9:18:34 PM at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)

5/5/2021 9:18:34 PM at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202)

5/5/2021 9:18:34 PM at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)

5/5/2021 9:18:34 PM at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:542)

5/5/2021 9:18:34 PM at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:143)

5/5/2021 9:18:34 PM at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)

5/5/2021 9:18:34 PM at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)

5/5/2021 9:18:34 PM at org.apache.catalina.valves.RemoteIpValve.invoke(RemoteIpValve.java:764)

5/5/2021 9:18:34 PM at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:346)

5/5/2021 9:18:34 PM at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:374)

5/5/2021 9:18:34 PM at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)

5/5/2021 9:18:34 PM at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:887)

5/5/2021 9:18:34 PM at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1684)

5/5/2021 9:18:34 PM at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)

5/5/2021 9:18:34 PM at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)

5/5/2021 9:18:34 PM at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)

5/5/2021 9:18:34 PM at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)

5/5/2021 9:18:34 PM at java.lang.Thread.run(Thread.java:748)

5/5/2021 9:18:34 PM Caused by: org.camunda.bpm.engine.ProcessEngineException: An exception occurred in the persistence layer. Please check the server logs for a detailed message and the entire exception stack trace.

5/5/2021 9:18:34 PM at org.camunda.bpm.engine.impl.util.ExceptionUtil.wrapPersistenceException(ExceptionUtil.java:263)

5/5/2021 9:18:34 PM at org.camunda.bpm.engine.impl.db.EnginePersistenceLogger.flushDbOperationException(EnginePersistenceLogger.java:132)

5/5/2021 9:18:34 PM at org.camunda.bpm.engine.impl.db.entitymanager.DbEntityManager.flushDbOperations(DbEntityManager.java:364)

5/5/2021 9:18:34 PM at org.camunda.bpm.engine.impl.db.entitymanager.DbEntityManager.flushDbOperationManager(DbEntityManager.java:323)

5/5/2021 9:18:34 PM at org.camunda.bpm.engine.impl.db.entitymanager.DbEntityManager.flush(DbEntityManager.java:295)

5/5/2021 9:18:34 PM at org.camunda.bpm.engine.impl.interceptor.CommandContext.flushSessions(CommandContext.java:272)

5/5/2021 9:18:34 PM at org.camunda.bpm.engine.impl.interceptor.CommandContext.close(CommandContext.java:188)

5/5/2021 9:18:34 PM at org.camunda.bpm.engine.impl.interceptor.CommandContextInterceptor.execute(CommandContextInterceptor.java:119)

5/5/2021 9:18:34 PM at org.camunda.bpm.engine.spring.SpringTransactionInterceptor$1.doInTransaction(SpringTransactionInterceptor.java:72)

5/5/2021 9:18:34 PM at org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:140)

5/5/2021 9:18:34 PM at org.camunda.bpm.engine.spring.SpringTransactionInterceptor.execute(SpringTransactionInterceptor.java:70)

5/5/2021 9:18:34 PM at org.camunda.bpm.engine.impl.interceptor.ProcessApplicationContextInterceptor.execute(ProcessApplicationContextInterceptor.java:70)

5/5/2021 9:18:34 PM at org.camunda.bpm.engine.impl.interceptor.CommandCounterInterceptor.execute(CommandCounterInterceptor.java:35)

5/5/2021 9:18:34 PM at org.camunda.bpm.engine.impl.interceptor.LogInterceptor.execute(LogInterceptor.java:33)

5/5/2021 9:18:34 PM at org.camunda.bpm.engine.impl.ProcessInstantiationBuilderImpl.executeWithVariablesInReturn(ProcessInstantiationBuilderImpl.java:166)

5/5/2021 9:18:34 PM at org.camunda.bpm.engine.rest.sub.repository.impl.ProcessDefinitionResourceImpl.startProcessInstanceAtActivities(ProcessDefinitionResourceImpl.java:175)

5/5/2021 9:18:34 PM at org.camunda.bpm.engine.rest.sub.repository.impl.ProcessDefinitionResourceImpl.startProcessInstance(ProcessDefinitionResourceImpl.java:125)

5/5/2021 9:18:34 PM ... 66 more

5/5/2021 9:18:34 PM Caused by: org.camunda.bpm.engine.ProcessEngineException: ENGINE-03004 Exception while executing Database Operation 'INSERT TaskMeterLogEntity[4e07bcb2-adce-11eb-91ff-0a580a1404df]' with message '

5/5/2021 9:18:34 PM ### Error flushing statements. Cause: org.apache.ibatis.executor.BatchExecutorException: org.camunda.bpm.engine.impl.persistence.entity.TaskMeterLogEntity.insertTaskMeterLog (batch index #1) failed. Cause: java.sql.BatchUpdateException: Batch entry 0 insert into ACT_RU_TASK_METER_LOG (ID_, TIMESTAMP_, ASSIGNEE_HASH_)

5/5/2021 9:18:34 PM values (

5/5/2021 9:18:34 PM '4e07bcb2-adce-11eb-91ff-0a580a1404df',

5/5/2021 9:18:34 PM '2021-05-05 21:18:34.893+03',

5/5/2021 9:18:34 PM -8447525179039259045

5/5/2021 9:18:34 PM ) was aborted: ERROR: relation "act_ru_task_meter_log" does not exist

5/5/2021 9:18:34 PM Position: 13 Call getNextException to see other errors in the batch.

5/5/2021 9:18:34 PM ### Cause: org.apache.ibatis.executor.BatchExecutorException: org.camunda.bpm.engine.impl.persistence.entity.TaskMeterLogEntity.insertTaskMeterLog (batch index #1) failed. Cause: java.sql.BatchUpdateException: Batch entry 0 insert into ACT_RU_TASK_METER_LOG (ID_, TIMESTAMP_, ASSIGNEE_HASH_)

5/5/2021 9:18:34 PM values (

5/5/2021 9:18:34 PM '4e07bcb2-adce-11eb-91ff-0a580a1404df',

5/5/2021 9:18:34 PM '2021-05-05 21:18:34.893+03',

5/5/2021 9:18:34 PM -8447525179039259045

5/5/2021 9:18:34 PM ) was aborted: ERROR: relation "act_ru_task_meter_log" does not exist

5/5/2021 9:18:34 PM Position: 13 Call getNextException to see other errors in the batch.

5/5/2021 9:18:34 PM java.sql.BatchUpdateException: Batch entry 0 insert into ACT_RU_TASK_METER_LOG (ID_, TIMESTAMP_, ASSIGNEE_HASH_)

5/5/2021 9:18:34 PM values (

5/5/2021 9:18:34 PM '4e07bcb2-adce-11eb-91ff-0a580a1404df',

5/5/2021 9:18:34 PM '2021-05-05 21:18:34.893+03',

5/5/2021 9:18:34 PM -8447525179039259045

5/5/2021 9:18:34 PM ) was aborted: ERROR: relation "act_ru_task_meter_log" does not exist

5/5/2021 9:18:34 PM Position: 13 Call getNextException to see other errors in the batch.

5/5/2021 9:18:34 PM org.postgresql.util.PSQLException: ERROR: relation "act_ru_task_meter_log" does not exist

5/5/2021 9:18:34 PM Position: 13

5/5/2021 9:18:34 PM org.postgresql.util.PSQLException: ERROR: relation "act_ru_task_meter_log" does not exist

5/5/2021 9:18:34 PM Position: 13

5/5/2021 9:18:34 PM '. Flush summary:

5/5/2021 9:18:34 PM [

5/5/2021 9:18:34 PM INSERT TaskMeterLogEntity[4e07bcb2-adce-11eb-91ff-0a580a1404df]

5/5/2021 9:18:34 PM INSERT HistoricTaskInstanceEventEntity[4e07bcb0-adce-11eb-91ff-0a580a1404df]

5/5/2021 9:18:34 PM INSERT HistoricProcessInstanceEventEntity[4e076e88-adce-11eb-91ff-0a580a1404df]

5/5/2021 9:18:34 PM INSERT HistoricIdentityLinkLogEventEntity[4e07bcb1-adce-11eb-91ff-0a580a1404df]

5/5/2021 9:18:34 PM INSERT HistoricActivityInstanceEventEntity[Activity_166a3ik:4e07959f-adce-11eb-91ff-0a580a1404df]

5/5/2021 9:18:34 PM INSERT HistoricActivityInstanceEventEntity[Event_10rx9cc:4e07959e-adce-11eb-91ff-0a580a1404df]

5/5/2021 9:18:34 PM INSERT HistoricActivityInstanceEventEntity[Event_14dzsgm:4e076e89-adce-11eb-91ff-0a580a1404df]

5/5/2021 9:18:34 PM INSERT ExecutionEntity[4e076e88-adce-11eb-91ff-0a580a1404df]

5/5/2021 9:18:34 PM INSERT ExecutionEntity[4e07959a-adce-11eb-91ff-0a580a1404df]

5/5/2021 9:18:34 PM INSERT ExecutionEntity[4e07959b-adce-11eb-91ff-0a580a1404df]

5/5/2021 9:18:34 PM INSERT ExecutionEntity[4e07959c-adce-11eb-91ff-0a580a1404df]

5/5/2021 9:18:34 PM INSERT TaskEntity[4e07bcb0-adce-11eb-91ff-0a580a1404df]

5/5/2021 9:18:34 PM INSERT EventSubscriptionEntity[4e07959d-adce-11eb-91ff-0a580a1404df]

5/5/2021 9:18:34 PM ]

5/5/2021 9:18:34 PM at org.camunda.bpm.engine.impl.db.EnginePersistenceLogger.flushDbOperationException(EnginePersistenceLogger.java:131)

5/5/2021 9:18:34 PM ... 81 more

5/5/2021 9:18:34 PM Caused by: org.apache.ibatis.exceptions.PersistenceException:

5/5/2021 9:18:34 PM ### Error flushing statements. Cause: org.apache.ibatis.executor.BatchExecutorException: org.camunda.bpm.engine.impl.persistence.entity.TaskMeterLogEntity.insertTaskMeterLog (batch index #1) failed. Cause: java.sql.BatchUpdateException: Batch entry 0 insert into ACT_RU_TASK_METER_LOG (ID_, TIMESTAMP_, ASSIGNEE_HASH_)

5/5/2021 9:18:34 PM values (

5/5/2021 9:18:34 PM '4e07bcb2-adce-11eb-91ff-0a580a1404df',

5/5/2021 9:18:34 PM '2021-05-05 21:18:34.893+03',

5/5/2021 9:18:34 PM -8447525179039259045

5/5/2021 9:18:34 PM ) was aborted: ERROR: relation "act_ru_task_meter_log" does not exist

5/5/2021 9:18:34 PM Position: 13 Call getNextException to see other errors in the batch.

5/5/2021 9:18:34 PM ### Cause: org.apache.ibatis.executor.BatchExecutorException: org.camunda.bpm.engine.impl.persistence.entity.TaskMeterLogEntity.insertTaskMeterLog (batch index #1) failed. Cause: java.sql.BatchUpdateException: Batch entry 0 insert into ACT_RU_TASK_METER_LOG (ID_, TIMESTAMP_, ASSIGNEE_HASH_)

5/5/2021 9:18:34 PM values (

5/5/2021 9:18:34 PM '4e07bcb2-adce-11eb-91ff-0a580a1404df',

5/5/2021 9:18:34 PM '2021-05-05 21:18:34.893+03',

5/5/2021 9:18:34 PM -8447525179039259045

5/5/2021 9:18:34 PM ) was aborted: ERROR: relation "act_ru_task_meter_log" does not exist

5/5/2021 9:18:34 PM Position: 13 Call getNextException to see other errors in the batch.

5/5/2021 9:18:34 PM at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)

5/5/2021 9:18:34 PM at org.apache.ibatis.session.defaults.DefaultSqlSession.flushStatements(DefaultSqlSession.java:254)

5/5/2021 9:18:34 PM at org.camunda.bpm.engine.impl.db.sql.DbSqlSession.flushBatchOperations(DbSqlSession.java:444)

5/5/2021 9:18:34 PM at org.camunda.bpm.engine.impl.db.sql.BatchDbSqlSession.executeDbOperations(BatchDbSqlSession.java:74)

5/5/2021 9:18:34 PM at org.camunda.bpm.engine.impl.db.entitymanager.DbEntityManager.flushDbOperations(DbEntityManager.java:341)

5/5/2021 9:18:34 PM ... 80 more

5/5/2021 9:18:34 PM Caused by: org.apache.ibatis.executor.BatchExecutorException: org.camunda.bpm.engine.impl.persistence.entity.TaskMeterLogEntity.insertTaskMeterLog (batch index #1) failed. Cause: java.sql.BatchUpdateException: Batch entry 0 insert into ACT_RU_TASK_METER_LOG (ID_, TIMESTAMP_, ASSIGNEE_HASH_)

5/5/2021 9:18:34 PM values (

5/5/2021 9:18:34 PM '4e07bcb2-adce-11eb-91ff-0a580a1404df',

5/5/2021 9:18:34 PM '2021-05-05 21:18:34.893+03',

5/5/2021 9:18:34 PM -8447525179039259045

5/5/2021 9:18:34 PM ) was aborted: ERROR: relation "act_ru_task_meter_log" does not exist

5/5/2021 9:18:34 PM Position: 13 Call getNextException to see other errors in the batch.

5/5/2021 9:18:34 PM at org.apache.ibatis.executor.BatchExecutor.doFlushStatements(BatchExecutor.java:149)

5/5/2021 9:18:34 PM at org.apache.ibatis.executor.BaseExecutor.flushStatements(BaseExecutor.java:129)

5/5/2021 9:18:34 PM at org.apache.ibatis.executor.BaseExecutor.flushStatements(BaseExecutor.java:122)

5/5/2021 9:18:34 PM at org.apache.ibatis.executor.CachingExecutor.flushStatements(CachingExecutor.java:114)

5/5/2021 9:18:34 PM at org.apache.ibatis.session.defaults.DefaultSqlSession.flushStatements(DefaultSqlSession.java:252)

5/5/2021 9:18:34 PM ... 83 more

5/5/2021 9:18:34 PM Caused by: java.sql.BatchUpdateException: Batch entry 0 insert into ACT_RU_TASK_METER_LOG (ID_, TIMESTAMP_, ASSIGNEE_HASH_)

5/5/2021 9:18:34 PM values (

5/5/2021 9:18:34 PM '4e07bcb2-adce-11eb-91ff-0a580a1404df',

5/5/2021 9:18:34 PM '2021-05-05 21:18:34.893+03',

5/5/2021 9:18:34 PM -8447525179039259045

5/5/2021 9:18:34 PM ) was aborted: ERROR: relation "act_ru_task_meter_log" does not exist

5/5/2021 9:18:34 PM Position: 13 Call getNextException to see other errors in the batch.

5/5/2021 9:18:34 PM at org.postgresql.jdbc.BatchResultHandler.handleError(BatchResultHandler.java:169)

5/5/2021 9:18:34 PM at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2286)

5/5/2021 9:18:34 PM at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:521)

5/5/2021 9:18:34 PM at org.postgresql.jdbc.PgStatement.internalExecuteBatch(PgStatement.java:878)

5/5/2021 9:18:34 PM at org.postgresql.jdbc.PgStatement.executeBatch(PgStatement.java:901)

5/5/2021 9:18:34 PM at org.postgresql.jdbc.PgPreparedStatement.executeBatch(PgPreparedStatement.java:1644)

5/5/2021 9:18:34 PM at com.zaxxer.hikari.pool.ProxyStatement.executeBatch(ProxyStatement.java:128)

5/5/2021 9:18:34 PM at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.executeBatch(HikariProxyPreparedStatement.java)

5/5/2021 9:18:34 PM at org.apache.ibatis.executor.BatchExecutor.doFlushStatements(BatchExecutor.java:123)

5/5/2021 9:18:34 PM ... 87 more

5/5/2021 9:18:34 PM Caused by: org.postgresql.util.PSQLException: ERROR: relation "act_ru_task_meter_log" does not exist

5/5/2021 9:18:34 PM Position: 13

5/5/2021 9:18:34 PM at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2553)

5/5/2021 9:18:34 PM at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2285)

5/5/2021 9:18:34 PM ... 94 more

The default value of camunda.bpm.database.schema-update is true. However, There is no update that gets executed for missing parts.

Another issue is when I try with camunda.bpm.database.schema-update=drop-create, I got another compatible issue if I get it right.

index "act_idx_task_owner" does not exist, details in the below stack trace.

2021-05-06 03:19:00.768 ERROR 1 --- [ main] org.camunda.bpm.engine.persistence : ENGINE-03015 Problem during schema operation 'drop' with statement 'drop table ACT_RU_INCIDENT'. Cause: 'ERROR: current transaction is aborted, commands ignored until end of transaction block'

5/6/2021 3:19:00 AM 2021-05-06 03:19:00.769 ERROR 1 --- [ main] org.camunda.bpm.engine.persistence : ENGINE-03015 Problem during schema operation 'drop' with statement 'drop table ACT_RU_AUTHORIZATION'. Cause: 'ERROR: current transaction is aborted, commands ignored until end of transaction block'

5/6/2021 3:19:00 AM 2021-05-06 03:19:00.769 ERROR 1 --- [ main] org.camunda.bpm.engine.persistence : ENGINE-03015 Problem during schema operation 'drop' with statement 'drop table ACT_RU_FILTER'. Cause: 'ERROR: current transaction is aborted, commands ignored until end of transaction block'

5/6/2021 3:19:00 AM 2021-05-06 03:19:00.770 ERROR 1 --- [ main] org.camunda.bpm.engine.persistence : ENGINE-03015 Problem during schema operation 'drop' with statement 'drop table ACT_RU_METER_LOG'. Cause: 'ERROR: current transaction is aborted, commands ignored until end of transaction block'

5/6/2021 3:19:00 AM 2021-05-06 03:19:00.771 ERROR 1 --- [ main] org.camunda.bpm.engine.persistence : ENGINE-03015 Problem during schema operation 'drop' with statement 'drop table ACT_RU_TASK_METER_LOG'. Cause: 'ERROR: current transaction is aborted, commands ignored until end of transaction block'

5/6/2021 3:19:00 AM 2021-05-06 03:19:00.771 ERROR 1 --- [ main] org.camunda.bpm.engine.persistence : ENGINE-03015 Problem during schema operation 'drop' with statement 'drop table ACT_RU_EXT_TASK'. Cause: 'ERROR: current transaction is aborted, commands ignored until end of transaction block'

5/6/2021 3:19:00 AM 2021-05-06 03:19:00.772 ERROR 1 --- [ main] org.camunda.bpm.engine.persistence : ENGINE-03015 Problem during schema operation 'drop' with statement 'drop table ACT_RU_BATCH'. Cause: 'ERROR: current transaction is aborted, commands ignored until end of transaction block'

5/6/2021 3:19:00 AM 2021-05-06 03:19:00.772 ERROR 1 --- [ main] org.camunda.bpm.engine.persistence : ENGINE-03015 Problem during schema operation 'drop' with statement 'drop table ACT_GE_SCHEMA_LOG'. Cause: 'ERROR: current transaction is aborted, commands ignored until end of transaction block'

5/6/2021 3:19:00 AM 2021-05-06 03:19:00.772 INFO 1 --- [ main] org.camunda.bpm.engine.persistence : ENGINE-03016 Performing database operation 'drop' on component 'engine' with resource 'org/camunda/bpm/engine/db/drop/activiti.postgres.drop.engine.sql'

5/6/2021 3:19:00 AM 2021-05-06 03:19:00.786 ERROR 1 --- [ main] org.camunda.bpm.engine.context : ENGINE-16004 Exception while closing command context: ENGINE-03018 Could not check if tables are already present using metadata.

5/6/2021 3:19:00 AM

5/6/2021 3:19:00 AM org.camunda.bpm.engine.ProcessEngineException: ENGINE-03018 Could not check if tables are already present using metadata.

5/6/2021 3:19:00 AM at org.camunda.bpm.engine.impl.db.EnginePersistenceLogger.checkDatabaseTableException(EnginePersistenceLogger.java:242) ~[camunda-engine-7.15.0.jar!/:7.15.0]

5/6/2021 3:19:00 AM at org.camunda.bpm.engine.impl.db.sql.DbSqlSession.isTablePresent(DbSqlSession.java:658) ~[camunda-engine-7.15.0.jar!/:7.15.0]

5/6/2021 3:19:00 AM at org.camunda.bpm.engine.impl.db.sql.DbSqlSession.isEngineTablePresent(DbSqlSession.java:600) ~[camunda-engine-7.15.0.jar!/:7.15.0]

5/6/2021 3:19:00 AM at org.camunda.bpm.engine.impl.db.AbstractPersistenceSession.dbSchemaCreate(AbstractPersistenceSession.java:86) ~[camunda-engine-7.15.0.jar!/:7.15.0]

5/6/2021 3:19:00 AM at org.camunda.bpm.engine.impl.SchemaOperationsProcessEngineBuild.execute(SchemaOperationsProcessEngineBuild.java:52) ~[camunda-engine-7.15.0.jar!/:7.15.0]

5/6/2021 3:19:00 AM at org.camunda.bpm.engine.impl.SchemaOperationsProcessEngineBuild.execute(SchemaOperationsProcessEngineBuild.java:34) ~[camunda-engine-7.15.0.jar!/:7.15.0]

5/6/2021 3:19:00 AM at org.camunda.bpm.engine.impl.interceptor.CommandExecutorImpl.execute(CommandExecutorImpl.java:28) ~[camunda-engine-7.15.0.jar!/:7.15.0]

5/6/2021 3:19:00 AM at org.camunda.bpm.engine.impl.interceptor.CommandContextInterceptor.execute(CommandContextInterceptor.java:110) ~[camunda-engine-7.15.0.jar!/:7.15.0]

5/6/2021 3:19:00 AM at org.camunda.bpm.engine.spring.SpringTransactionInterceptor$1.doInTransaction(SpringTransactionInterceptor.java:72) [camunda-engine-spring-7.15.0.jar!/:7.15.0]

5/6/2021 3:19:00 AM at org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:140) [spring-tx-5.3.6.jar!/:5.3.6]

5/6/2021 3:19:00 AM at org.camunda.bpm.engine.spring.SpringTransactionInterceptor.execute(SpringTransactionInterceptor.java:70) [camunda-engine-spring-7.15.0.jar!/:7.15.0]

5/6/2021 3:19:00 AM at org.camunda.bpm.engine.impl.interceptor.ProcessApplicationContextInterceptor.execute(ProcessApplicationContextInterceptor.java:70) [camunda-engine-7.15.0.jar!/:7.15.0]

5/6/2021 3:19:00 AM at org.camunda.bpm.engine.impl.interceptor.CommandCounterInterceptor.execute(CommandCounterInterceptor.java:35) [camunda-engine-7.15.0.jar!/:7.15.0]

5/6/2021 3:19:00 AM at org.camunda.bpm.engine.impl.interceptor.LogInterceptor.execute(LogInterceptor.java:33) [camunda-engine-7.15.0.jar!/:7.15.0]

5/6/2021 3:19:00 AM at org.camunda.bpm.engine.impl.ProcessEngineImpl.executeSchemaOperations(ProcessEngineImpl.java:148) [camunda-engine-7.15.0.jar!/:7.15.0]

5/6/2021 3:19:00 AM at org.camunda.bpm.engine.impl.ProcessEngineImpl.<init>(ProcessEngineImpl.java:111) [camunda-engine-7.15.0.jar!/:7.15.0]

5/6/2021 3:19:00 AM at org.camunda.bpm.engine.impl.cfg.ProcessEngineConfigurationImpl.buildProcessEngine(ProcessEngineConfigurationImpl.java:978) [camunda-engine-7.15.0.jar!/:7.15.0]

5/6/2021 3:19:00 AM at org.camunda.bpm.engine.spring.SpringTransactionsProcessEngineConfiguration.buildProcessEngine(SpringTransactionsProcessEngineConfiguration.java:67) [camunda-engine-spring-7.15.0.jar!/:7.15.0]

5/6/2021 3:19:00 AM at org.camunda.bpm.engine.spring.ProcessEngineFactoryBean.getObject(ProcessEngineFactoryBean.java:55) [camunda-engine-spring-7.15.0.jar!/:7.15.0]

5/6/2021 3:19:00 AM at org.camunda.bpm.engine.spring.ProcessEngineFactoryBean.getObject(ProcessEngineFactoryBean.java:34) [camunda-engine-spring-7.15.0.jar!/:7.15.0]

5/6/2021 3:19:00 AM at org.springframework.beans.factory.support.FactoryBeanRegistrySupport.doGetObjectFromFactoryBean(FactoryBeanRegistrySupport.java:169) [spring-beans-5.3.6.jar!/:5.3.6]

5/6/2021 3:19:00 AM at org.springframework.beans.factory.support.FactoryBeanRegistrySupport.getObjectFromFactoryBean(FactoryBeanRegistrySupport.java:101) [spring-beans-5.3.6.jar!/:5.3.6]

5/6/2021 3:19:00 AM at org.springframework.beans.factory.support.AbstractBeanFactory.getObjectForBeanInstance(AbstractBeanFactory.java:1884) [spring-beans-5.3.6.jar!/:5.3.6]

5/6/2021 3:19:00 AM at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.getObjectForBeanInstance(AbstractAutowireCapableBeanFactory.java:1266) [spring-beans-5.3.6.jar!/:5.3.6]

5/6/2021 3:19:00 AM at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:345) [spring-beans-5.3.6.jar!/:5.3.6]

5/6/2021 3:19:00 AM at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) [spring-beans-5.3.6.jar!/:5.3.6]

5/6/2021 3:19:00 AM at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) [spring-beans-5.3.6.jar!/:5.3.6]

5/6/2021 3:19:00 AM at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1380) [spring-beans-5.3.6.jar!/:5.3.6]

5/6/2021 3:19:00 AM at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1300) [spring-beans-5.3.6.jar!/:5.3.6]

5/6/2021 3:19:00 AM at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:887) [spring-beans-5.3.6.jar!/:5.3.6]

5/6/2021 3:19:00 AM at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791) [spring-beans-5.3.6.jar!/:5.3.6]

5/6/2021 3:19:00 AM at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:229) [spring-beans-5.3.6.jar!/:5.3.6]

5/6/2021 3:19:00 AM at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1354) [spring-beans-5.3.6.jar!/:5.3.6]

5/6/2021 3:19:00 AM at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1204) [spring-beans-5.3.6.jar!/:5.3.6]

5/6/2021 3:19:00 AM at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:564) [spring-beans-5.3.6.jar!/:5.3.6]

5/6/2021 3:19:00 AM at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:524) [spring-beans-5.3.6.jar!/:5.3.6]

5/6/2021 3:19:00 AM at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) [spring-beans-5.3.6.jar!/:5.3.6]

5/6/2021 3:19:00 AM at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.6.jar!/:5.3.6]

5/6/2021 3:19:00 AM at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) [spring-beans-5.3.6.jar!/:5.3.6]

5/6/2021 3:19:00 AM at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) [spring-beans-5.3.6.jar!/:5.3.6]

5/6/2021 3:19:00 AM at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:944) [spring-beans-5.3.6.jar!/:5.3.6]

5/6/2021 3:19:00 AM at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:918) ~[spring-context-5.3.6.jar!/:5.3.6]

5/6/2021 3:19:00 AM at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583) ~[spring-context-5.3.6.jar!/:5.3.6]

5/6/2021 3:19:00 AM at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:144) ~[spring-boot-2.4.5.jar!/:2.4.5]

5/6/2021 3:19:00 AM at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:782) ~[spring-boot-2.4.5.jar!/:2.4.5]

5/6/2021 3:19:00 AM at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:774) ~[spring-boot-2.4.5.jar!/:2.4.5]

5/6/2021 3:19:00 AM at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:439) ~[spring-boot-2.4.5.jar!/:2.4.5]

5/6/2021 3:19:00 AM at org.springframework.boot.SpringApplication.run(SpringApplication.java:339) ~[spring-boot-2.4.5.jar!/:2.4.5]

5/6/2021 3:19:00 AM at org.springframework.boot.SpringApplication.run(SpringApplication.java:1340) ~[spring-boot-2.4.5.jar!/:2.4.5]

5/6/2021 3:19:00 AM at org.springframework.boot.SpringApplication.run(SpringApplication.java:1329) ~[spring-boot-2.4.5.jar!/:2.4.5]

5/6/2021 3:19:00 AM at com.warba.camunda.CamundaRemoteEngineApp.main(CamundaRemoteEngineApp.java:22) ~[classes!/:na]

5/6/2021 3:19:00 AM at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_212]

5/6/2021 3:19:00 AM at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_212]

5/6/2021 3:19:00 AM at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_212]

5/6/2021 3:19:00 AM at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_212]

5/6/2021 3:19:00 AM at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:49) ~[app.jar:na]

5/6/2021 3:19:00 AM at org.springframework.boot.loader.Launcher.launch(Launcher.java:108) ~[app.jar:na]

5/6/2021 3:19:00 AM at org.springframework.boot.loader.Launcher.launch(Launcher.java:58) ~[app.jar:na]

5/6/2021 3:19:00 AM at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:88) ~[app.jar:na]

5/6/2021 3:19:00 AM Caused by: org.postgresql.util.PSQLException: ERROR: current transaction is aborted, commands ignored until end of transaction block

5/6/2021 3:19:00 AM at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2553) ~[postgresql-42.2.19.jar!/:42.2.19]

5/6/2021 3:19:00 AM at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2285) ~[postgresql-42.2.19.jar!/:42.2.19]

5/6/2021 3:19:00 AM at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:323) ~[postgresql-42.2.19.jar!/:42.2.19]

5/6/2021 3:19:00 AM at org.postgresql.jdbc.PgStatement.executeInternal(PgStatement.java:481) ~[postgresql-42.2.19.jar!/:42.2.19]

5/6/2021 3:19:00 AM at org.postgresql.jdbc.PgStatement.execute(PgStatement.java:401) ~[postgresql-42.2.19.jar!/:42.2.19]

5/6/2021 3:19:00 AM at org.postgresql.jdbc.PgStatement.executeWithFlags(PgStatement.java:322) ~[postgresql-42.2.19.jar!/:42.2.19]

5/6/2021 3:19:00 AM at org.postgresql.jdbc.PgStatement.executeCachedSql(PgStatement.java:308) ~[postgresql-42.2.19.jar!/:42.2.19]

5/6/2021 3:19:00 AM at org.postgresql.jdbc.PgStatement.executeWithFlags(PgStatement.java:284) ~[postgresql-42.2.19.jar!/:42.2.19]

5/6/2021 3:19:00 AM at org.postgresql.jdbc.PgStatement.executeQuery(PgStatement.java:236) ~[postgresql-42.2.19.jar!/:42.2.19]

5/6/2021 3:19:00 AM at org.postgresql.jdbc.PgDatabaseMetaData.getTables(PgDatabaseMetaData.java:1347) ~[postgresql-42.2.19.jar!/:42.2.19]

5/6/2021 3:19:00 AM at com.zaxxer.hikari.pool.ProxyDatabaseMetaData.getTables(ProxyDatabaseMetaData.java:69) ~[HikariCP-3.4.5.jar!/:na]

5/6/2021 3:19:00 AM at com.zaxxer.hikari.pool.HikariProxyDatabaseMetaData.getTables(HikariProxyDatabaseMetaData.java) ~[HikariCP-3.4.5.jar!/:na]

5/6/2021 3:19:00 AM at org.camunda.bpm.engine.impl.db.sql.DbSqlSession.isTablePresent(DbSqlSession.java:649) ~[camunda-engine-7.15.0.jar!/:7.15.0]

5/6/2021 3:19:00 AM ... 57 common frames omitted

5/6/2021 3:19:00 AM Caused by: org.postgresql.util.PSQLException: ERROR: index "act_idx_task_owner" does not exist

5/6/2021 3:19:00 AM at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2553) ~[postgresql-42.2.19.jar!/:42.2.19]

5/6/2021 3:19:00 AM at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2285) ~[postgresql-42.2.19.jar!/:42.2.19]

5/6/2021 3:19:00 AM at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:323) ~[postgresql-42.2.19.jar!/:42.2.19]

5/6/2021 3:19:00 AM at org.postgresql.jdbc.PgStatement.executeInternal(PgStatement.java:481) ~[postgresql-42.2.19.jar!/:42.2.19]

5/6/2021 3:19:00 AM at org.postgresql.jdbc.PgStatement.execute(PgStatement.java:401) ~[postgresql-42.2.19.jar!/:42.2.19]

5/6/2021 3:19:00 AM at org.postgresql.jdbc.PgStatement.executeWithFlags(PgStatement.java:322) ~[postgresql-42.2.19.jar!/:42.2.19]

5/6/2021 3:19:00 AM at org.postgresql.jdbc.PgStatement.executeCachedSql(PgStatement.java:308) ~[postgresql-42.2.19.jar!/:42.2.19]

5/6/2021 3:19:00 AM at org.postgresql.jdbc.PgStatement.executeWithFlags(PgStatement.java:284) ~[postgresql-42.2.19.jar!/:42.2.19]

5/6/2021 3:19:00 AM at org.postgresql.jdbc.PgStatement.execute(PgStatement.java:279) ~[postgresql-42.2.19.jar!/:42.2.19]

5/6/2021 3:19:00 AM at com.zaxxer.hikari.pool.ProxyStatement.execute(ProxyStatement.java:95) ~[HikariCP-3.4.5.jar!/:na]

5/6/2021 3:19:00 AM at com.zaxxer.hikari.pool.HikariProxyStatement.execute(HikariProxyStatement.java) ~[HikariCP-3.4.5.jar!/:na]

5/6/2021 3:19:00 AM at org.camunda.bpm.engine.impl.db.sql.DbSqlSession.executeSchemaResource(DbSqlSession.java:827) ~[camunda-engine-7.15.0.jar!/:7.15.0]

5/6/2021 3:19:00 AM at org.camunda.bpm.engine.impl.db.sql.DbSqlSession.executeSchemaResource(DbSqlSession.java:781) ~[camunda-engine-7.15.0.jar!/:7.15.0]

5/6/2021 3:19:00 AM at org.camunda.bpm.engine.impl.db.sql.DbSqlSession.executeMandatorySchemaResource(DbSqlSession.java:595) ~[camunda-engine-7.15.0.jar!/:7.15.0]

5/6/2021 3:19:00 AM at org.camunda.bpm.engine.impl.db.sql.DbSqlSession.dbSchemaDropEngine(DbSqlSession.java:571) ~[camunda-engine-7.15.0.jar!/:7.15.0]

5/6/2021 3:19:00 AM at org.camunda.bpm.engine.impl.db.AbstractPersistenceSession.dbSchemaDrop(AbstractPersistenceSession.java:150) ~[camunda-engine-7.15.0.jar!/:7.15.0]

5/6/2021 3:19:00 AM at org.camunda.bpm.engine.impl.SchemaOperationsProcessEngineBuild.execute(SchemaOperationsProcessEngineBuild.java:43) ~[camunda-engine-7.15.0.jar!/:7.15.0]

5/6/2021 3:19:00 AM ... 54 common frames omitted

@moath.alshorman Have you updated the DB schema by executing the version updation scripts?

1 Like

The engine creates tables etc. only if the DB is empty (no tables at all). If you already have a DB with some version you have to execute the update scripts explicitly. The engine will not do it.

Yes, We have tried this before and it worked. When I posted this issue it’s not because of how to update the current schema but is why it’s not updated automatically when I run the application using the default config camunda.bpm.database.schema-update=true
I believe that there is a way to auto-update the scripts as the configs doc states

Thanks @fml2
Are you referring to this option?

The original issue is why the schema is not auto-updated and is it the normal case or it’s a breaking change?
So if you’re answering the second part of the issue, you mean the error happened because the tables are already populated?

Please let me know that this the normal behavior in camunda for updating scripts is to execute them manually not by the engine in order to mark the question as answered.
Thanks @aravindhrs

@moath.alshorman When we set the below property, the expected is it should execute the sql scripts which are necessary for target version of the platform.

camunda.bpm.database.schema-update = true

When we set this property to true, what happens here is it checks the schema and the tables exists or not. If not it creates the table, but if the table exists for the previous versions it doesn’t updates the schema for requested version upgrade.

Here’s the code which will be getting executed while the application bootstraps:

In the below code, just checks schema exists or not, if not exists new tables will be created but if exists it failed to update. (update code is not available)

Below method takes the arguments from caller as (operation/directory = create, component = engine, resourcename = fully qualified sql file name, and the stream)

So from the above call hierarchy it never executes the update script. So that’s why we need to execute the scripts manually for the version upgrade.

Or there will be some specific reason the update scripts was not being executed. Maybe @Niall @Ingo_Richtsmeier @thorben can provide more insights to this problem.

1 Like

It’s clear now that’s the update scripts are not being executed if schema already there.
Thanks, @aravindhrs. Hope they will respond soon.

I don’t think “they” will respond. This is intended behaviour, not an error.

Hi @moath.alshorman and the others,

from my persepective it’s a misleading property name.

From the production point of view it is acceptable, as you should not give the application the authorization to alter the table structure itself. It violates the principle of least privilege: Principle of least privilege - Wikipedia.

Hope this helps, Ingo

2 Likes

Hi everyone,
I copied all sql files from engine jar to my spring boot application resources and disabled schema-update camunda.bpm.database.schema-update: false. I use liquibase to run sql scripts.

When I run the service, process engine runs before sql files are executed by liquibase and I get following error:

caused by: org.camunda.bpm.engine.ProcessEngineException: ENGINE-03057 There are no Camunda tables in the database. Hint: Set <property name=“databaseSchemaUpdate” to value=“true”

Is there a way to ensure liquibase scripts run before engine starts?

Thank you

Hello! This is an old topic that has been solved, please make a new topic for your issue so that it has more visibility. Thank you!

1 Like