I'm using JDK 1.4.2_05, jBPM-3.0.2 & Hibernate 3.1RC3
SchedulerSession.cancelTimersForProcessInstance() is using the following query to delete timers for a given process instance: delete from org.jbpm.scheduler.exe.Timer where processInstance = :processInstance
This throws a Hibernate exception: column "processinstance" does not exist
The relevant column in the schema is escaped (processinstance_), so I assume this is a bug with Hibernate or malformed HQL.
Changing the above query to: delete from org.jbpm.scheduler.exe.Timer timer where timer.processInstance = :processInstance
causes Hibernate to find the mapping of name -> column and generate the correct SQL delete statement.
There are a few other HQL strings following the same pattern