Spring-JPA(Hibernate):AssertionFailure:`xxxx`条目中的null id(发生异常后不刷新会话)

时间:2013-09-10 07:57:58

标签: sql-server hibernate jpa

我需要从遗留系统进行数据迁移,总共有20,000多条记录[所有数据都将由csv文件提供],由于某些技术原因,我必须使用JPA / Hibernate将这些数据导入您当前使用的新系统。

当我进行导入时,总是遇到如下的事务问题:

数据库 MS SQL Server 2005

  

org.hibernate.AssertionFailure:xxxx条目中的空id(在发生异常后不刷新会话)

我尝试了以下事项:

  1. 使用嵌套异常导入单独的记录。
  2. 将数据拆分为某些小块csv文件
  3. 手动调用entityManager.flush()并将Thread.sleep(10000)添加到睡眠10毫秒
  4. 每20条记录调用titityManager.flush并睡5ms
  5. 但不幸的是,似乎没有任何帮助。请帮忙。

    感谢阅读。任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:0)

如果映射是正确的,可能是错误的导入代码,如org.hibernate.AssertionFailure中所述 您还可以查看Hibernate batch processing最佳实践和Stateless session 最后一个选项可以移至spring-batch