Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Spring insight crashes with "Imbalanced frame stack"

I want to use spring insight to trace my spring mvc webapp. When starting up the tc server 2.5 developer edition, my application comes up but I see following message in the console:

20.10.2011 09:24:24 com.springsource.insight.intercept.trace.SimpleFrameBuilder enter
FATAL: Frame stack exceeded MAX_FRAMES_PER_TRACE limit or has been aborted limit: 3000 frameCount: 3000 aborted: false
20.10.2011 09:24:24 com.springsource.insight.collection.errorhandling.AdviceErrorHandlingAspect ajc$around$com_springsource_insight_collection_errorhandling_AdviceErrorHandlingAspect$1$e76a6b03
FATAL: Error swallowed in advice adviceexecution(void com.springsource.insight.collection.AbstractOperationCollectionAspect.afterReturning(Object, JoinPoint.StaticPart))

--

java.lang.IllegalStateException: Imbalanced frame stack!  (exit() called too many times)
com.springsource.insight.intercept.trace.ThreadLocalFrameBuilder.exit(ThreadLocalFrameBuilder.java:61)
com.springsource.insight.collection.DefaultOperationCollector.exit(DefaultOperationCollector.java:111)
com.springsource.insight.collection.DefaultOperationCollector.exitNormal(DefaultOperationCollector.java:67)
com.springsource.insight.plugin.springtx.TransactionOperationCollectionAspect.ajc$afterReturning$com_springsource_insight_plugin_springtx_TransactionOperationCollectionAspect$2$e13fb3a0(TransactionOperationCollectionAspect.aj:61)
org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:724)
org.springframework.transaction.interceptor.TransactionAspectSupport.commitTransactionAfterReturning(TransactionAspectSupport.java:393)
org.springframework.transaction.aspectj.AbstractTransactionAspect.ajc$afterReturning$org_springframework_transaction_aspectj_AbstractTransactionAspect$3$2a73e96c(AbstractTransactionAspect.aj:78)
...

I can call some controller actions after this message, but at some point the server just refuses to handle my requests and sends the same stack trace to the browser.

Did anyone have experience with this problem? Even deactivating insight plugins annotation, hibernate, jdbc or spring-tx does not sove the problem.

like image 427
powerMicha Avatar asked Oct 11 '11 11:10

powerMicha


1 Answers

Jon Travis is almost exactly right, but the system property is

-Dinsight-max-frames

The default value is 3000 as seen in insight-intercept-1.5.1.SR2.jar: com.springsource.insight.intercept.trace.FrameBuilder

Changing the value to -Dinsight-max-frames=6000 fixed the issue for me.

like image 65
Brad Cupit Avatar answered Sep 24 '22 06:09

Brad Cupit