kapua
kapua copied to clipboard
Batch Job - Reorder steps
Is your feature request related to a problem? Please describe. In a job already created, if a new step is required in the beginning of the job it is necessary to remove and create back again all the steps.
Describe the solution you'd like Add in the Steps tab the possibility to move up and down a step so that it changes its step index, or even the possibility to drag it if possible.
Steps can now be reordered if Job never started - #3241 and #3284. Can you please check?
Waiting for #3369 to check
How can it be done? I'm with version 1.5.2 but I don't see how to reorder the steps:
@pintify Isn't the Step Index property editable in the Edit dialog?
There is no such field in Edit dialog. It is not clear by just the screenshot: I'm not showing the creation dialog but the edition dialog (create step -> select step -> click edit):
Ok... scratch what I said, I remembered there was such field 😄
EDIT: By looking at the mentioned PR it's a backend only support. It should work via REST API, but I see no UI changes supporting this feature.
Well, I can see it working in the front as the steps are all messed around by my requests. However that seems pretty insecure as I can set two steps with the same index or set a remote index. Is there any verification on this side?
EDIT: Regarding the execution I have not been capable to launch the job. I attach the log of the exception below.
The sequence
table doesn't seem to be present in the MariaDB database I'm using... I've searched in the project and I don't see any liquibase scripts related with this table...
This failure appears using the configuration lower_case_table_names=true
in the database and it happens also with fresh new jobs (no steps modified).
console exception:
11:19:10.574 [qtp913190639-81] ERROR o.e.k.j.e.c.JobEngineServiceClient - Job Engine REST Error: {"httpErrorCode":500,"message":"Error: 5192269434981562763, 592625752195708187, []","stackTrace":null,"kapuaErrorCode":"JOB_STARTING","scopeId":"SA6lipIxuYs","jobId":"CDlt-1RftRs"} - status code 500,
11:19:10.597 [qtp913190639-81] WARN o.e.kapua.ExceptionMessageUtils - Could not load exception messages for resource: job-engine-service-error-messages in locale: en_US. A generic error message will be printed.,
11:19:10.598 [qtp913190639-81] ERROR o.e.k.a.c.m.a.s.u.KapuaExceptionHandler - Server side error!,
org.eclipse.kapua.job.engine.exception.JobStartingException: Error: 5192269434981562763, 592625752195708187, [],
at org.eclipse.kapua.job.engine.client.JobEngineServiceClient.handleJobEngineException(JobEngineServiceClient.java:305),
at org.eclipse.kapua.job.engine.client.JobEngineServiceClient.startJob(JobEngineServiceClient.java:119),
at org.eclipse.kapua.app.console.module.job.server.GwtJobEngineServiceImpl.start(GwtJobEngineServiceImpl.java:71),
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method),
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62),
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43),
at java.lang.reflect.Method.invoke(Method.java:498),
at com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:569),
at com.google.gwt.user.server.rpc.RemoteServiceServlet.processCall(RemoteServiceServlet.java:208),
at com.google.gwt.user.server.rpc.RemoteServiceServlet.processPost(RemoteServiceServlet.java:248),
at com.google.gwt.user.server.rpc.AbstractRemoteServiceServlet.doPost(AbstractRemoteServiceServlet.java:62),
at javax.servlet.http.HttpServlet.service(HttpServlet.java:707),
at javax.servlet.http.HttpServlet.service(HttpServlet.java:790),
at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:865),
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1655),
at org.eclipse.jetty.websocket.server.WebSocketUpgradeFilter.doFilter(WebSocketUpgradeFilter.java:215),
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642),
at org.apache.shiro.web.servlet.AbstractShiroFilter.executeChain(AbstractShiroFilter.java:449),
at org.eclipse.kapua.app.console.core.filter.KapuaWebFilter.executeChain(KapuaWebFilter.java:44),
at org.apache.shiro.web.servlet.AbstractShiroFilter$1.call(AbstractShiroFilter.java:365),
at org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90),
at org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83),
at org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:387),
at org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal(AbstractShiroFilter.java:362),
at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125),
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1634),
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:533),
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:146),
at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548),
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132),
at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:257),
at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1595),
at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:255),
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1340),
at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:203),
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:473),
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1564),
at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:201),
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1242),
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:144),
at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:220),
at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:126),
at org.eclipse.jetty.server.handler.StatisticsHandler.handle(StatisticsHandler.java:174),
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132),
at org.eclipse.jetty.server.Server.handle(Server.java:503),
at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:364),
at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:260),
at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:305),
at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103),
at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:118),
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:333),
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:310),
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:168),
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:126),
at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:366),
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:765),
at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:683),
at java.lang.Thread.run(Thread.java:748),
11:19:10.599 [qtp913190639-81] WARN o.e.kapua.ExceptionMessageUtils - Could not load exception messages for resource: job-engine-service-error-messages in locale: en_US. A generic error message will be printed.,
11:19:10.600 [qtp913190639-81] WARN o.e.kapua.ExceptionMessageUtils - Could not load exception messages for resource: job-engine-service-error-messages in locale: en_US. A generic error message will be printed.,
job-engine exception:
11:19:08.500 [qtp913190639-47] INFO eclipselink.logging.all - EclipseLink, version: Eclipse Persistence Services - 2.7.7.v20200504-69f2c2b80d,
11:19:08.534 [qtp913190639-47] INFO eclipselink.logging.connection - Not able to detect platform for vendor name [MariaDB[10.5.10-MariaDB-log, 10]]. Defaulting to [org.eclipse.persistence.platform.database.DatabasePlatform]. The database dialect used may not match with the database you are using. Please explicitly provide a platform using property "eclipselink.target-database".,
11:19:09.624 [qtp913190639-47] INFO eclipselink.logging.all - EclipseLink, version: Eclipse Persistence Services - 2.7.7.v20200504-69f2c2b80d,
11:19:09.661 [qtp913190639-47] INFO eclipselink.logging.connection - Not able to detect platform for vendor name [MariaDB[10.5.10-MariaDB-log, 10]]. Defaulting to [org.eclipse.persistence.platform.database.DatabasePlatform]. The database dialect used may not match with the database you are using. Please explicitly provide a platform using property "eclipselink.target-database".,
11:19:09.919 [qtp913190639-47] INFO o.e.k.j.e.j.p.JPAPersistenceManagerImpl - jBatch persistence implementation initialized with no actions...,
11:19:10.179 [qtp913190639-47] INFO eclipselink.logging.all - EclipseLink, version: Eclipse Persistence Services - 2.7.7.v20200504-69f2c2b80d,
11:19:10.209 [qtp913190639-47] INFO eclipselink.logging.connection - Not able to detect platform for vendor name [MariaDB[10.5.10-MariaDB-log, 10]]. Defaulting to [org.eclipse.persistence.platform.database.DatabasePlatform]. The database dialect used may not match with the database you are using. Please explicitly provide a platform using property "eclipselink.target-database".,
11:19:10.441 [qtp913190639-47] WARN eclipselink.logging.all - Exception [EclipseLink-4002] (Eclipse Persistence Services - 2.7.7.v20200504-69f2c2b80d): org.eclipse.persistence.exceptions.DatabaseException,
Internal Exception: java.sql.SQLSyntaxErrorException: (conn=439532) Table 'kapuadb.SEQUENCE' doesn't exist,
Error Code: 1146,
Call: UPDATE SEQUENCE SET SEQ_COUNT = SEQ_COUNT + ? WHERE SEQ_NAME = ?,
bind => [1, SEQ_GEN_IDENTITY],
Query: DataModifyQuery(name="SEQ_GEN_IDENTITY" sql="UPDATE SEQUENCE SET SEQ_COUNT = SEQ_COUNT + ? WHERE SEQ_NAME = ?"),
11:19:10.475 [qtp913190639-47] WARN o.e.kapua.ExceptionMessageUtils - Could not load exception messages for code: JOB_STARTING. A generic error message will be printed.,
11:19:10.480 [qtp913190639-47] WARN o.e.kapua.ExceptionMessageUtils - Could not load exception messages for code: JOB_STARTING. A generic error message will be printed.,
11:19:10.487 [qtp913190639-47] ERROR o.e.k.a.a.c.e.m.JobStartingExceptionMapper - Job Starting,
org.eclipse.kapua.job.engine.exception.JobStartingException: Error: 5192269434981562763, 592625752195708187, [],
at org.eclipse.kapua.job.engine.jbatch.JobEngineServiceJbatch.startJob(JobEngineServiceJbatch.java:137),
at org.eclipse.kapua.job.engine.app.resources.JobEngineResource.startJob(JobEngineResource.java:72),
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method),
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62),
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43),
at java.lang.reflect.Method.invoke(Method.java:498),
at org.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory$1.invoke(ResourceMethodInvocationHandlerFactory.java:81),
at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher$1.run(AbstractJavaResourceMethodDispatcher.java:144),
at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher.java:161),
at org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider$VoidOutInvoker.doDispatch(JavaResourceMethodDispatcherProvider.java:143),
at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch(AbstractJavaResourceMethodDispatcher.java:99),
at org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:389),
at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:347),
at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:102),
at org.glassfish.jersey.server.ServerRuntime$2.run(ServerRuntime.java:326),
at org.glassfish.jersey.internal.Errors$1.call(Errors.java:271),
at org.glassfish.jersey.internal.Errors$1.call(Errors.java:267),
at org.glassfish.jersey.internal.Errors.process(Errors.java:315),
at org.glassfish.jersey.internal.Errors.process(Errors.java:297),
at org.glassfish.jersey.internal.Errors.process(Errors.java:267),
at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:317),
at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:305),
at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:1154),
at org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:473),
at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:427),
at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:388),
at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:341),
at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:228),
at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:865),
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1655),
at org.eclipse.jetty.websocket.server.WebSocketUpgradeFilter.doFilter(WebSocketUpgradeFilter.java:215),
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642),
at org.eclipse.kapua.app.api.core.filter.KapuaSessionCleanupFilter.doFilter(KapuaSessionCleanupFilter.java:69),
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642),
at org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:61),
at org.apache.shiro.web.servlet.AdviceFilter.executeChain(AdviceFilter.java:108),
at org.apache.shiro.web.servlet.AdviceFilter.doFilterInternal(AdviceFilter.java:137),
at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125),
at org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:66),
at org.apache.shiro.web.servlet.AbstractShiroFilter.executeChain(AbstractShiroFilter.java:449),
at org.apache.shiro.web.servlet.AbstractShiroFilter$1.call(AbstractShiroFilter.java:365),
at org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90),
at org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83),
at org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:387),
at org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal(AbstractShiroFilter.java:362),
at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125),
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642),
at org.eclipse.kapua.app.api.core.filter.CORSResponseFilter.doFilter(CORSResponseFilter.java:131),
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1634),
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:533),
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:146),
at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548),
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132),
at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:257),
at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1595),
at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:255),
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1340),
at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:203),
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:473),
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1564),
at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:201),
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1242),
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:144),
at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:220),
at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:126),
at org.eclipse.jetty.server.handler.StatisticsHandler.handle(StatisticsHandler.java:174),
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132),
at org.eclipse.jetty.server.Server.handle(Server.java:503),
at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:364),
at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:260),
at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:305),
at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103),
at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:118),
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:765),
at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:683),
at java.lang.Thread.run(Thread.java:748),
Caused by: javax.batch.operations.JobStartException: com.ibm.jbatch.container.exception.PersistenceException: org.eclipse.kapua.KapuaException: An internal error occurred: Error during Persistence Operation.,
at com.ibm.jbatch.container.api.impl.JobOperatorImpl.start(JobOperatorImpl.java:92),
at org.eclipse.kapua.job.engine.jbatch.driver.JbatchDriver.startJob(JbatchDriver.java:209),
at org.eclipse.kapua.job.engine.jbatch.JobEngineServiceJbatch.startJob(JobEngineServiceJbatch.java:135),
... 75 common frames omitted,
Caused by: com.ibm.jbatch.container.exception.PersistenceException: org.eclipse.kapua.KapuaException: An internal error occurred: Error during Persistence Operation.,
at org.eclipse.kapua.job.engine.jbatch.persistence.JPAPersistenceManagerImpl.createJobInstance(JPAPersistenceManagerImpl.java:148),
at com.ibm.jbatch.container.jobinstance.JobExecutionHelper.getNewJobInstance(JobExecutionHelper.java:89),
at com.ibm.jbatch.container.jobinstance.JobExecutionHelper.startJob(JobExecutionHelper.java:120),
at com.ibm.jbatch.container.impl.BatchKernelImpl.startJob(BatchKernelImpl.java:124),
at com.ibm.jbatch.container.api.impl.JobOperatorImpl.startInternal(JobOperatorImpl.java:123),
at com.ibm.jbatch.container.api.impl.JobOperatorImpl.start(JobOperatorImpl.java:88),
... 77 common frames omitted,
Caused by: org.eclipse.kapua.KapuaException: An internal error occurred: Error during Persistence Operation.,
at org.eclipse.kapua.KapuaException.internalError(KapuaException.java:85),
at org.eclipse.kapua.commons.util.KapuaExceptionUtils.convertPersistenceException(KapuaExceptionUtils.java:114),
at org.eclipse.kapua.commons.jpa.EntityManagerSession.internalOnResult(EntityManagerSession.java:168),
at org.eclipse.kapua.commons.jpa.EntityManagerSession.doTransactedAction(EntityManagerSession.java:86),
at org.eclipse.kapua.job.engine.jbatch.persistence.JPAPersistenceManagerImpl.createJobInstance(JPAPersistenceManagerImpl.java:145),
... 82 common frames omitted,
Caused by: org.eclipse.persistence.exceptions.DatabaseException: ,
Internal Exception: java.sql.SQLSyntaxErrorException: (conn=439532) Table 'kapuadb.SEQUENCE' doesn't exist,
Error Code: 1146,
Call: UPDATE SEQUENCE SET SEQ_COUNT = SEQ_COUNT + ? WHERE SEQ_NAME = ?,
bind => [1, SEQ_GEN_IDENTITY],
Query: DataModifyQuery(name="SEQ_GEN_IDENTITY" sql="UPDATE SEQUENCE SET SEQ_COUNT = SEQ_COUNT + ? WHERE SEQ_NAME = ?"),
at org.eclipse.persistence.exceptions.DatabaseException.sqlException(DatabaseException.java:333),
at org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor.executeDirectNoSelect(DatabaseAccessor.java:908),
at org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor.executeNoSelect(DatabaseAccessor.java:970),
at org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor.basicExecuteCall(DatabaseAccessor.java:640),
at org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor.executeCall(DatabaseAccessor.java:567),
at org.eclipse.persistence.internal.sessions.AbstractSession.basicExecuteCall(AbstractSession.java:2099),
at org.eclipse.persistence.sessions.server.ClientSession.executeCall(ClientSession.java:313),
at org.eclipse.persistence.internal.queries.DatasourceCallQueryMechanism.executeCall(DatasourceCallQueryMechanism.java:277),
at org.eclipse.persistence.internal.queries.DatasourceCallQueryMechanism.executeCall(DatasourceCallQueryMechanism.java:263),
at org.eclipse.persistence.internal.queries.DatasourceCallQueryMechanism.executeNoSelectCall(DatasourceCallQueryMechanism.java:306),
at org.eclipse.persistence.internal.queries.DatasourceCallQueryMechanism.executeNoSelect(DatasourceCallQueryMechanism.java:286),
at org.eclipse.persistence.queries.DataModifyQuery.executeDatabaseQuery(DataModifyQuery.java:87),
at org.eclipse.persistence.queries.DatabaseQuery.execute(DatabaseQuery.java:911),
at org.eclipse.persistence.internal.sessions.AbstractSession.internalExecuteQuery(AbstractSession.java:3356),
at org.eclipse.persistence.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1898),
at org.eclipse.persistence.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1880),
at org.eclipse.persistence.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1845),
at org.eclipse.persistence.sequencing.QuerySequence.update(QuerySequence.java:356),
at org.eclipse.persistence.sequencing.QuerySequence.updateAndSelectSequence(QuerySequence.java:293),
at org.eclipse.persistence.sequencing.StandardSequence.getGeneratedVector(StandardSequence.java:75),
at org.eclipse.persistence.sequencing.Sequence.getGeneratedVector(Sequence.java:267),
at org.eclipse.persistence.internal.sequencing.SequencingManager$Preallocation_Transaction_NoAccessor_State.getNextValue(SequencingManager.java:551),
at org.eclipse.persistence.internal.sequencing.SequencingManager.getNextValue(SequencingManager.java:1109),
at org.eclipse.persistence.internal.sequencing.ClientSessionSequencing.getNextValue(ClientSessionSequencing.java:72),
at org.eclipse.persistence.internal.descriptors.ObjectBuilder.assignSequenceNumber(ObjectBuilder.java:372),
at org.eclipse.persistence.internal.descriptors.ObjectBuilder.assignSequenceNumber(ObjectBuilder.java:331),
at org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.assignSequenceNumber(UnitOfWorkImpl.java:534),
at org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.registerNotRegisteredNewObjectForPersist(UnitOfWorkImpl.java:4390),
at org.eclipse.persistence.internal.sessions.RepeatableWriteUnitOfWork.registerNotRegisteredNewObjectForPersist(RepeatableWriteUnitOfWork.java:523),
at org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.registerNewObjectForPersist(UnitOfWorkImpl.java:4335),
at org.eclipse.persistence.internal.jpa.EntityManagerImpl.persist(EntityManagerImpl.java:601),
at org.eclipse.kapua.commons.jpa.EntityManager.persist(EntityManager.java:122),
at org.eclipse.kapua.job.engine.jbatch.persistence.jpa.JpaJobInstanceDataDAO.create(JpaJobInstanceDataDAO.java:40),
at org.eclipse.kapua.job.engine.jbatch.persistence.JPAPersistenceManagerImpl.lambda$createJobInstance$3(JPAPersistenceManagerImpl.java:145),
at org.eclipse.kapua.commons.jpa.EntityManagerContainer.onResult(EntityManagerContainer.java:46),
at org.eclipse.kapua.commons.jpa.EntityManagerSession.internalOnResult(EntityManagerSession.java:138),
... 84 common frames omitted,
Caused by: java.sql.SQLSyntaxErrorException: (conn=439532) Table 'kapuadb.SEQUENCE' doesn't exist,
at org.mariadb.jdbc.internal.util.exceptions.ExceptionFactory.createException(ExceptionFactory.java:62),
at org.mariadb.jdbc.internal.util.exceptions.ExceptionFactory.create(ExceptionFactory.java:158),
at org.mariadb.jdbc.MariaDbStatement.executeExceptionEpilogue(MariaDbStatement.java:266),
at org.mariadb.jdbc.ClientSidePreparedStatement.executeInternal(ClientSidePreparedStatement.java:229),
at org.mariadb.jdbc.ClientSidePreparedStatement.execute(ClientSidePreparedStatement.java:149),
at org.mariadb.jdbc.ClientSidePreparedStatement.executeUpdate(ClientSidePreparedStatement.java:181),
at org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor.executeDirectNoSelect(DatabaseAccessor.java:898),
... 118 common frames omitted,
Caused by: org.mariadb.jdbc.internal.util.exceptions.MariaDbSqlException: Table 'kapuadb.SEQUENCE' doesn't exist,
at org.mariadb.jdbc.internal.util.exceptions.MariaDbSqlException.of(MariaDbSqlException.java:34),
at org.mariadb.jdbc.internal.protocol.AbstractQueryProtocol.exceptionWithQuery(AbstractQueryProtocol.java:194),
at org.mariadb.jdbc.internal.protocol.AbstractQueryProtocol.exceptionWithQuery(AbstractQueryProtocol.java:177),
at org.mariadb.jdbc.internal.protocol.AbstractQueryProtocol.executeQuery(AbstractQueryProtocol.java:321),
at org.mariadb.jdbc.ClientSidePreparedStatement.executeInternal(ClientSidePreparedStatement.java:220),
... 121 common frames omitted,
Caused by: java.sql.SQLException: Table 'kapuadb.SEQUENCE' doesn't exist,
at org.mariadb.jdbc.internal.protocol.AbstractQueryProtocol.readErrorPacket(AbstractQueryProtocol.java:1694),
at org.mariadb.jdbc.internal.protocol.AbstractQueryProtocol.readPacket(AbstractQueryProtocol.java:1556),
at org.mariadb.jdbc.internal.protocol.AbstractQueryProtocol.getResult(AbstractQueryProtocol.java:1519),
at org.mariadb.jdbc.internal.protocol.AbstractQueryProtocol.executeQuery(AbstractQueryProtocol.java:318),
... 122 common frames omitted,
11:19:10.495 [qtp913190639-47] WARN o.e.kapua.ExceptionMessageUtils - Could not load exception messages for code: JOB_STARTING. A generic error message will be printed.,
I've solved the job-engine issue using the configuration suggested here, using parameter useMysqlMetadata=true
in the connection string and configuring eclipselink.target-database
environment variable as MySQL4
. Now I launched the job perfectly and after that the steps are no longer resortable as expected.
However, now the issue is that I cannot longer make any modification at the whole job. Are the jobs to be used as a single time thing? I think it could be useful a "restore" button to restore the job to a status of not-run / modifiable / runnable status it had prior to run it the first time. It would make obsolete the current "restart" button. If that make sense for you I'll create an additional issue with this proposal.