0

I seem to be getting this exception:

Execution exception
InvocationTargetException occured : null

play.exceptions.JavaExecutionException
    at play.mvc.ActionInvoker.invoke(ActionInvoker.java:239)
    at Invocation.HTTP Request(Play!)
Caused by: java.lang.reflect.InvocationTargetException
    at play.mvc.ActionInvoker.invokeWithContinuation(ActionInvoker.java:557)
    at play.mvc.ActionInvoker.invoke(ActionInvoker.java:508)
    at play.mvc.ActionInvoker.invokeControllerMethod(ActionInvoker.java:484)
    at play.mvc.ActionInvoker.invokeControllerMethod(ActionInvoker.java:479)
    at play.mvc.ActionInvoker.invoke(ActionInvoker.java:161)
    ... 1 more
Caused by: java.lang.OutOfMemoryError: GC overhead limit exceeded
    at java.util.Arrays.copyOf(Arrays.java:2367)
    at java.lang.AbstractStringBuilder.expandCapacity(AbstractStringBuilder.java:130)
    at java.lang.AbstractStringBuilder.ensureCapacityInternal(AbstractStringBuilder.java:114)
    at java.lang.AbstractStringBuilder.append(AbstractStringBuilder.java:415)
    at java.lang.StringBuilder.append(StringBuilder.java:132)
    at play.data.binding.Unbinder.unBind(Unbinder.java:106)
    at play.data.binding.Unbinder.unBind(Unbinder.java:63)
    at play.data.binding.Unbinder.unBind(Unbinder.java:110)
    at play.data.binding.Unbinder.unBind(Unbinder.java:110)
    at play.data.binding.Unbinder.unBind(Unbinder.java:63)
    at play.data.binding.Unbinder.unBind(Unbinder.java:110)
    at play.data.binding.Unbinder.unBind(Unbinder.java:110)
    at play.data.binding.Unbinder.unBind(Unbinder.java:63)
    at play.data.binding.Unbinder.unBind(Unbinder.java:110)
    at play.data.binding.Unbinder.unBind(Unbinder.java:110)
    at play.data.binding.Unbinder.unBind(Unbinder.java:63)
    at play.data.binding.Unbinder.unBind(Unbinder.java:110)
    at play.data.binding.Unbinder.unBind(Unbinder.java:110)
    at play.data.binding.Unbinder.unBind(Unbinder.java:63)
    at play.data.binding.Unbinder.unBind(Unbinder.java:110)
    at play.data.binding.Unbinder.unBind(Unbinder.java:110)
    at play.data.binding.Unbinder.unBind(Unbinder.java:63)
    at play.data.binding.Unbinder.unBind(Unbinder.java:110)
    at play.data.binding.Unbinder.unBind(Unbinder.java:110)
    at play.data.binding.Unbinder.unBind(Unbinder.java:63)
    at play.data.binding.Unbinder.unBind(Unbinder.java:110)
    at play.data.binding.Unbinder.unBind(Unbinder.java:110)
    at play.data.binding.Unbinder.unBind(Unbinder.java:63)
    at play.data.binding.Unbinder.unBind(Unbinder.java:110)
    at play.data.binding.Unbinder.unBind(Unbinder.java:110)
    at play.data.binding.Unbinder.unBind(Unbinder.java:63)
    at play.data.binding.Unbinder.unBind(Unbinder.java:110)

My code is:

"".equals(question.uniqueID)

where question is a model and uniqueID is a String. I'm using play framework 1.2.6 and this is totally unexpected. SO is asking for me to write some more text so I'm trying.

twihoX
  • 178
  • 2
  • 5
  • Increase the permgen space when you start your program -XX:MaxPermSize so that it can consume more memory – Karthik Prasad Oct 08 '13 at 14:50
  • This looks rather like a play framework bug then an actual heap space problem. – twihoX Oct 08 '13 at 15:07
  • This question describes what the error means: http://stackoverflow.com/questions/1393486/what-does-the-error-message-java-lang-outofmemoryerror-gc-overhead-limit-excee – Mark Rotteveel Oct 08 '13 at 15:21

1 Answers1

1

My code is: "".equals(question.uniqueID) where question is a model and uniqueID is a String.

That doesn't match he stack trace so I don't this is the cause of an OOME.

I'm using play framework 1.2.6 and this is totally unexpected.

You can run low on memory in any system, esp a high level one like Play, so not that unexpected. The first thing I would try increasing your maximum heap size to at least 1 GB if not 16 GB (if you have that much)

Peter Lawrey
  • 525,659
  • 79
  • 751
  • 1,130
  • 1
    Yes, it does not match the stack trace, but it happens on that exact line - when I debug and step, this is where it freezes for 10 seconds and then gives me the exception. This is the single point that when I comment out, it starts working again. The fact is, of course, caused by play's stupid byte code enhancement. – twihoX Oct 08 '13 at 14:51
  • @twihoX can you try more heap? – Peter Lawrey Oct 08 '13 at 15:45