2013-04-29 33 views
2

我有(使用Quartz)作業Grails的域:通過id來獲取未發現

服務的方法至極使用GET(爲域類)

的問題是:(在1000 1)有時即使具有id X的行存在,域的get(X)方法也會返回null。

如果我使用executeQuery或findByX,會發生同樣的問題。

數據源緩存已禁用。

有什麼建議嗎?

+0

如果它在Quartz Schedule的範圍內,你是否正在沖洗域的save()? – dmahapatro 2013-04-29 21:13:05

+0

是的,我正在使用save(flush:true)總是 – VMOrtega 2013-04-29 21:19:17

+0

您可以共享持續和取回域的服務部分嗎? Quartz'execute()'也是有幫助的。 – dmahapatro 2013-04-30 01:24:35

回答

0

我們和Quartz有同樣的問題。問題是Quartz線程保持不刷新的連接。要解決的辦法是在你的工作中使用這個:

def session = sessionFactory.getCurrentSession() 
session.flush() 
session.clear()