[
https://issues.apache.org/jira/browse/UIMA-1938?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jerry Cwiklik closed UIMA-1938.
-------------------------------
Resolution: Fixed
Modified Primitive Controller to optionally dump a JVM stack if AE takes too
long to process a CAS. The instrumentation is enabled via
-DdumpHeapThreshold=XX where XX is a max number of SECONDS the AE process
method is allowed to process a CAS. Actually, the new instrumentation times
three methods:
CasIterator casIterator = ae.processAndOutputNewCASes(aCAS);
casIterator.hasNext()
CAS casProduced = casIterator.next();
If the instrumentation is enabled and the timer pops and the JVM is forced to
dump a stack. This instrumentation only works with IBM JVM which includes
com.ibm.jvm.Dump class which enables stack dump via a static method JavaDump().
When running in Sun's JVM, the instrumentation is not enabled. The code uses
reflection :
Class<?> dumpClass = Class.forName("com.ibm.jvm.Dump"); to determine if it is
running in IBMs jvm.
> Modify UIMA AS Primitive Service to optionally dump JVM stack if process()
> method takes too long
> ------------------------------------------------------------------------------------------------
>
> Key: UIMA-1938
> URL: https://issues.apache.org/jira/browse/UIMA-1938
> Project: UIMA
> Issue Type: New Feature
> Components: Async Scaleout
> Reporter: Jerry Cwiklik
> Assignee: Jerry Cwiklik
> Priority: Minor
> Fix For: 2.3.1AS
>
>
> Add instrumentation to the UIMA AS Primitive service that will force JVM
> Stack dump if AE takes too long to process a CAS. Enable the instrumentation
> via -D variable. This enhancement may prove useful when debugging user code.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.