5 Replies Latest reply on Oct 21, 2009 12:00 PM by Rogelio Di Pasquale

    Jbpm/MySQL not working on linux, but fine on Windows

    David Roberts Apprentice

      Hi,

      I have Jbpm 3.2.6 running on a Windows 2008 server, with Tomcat 5.0.28 and MySQL 5.0.27 as the DB running on local windows machine. It works perfectly.

      As soon as I use MySQL 5.0.67 on a separate linux server (SLES11), and use that as my db/datasource with the exact same data/permissions, I get exception saying that tables cannot be found. Basically, it says no tables exist, even when I can see that they do. Tomcat shows me the following exception:

      WARN JbpmJobExecutor@10.11.5.61:1 org.hibernate.util.JDBCExceptionReporter - SQL Error: 1146, SQLState: 42S02
      ERROR JbpmJobExecutor@10.11.5.61:1 org.hibernate.util.JDBCExceptionReporter - Table 'jbpm3.JBPM_JOB' doesn't exist
      ERROR JbpmJobExecutor@10.11.5.61:1 org.jbpm.job.executor.JobExecutorThread - exception in job executor thread. waiting 5000 milliseconds
      org.jbpm.JbpmException: could not get first acquirable job
       at org.jbpm.db.JobSession.getFirstAcquirableJob(JobSession.java:59)
       at org.jbpm.job.executor.JobExecutorThread.acquireJobs(JobExecutorThread.java:115)
       at org.jbpm.job.executor.JobExecutorThread.run(JobExecutorThread.java:58)
      Caused by: org.hibernate.exception.SQLGrammarException: could not execute query
       at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:67)
       at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
       at org.hibernate.loader.Loader.doList(Loader.java:2223)
       at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2104)
       at org.hibernate.loader.Loader.list(Loader.java:2099)
       at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:378)
       at org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:338)
       at org.hibernate.engine.query.HQLQueryPlan.performList(HQLQueryPlan.java:172)
       at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1121)
       at org.hibernate.impl.QueryImpl.list(QueryImpl.java:79)
       at org.hibernate.impl.AbstractQueryImpl.uniqueResult(AbstractQueryImpl.java:811)
       at org.jbpm.db.JobSession.getFirstAcquirableJob(JobSession.java:52)
       ... 2 more
      Caused by: com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: Table 'jbpm3.JBPM_JOB' doesn't exist
       at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:936)
       at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2870)
       at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1573)
       at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1665)
       at com.mysql.jdbc.Connection.execSQL(Connection.java:3124)
       at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:1149)
       at com.mysql.jdbc.PreparedStatement.executeQuery(PreparedStatement.java:1262)
       at org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:92)
       at org.hibernate.jdbc.AbstractBatcher.getResultSet(AbstractBatcher.java:186)
       at org.hibernate.loader.Loader.getResultSet(Loader.java:1787)
       at org.hibernate.loader.Loader.doQuery(Loader.java:674)
       at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:236)
       at org.hibernate.loader.Loader.doList(Loader.java:2220)
       ... 11 more


      And it's not just 'jbpm3.JBPM_JOB' that apparently doesn't exist, it happens everywhere jbpm tries to access the db.

      Does anyone know why JBPM 3.2.6 is not working on MySQL 5.0.67 when its running on a linux operating system?