我正在尝试实施这篇很棒的博客文章中的建议,以使用 MySQL 在 grails 中进行批处理。我遇到的问题是在我的循环中包含对 session.clear() 的定期调用会导致 org.hibernate.LazyInitializationException 被抛出。在页面的评论部分有一个引用:
您关于可能导致 LIE 的第二点是绝对正确的。如果您在使用当前线程导入之外做其他事情,您需要确保在进行清除后将任何对象重新附加到会话。
但是我该怎么做呢?任何人都可以帮助我具体了解如何“在我完成清除后将任何对象重新附加到会话中?
我还对并行化数据库插入过程感兴趣,以便我可以利用多核处理器。任何人都可以提供有关如何在 Grails 中执行此操作的建议吗?