Grails Quartz作业从MySQL检索旧数据

时间:2013-04-14 16:18:45

标签: mysql hibernate grails gorm quartz-scheduler

我有一个单线程的Quartz作业,在更改记录的“状态”列后启动。作业将传递记录的主ID,然后查找。由于一些奇怪的原因,石英工作看到了原始状态值。

该作业具有每秒钟重试查找一次的逻辑。起初我以为hibernate可能会返回旧对象,所以我添加了一个session.clear(),但没有区别。然后我添加了一个jdbcTemplate.queryForMap来绕过休眠来获取数据,但这也看到旧数据。

当Quartz作业记录旧值时,我在show视图和sql查询中看到了我手动调用数据库的新值。我甚至检查了版本属性并看到它已经改变但是Quartz作业具有旧值。

为什么Quartz作业无法识别出这种变化?

奇怪的是,这种逻辑在某些服务器上完全正常,其他服务器一直失败,而其他服务器则定期失败。

环境包括:

  • Grails 1.3.7
  • MySQL
  • 的Linux
  • Tomcat的

0 个答案:

没有答案