Java中的H2(嵌入式)数据库 - StackOverflowError

时间:2010-12-08 11:40:00

标签: java database h2

我在Java SE项目中使用嵌入式H2数据库(jdbc:h2:file:...)和JPA 2.0(EclipseLink 2.1.1)。我也在jdbc url连接中设置了MODE = Derby。一切都很完美,直到我添加了一些新的实体,并试图坚持它们。我得到StackOverflowError :(我猜它与h2数据库文件优化/压缩/ ???进程有关,因为文件大小越来越大(应该是~1MB,但它是60MB和40MB临时文件)。问题是 - 什么是继续,如何将其关闭?由于StackOverflowError导致db文件损坏:]

感谢您的帮助!

1 个答案:

答案 0 :(得分:3)

无限递归是原因。你必须找到它。 AOP可用于拦截和记录每个方法调用。当递归开始时,您将能够注意到重复方法调用的模式,这将很快引导您调用自己。