-
Bug
-
Resolution: Done
-
Blocker
-
26.1.0.Final
By Wildfly 26.1 the clustered EJB timer through a DB store is not working anymore.
When adding a timer, then following error is thrown.
And the server will not start!
By the way, the SQL statement is really wrong:
SELECT :1 , :2 , :3 , :4 , 'CREATED', :5 , :6 , :7 , :8 , :9 , :10 , :11 , :12 , :13 , :14 , :15 , :16 , :17 , :18 , :19 , :20 WHERE NOT EXISTS
Stacktrace:
java.lang.RuntimeException: java.lang.RuntimeException: java.sql.SQLSyntaxErrorException: ORA-00923: FROM keyword not found where expected at org.jboss.as.ee@26.1.0.Final//org.jboss.as.ee.component.ComponentStartService$1.run(ComponentStartService.java:57) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) at java.base/java.util.concurrent.FutureTask.run(Unknown Source) at org.jboss.threads@2.4.0.Final//org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35) at org.jboss.threads@2.4.0.Final//org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:1990) at org.jboss.threads@2.4.0.Final//org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1486) at org.jboss.threads@2.4.0.Final//org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1348) at java.base/java.lang.Thread.run(Unknown Source) at org.jboss.threads@2.4.0.Final//org.jboss.threads.JBossThread.run(JBossThread.java:513) Caused by: java.lang.RuntimeException: java.lang.RuntimeException: java.sql.SQLSyntaxErrorException: ORA-00923: FROM keyword not found where expected at org.jboss.as.ejb3@26.1.0.Final//org.jboss.as.ejb3.timerservice.TimerServiceImpl.persistTimer(TimerServiceImpl.java:654) at org.jboss.as.ejb3@26.1.0.Final//org.jboss.as.ejb3.timerservice.TimerServiceImpl.createCalendarTimer(TimerServiceImpl.java:531) at org.jboss.as.ejb3@26.1.0.Final//org.jboss.as.ejb3.timerservice.TimerServiceImpl.loadAutoTimer(TimerServiceImpl.java:380) at org.jboss.as.ejb3@26.1.0.Final//org.jboss.as.ejb3.timerservice.TimerServiceImpl.restoreTimers(TimerServiceImpl.java:797) at org.jboss.as.ejb3@26.1.0.Final//org.jboss.as.ejb3.timerservice.TimerServiceImpl.activate(TimerServiceImpl.java:206) at org.jboss.as.ejb3@26.1.0.Final//org.jboss.as.ejb3.component.EJBComponent.init(EJBComponent.java:605) at org.jboss.as.ee@26.1.0.Final//org.jboss.as.ee.component.BasicComponent.start(BasicComponent.java:229) at org.jboss.as.ejb3@26.1.0.Final//org.jboss.as.ejb3.component.singleton.SingletonComponent.start(SingletonComponent.java:136) at org.jboss.as.ee@26.1.0.Final//org.jboss.as.ee.component.ComponentStartService$1.run(ComponentStartService.java:54) ... 8 more Caused by: java.lang.RuntimeException: java.sql.SQLSyntaxErrorException: ORA-00923: FROM keyword not found where expected at org.jboss.as.ejb3@26.1.0.Final//org.jboss.as.ejb3.timerservice.persistence.database.DatabaseTimerPersistence.addAutoTimer(DatabaseTimerPersistence.java:867) at org.jboss.as.ejb3@26.1.0.Final//org.jboss.as.ejb3.timerservice.persistence.database.DatabaseTimerPersistence.addTimer(DatabaseTimerPersistence.java:429) at org.jboss.as.ejb3@26.1.0.Final//org.jboss.as.ejb3.timerservice.TimerServiceImpl.persistTimer(TimerServiceImpl.java:635) ... 16 more Caused by: java.sql.SQLSyntaxErrorException: ORA-00923: FROM keyword not found where expected at com.oracle.jdbc//oracle.jdbc.driver.T4CTTIoer11.processError(T4CTTIoer11.java:630) at com.oracle.jdbc//oracle.jdbc.driver.T4CTTIoer11.processError(T4CTTIoer11.java:564) at com.oracle.jdbc//oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:1231) at com.oracle.jdbc//oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:772) at com.oracle.jdbc//oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:299) at com.oracle.jdbc//oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:512) at com.oracle.jdbc//oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:163) at com.oracle.jdbc//oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatement.java:1241) at com.oracle.jdbc//oracle.jdbc.driver.OracleStatement.executeSQLStatement(OracleStatement.java:1820) at com.oracle.jdbc//oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1472) at com.oracle.jdbc//oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3761) at com.oracle.jdbc//oracle.jdbc.driver.OraclePreparedStatement.executeLargeUpdate(OraclePreparedStatement.java:4062) at com.oracle.jdbc//oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:4037) at com.oracle.jdbc//oracle.jdbc.driver.OraclePreparedStatementWrapper.executeUpdate(OraclePreparedStatementWrapper.java:996) at org.jboss.ironjacamar.jdbcadapters@1.5.3.Final//org.jboss.jca.adapters.jdbc.CachedPreparedStatement.executeUpdate(CachedPreparedStatement.java:121) at org.jboss.ironjacamar.jdbcadapters@1.5.3.Final//org.jboss.jca.adapters.jdbc.WrappedPreparedStatement.executeUpdate(WrappedPreparedStatement.java:537) at org.jboss.as.ejb3@26.1.0.Final//org.jboss.as.ejb3.timerservice.persistence.database.DatabaseTimerPersistence.addAutoTimer(DatabaseTimerPersistence.java:858) ... 18 more Caused by: Error : 923, Position : 566, Sql = INSERT INTO JBOSS_EJB_TIMER (ID, TIMED_OBJECT_ID, NEXT_DATE, INFO, TIMER_STATE, SCHEDULE_EXPR_SECOND, SCHEDULE_EXPR_MINUTE, SCHEDULE_EXPR_HOUR, SCHEDULE_EXPR_DAY_OF_WEEK, SCHEDULE_EXPR_DAY_OF_MONTH, SCHEDULE_EXPR_MONTH, SCHEDULE_EXPR_YEAR, SCHEDULE_EXPR_START_DATE, SCHEDULE_EXPR_END_DATE, SCHEDULE_EXPR_TIMEZONE, AUTO_TIMER, TIMEOUT_METHOD_DECLARING_CLASS, TIMEOUT_METHOD_NAME, TIMEOUT_METHOD_DESCRIPTOR, CALENDAR_TIMER, PARTITION_NAME) SELECT :1 , :2 , :3 , :4 , 'CREATED', :5 , :6 , :7 , :8 , :9 , :10 , :11 , :12 , :13 , :14 , :15 , :16 , :17 , :18 , :19 , :20 WHERE NOT EXISTS (SELECT 1 FROM JBOSS_EJB_TIMER WHERE TIMED_OBJECT_ID=:21 AND SCHEDULE_EXPR_SECOND=:22 AND SCHEDULE_EXPR_MINUTE=:23 AND SCHEDULE_EXPR_HOUR=:24 AND SCHEDULE_EXPR_DAY_OF_WEEK=:25 AND SCHEDULE_EXPR_DAY_OF_MONTH=:26 AND SCHEDULE_EXPR_MONTH=:27 AND SCHEDULE_EXPR_YEAR=:28 AND ((SCHEDULE_EXPR_START_DATE IS NULL AND :29 IS NULL) OR SCHEDULE_EXPR_START_DATE=:30 ) AND ((SCHEDULE_EXPR_END_DATE IS NULL AND :31 IS NULL) OR SCHEDULE_EXPR_END_DATE=:32 ) AND ((SCHEDULE_EXPR_TIMEZONE IS NULL AND :33 IS NULL) OR SCHEDULE_EXPR_TIMEZONE=:34 ) AND TIMEOUT_METHOD_DECLARING_CLASS=:35 AND TIMEOUT_METHOD_NAME=:36 AND ((TIMEOUT_METHOD_DESCRIPTOR IS NULL AND :37 IS NULL) OR TIMEOUT_METHOD_DESCRIPTOR=:38 ) AND PARTITION_NAME=:39 ), OriginalSql = INSERT INTO JBOSS_EJB_TIMER (ID, TIMED_OBJECT_ID, NEXT_DATE, INFO, TIMER_STATE, SCHEDULE_EXPR_SECOND, SCHEDULE_EXPR_MINUTE, SCHEDULE_EXPR_HOUR, SCHEDULE_EXPR_DAY_OF_WEEK, SCHEDULE_EXPR_DAY_OF_MONTH, SCHEDULE_EXPR_MONTH, SCHEDULE_EXPR_YEAR, SCHEDULE_EXPR_START_DATE, SCHEDULE_EXPR_END_DATE, SCHEDULE_EXPR_TIMEZONE, AUTO_TIMER, TIMEOUT_METHOD_DECLARING_CLASS, TIMEOUT_METHOD_NAME, TIMEOUT_METHOD_DESCRIPTOR, CALENDAR_TIMER, PARTITION_NAME) SELECT ?, ?, ?, ?, 'CREATED', ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? WHERE NOT EXISTS (SELECT 1 FROM JBOSS_EJB_TIMER WHERE TIMED_OBJECT_ID=? AND SCHEDULE_EXPR_SECOND=? AND SCHEDULE_EXPR_MINUTE=? AND SCHEDULE_EXPR_HOUR=? AND SCHEDULE_EXPR_DAY_OF_WEEK=? AND SCHEDULE_EXPR_DAY_OF_MONTH=? AND SCHEDULE_EXPR_MONTH=? AND SCHEDULE_EXPR_YEAR=? AND ((SCHEDULE_EXPR_START_DATE IS NULL AND ? IS NULL) OR SCHEDULE_EXPR_START_DATE=?) AND ((SCHEDULE_EXPR_END_DATE IS NULL AND ? IS NULL) OR SCHEDULE_EXPR_END_DATE=?) AND ((SCHEDULE_EXPR_TIMEZONE IS NULL AND ? IS NULL) OR SCHEDULE_EXPR_TIMEZONE=?) AND TIMEOUT_METHOD_DECLARING_CLASS=? AND TIMEOUT_METHOD_NAME=? AND ((TIMEOUT_METHOD_DESCRIPTOR IS NULL AND ? IS NULL) OR TIMEOUT_METHOD_DESCRIPTOR=?) AND PARTITION_NAME=?), Error Msg = ORA-00923: FROM keyword not found where expected
Probably it is related to:
https://issues.redhat.com/browse/WFLY-16290