StackOverflowError Ending in DatabaseField.equals [message #1816885] |
Sun, 10 November 2019 07:09  |
Eclipse User |
|
|
|
We just started getting a StackOverflowError from EclipseLink, and unfortunately the stack trace doesn't go far enough to show me what part of our code was the root cause (or at least what our code was doing when it happened). Are there any ideas of what might cause a stack trace like the one below (it's all HashMap:1877 below there and cuts off before hitting anything else)?
Some additional information: This code base had been running for at least a week before this happened (and I doubt the code that was using the database has changed for a long time before that, as we haven't been fiddling with that particular project recently), but we did upgrade from Postgres 9.x to 11.x yesterday morning. The service that had this error was restarted after the upgrade, though, and it ran happily for a good 18 hours before this started happening. I restarted the service again after seeing this error and it hasn't happened again, but it's only been an hour or so.
java.lang.StackOverflowError
at org.eclipse.persistence.internal.helper.DatabaseField.equals(DatabaseField.java:241)
at org.eclipse.persistence.internal.helper.DatabaseField.equals(DatabaseField.java:224)
at java.util.HashMap$TreeNode.find(HashMap.java:1867)
at java.util.HashMap$TreeNode.find(HashMap.java:1877)
at java.util.HashMap$TreeNode.find(HashMap.java:1877)
at java.util.HashMap$TreeNode.find(HashMap.java:1877)
at java.util.HashMap$TreeNode.find(HashMap.java:1877)
at java.util.HashMap$TreeNode.find(HashMap.java:1877)
at java.util.HashMap$TreeNode.find(HashMap.java:1877)
at java.util.HashMap$TreeNode.find(HashMap.java:1877)
at java.util.HashMap$TreeNode.find(HashMap.java:1877)
at java.util.HashMap$TreeNode.find(HashMap.java:1877)
at java.util.HashMap$TreeNode.find(HashMap.java:1877)
at java.util.HashMap$TreeNode.find(HashMap.java:1877)
at java.util.HashMap$TreeNode.find(HashMap.java:1877)
at java.util.HashMap$TreeNode.find(HashMap.java:1877)
at java.util.HashMap$TreeNode.find(HashMap.java:1877)
|
|
|
|
Re: StackOverflowError Ending in DatabaseField.equals [message #1817231 is a reply to message #1817223] |
Mon, 18 November 2019 12:57  |
Eclipse User |
|
|
|
We are doing multi-tenancy, with a schema per tenant, although this didn't appear to be an issue before we upgraded Postgres. Unfortunately, the issue has only ever happened on our production servers, so profiling the code would be challenging at best. I did try upgrading to the latest Postgres JDBC driver on Friday (we were behind by a few versions), though, and the issue hasn't happened again so far. Hopefully that's all that will be required to stop this from happening again.
|
|
|
Powered by
FUDForum. Page generated in 0.07223 seconds