Tracing a Declare Page crashes the node
Hi all,
trying to add Declare Page to the traced pages causes us to see a StackOverflowError in Tracer (after clicking the OK button). The node then becomes unresponsive and has to be restarted.
At one point this is in the log file and the block starting with the underlined line is repeated many times.
Caused by:
java.lang.StackOverflowError
[...]
at com.pega.pegarules.priv.factory.AbstractContainerFactory.acquireObjectAbstractContainerFactory.java:213
at com.pega.pegarules.priv.factory.IntArrayFactory.acquireIntArrayFactory.java:88
at com.pega.pegarules.pub.util.PRDateFormat.formatIDTPRDateFormat.java:591
at com.pega.pegarules.exec.internal.util.PRDateTimeUtilsImpl.getCurrentTimeStampPRDateTimeUtilsImpl.java:710
at com.pega.pegarules.monitor.internal.tracer.events.TraceEventBaseImpl.ctorCommonTraceEventBaseImpl.java:194
at com.pega.pegarules.monitor.internal.tracer.events.TraceEventBaseImpl.<init>TraceEventBaseImpl.java:190
at com.pega.pegarules.monitor.internal.tracer.TraceEvent.<init>TraceEvent.java:207
at com.pega.pegarules.monitor.internal.tracer.TracerSessionImpl.logTraceEventTracerSessionImpl.java:486
at com.pega.pegarules.session.internal.mgmt.Executable.logTraceEventExecutable.java:1253
at com.pega.pegarules.exec.internal.declare.infengine.pages.DeclarativePageDirectoryImpl.traceDeclarativePageDirectoryImpl.java:1115
at com.pega.pegarules.exec.internal.declare.infengine.pages.DeclarativePageDirectoryImpl.traceDeclarativePageDirectoryImpl.java:1108
at com.pega.pegarules.exec.internal.declare.infengine.pages.DeclarativePageDirectoryImpl.isDeclarePageFreshDeclarativePageDirectoryImpl.java:642
at com.pega.pegarules.exec.internal.declare.infengine.pages.DeclarativePageDirectoryImpl.findDeclarativePageDeclarativePageDirectoryImpl.java:471
at com.pega.pegarules.session.internal.mgmt.PRRequestorImpl.findDeclarativePagePRRequestorImpl.java:2195
at com.pega.pegarules.session.internal.mgmt.base.ThreadPageDir.findDeclarativePageThreadPageDir.java:993
at com.pega.pegarules.session.internal.mgmt.base.ThreadPageDir.directPageExistsThreadPageDir.java:697
at com.pega.pegarules.session.internal.mgmt.base.ThreadPageDir.directPageExistsThreadPageDir.java:662
at com.pega.pegarules.session.internal.mgmt.base.ThreadPageDir.pageExistsThreadPageDir.java:658
at com.pega.pegarules.session.internal.mgmt.PRThreadImpl.pageExistsPRThreadImpl.java:713
at com.pega.pegarules.session.internal.mgmt.Executable.findPageExecutable.java:1715
at com.pega.pegarules.monitor.internal.tracer.events.TraceEventBaseImpl.collectAnyNamedPagesTraceEventBaseImpl.java:655
at com.pega.pegarules.monitor.internal.tracer.TraceEvent.<init>TraceEvent.java:271
at com.pega.pegarules.monitor.internal.tracer.TracerSessionImpl.logTraceEventTracerSessionImpl.java:486
at com.pega.pegarules.session.internal.mgmt.Executable.logTraceEventExecutable.java:1253
[...]
many more lines....
[...]
[4/29/15 18:10:21:631 CEST] 0000001d ThreadPool I WSVR0629I: The request buffer for thread pool "WorkManager.PRPCWorkManager" has reached its capacity.
[4/29/15 18:10:29:303 CEST] 00000084 SystemOut O 2015-04-29 18:10:29,302 [ WebContainer : 0] [ Developer] [ IAVFW:15.00] .timers.EnvironmentDiagnostics INFO [Node Name]|[IP Adress] [OperatorID here] - --- Thread Dump Starts ---
[...]
We are using PRPC Version 6.3 SP1. This can be reproduced reliably. We now know not to trace any Declare Pages anymore. Have we discovered a bug or can this behaviour be explained?
Thank you.