[
https://issues.apache.org/jira/browse/UIMA-2038?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13000800#comment-13000800
]
Jörn Kottmann commented on UIMA-2038:
-------------------------------------
Now re-tested with 2.3.1 RC5 and the issue remains. After processing a few
CASes the process does not stop when terminated with "q".
Here are the non-daemon jstack threads:
"DestroyJavaVM" prio=10 tid=0x00007f24ec2b4000 nid=0x370d waiting on condition
[0x0000000000000000]
java.lang.Thread.State: RUNNABLE
"VmThreadGroup563b24df:12e70c47767:-7ff2_SolrcasAE:Reaper" prio=10
tid=0x00007f24ec2b5000 nid=0x395f in Object.wait() [0x00007f24ea9cf000]
java.lang.Thread.State: TIMED_WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x00007f251e611b00> (a
org.apache.uima.aae.spi.transport.vm.VmTransport$1)
at
org.apache.uima.aae.spi.transport.vm.VmTransport$1.run(VmTransport.java:150)
- locked <0x00007f251e611b00> (a
org.apache.uima.aae.spi.transport.vm.VmTransport$1)
I guess the second thread as a UIMA-AS thread which maybe should be daemon or
terminated
in some way.
> UIMA AS process does not terminate reliably
> -------------------------------------------
>
> Key: UIMA-2038
> URL: https://issues.apache.org/jira/browse/UIMA-2038
> Project: UIMA
> Issue Type: Bug
> Components: Async Scaleout
> Affects Versions: 2.3.1AS
> Reporter: Jerry Cwiklik
> Assignee: Jerry Cwiklik
> Fix For: 2.3.1AS
>
>
> UIMA AS two stop options dont seem to work reliably. Neither 's' nor 'q' on
> the command line force a clean shutdown of the process. Actually, there is
> also a related problem. Namely, when the shutdown succeeds it appears that
> the Shared Connection that all Spring listeners use is not closed which leads
> to an ugly exception on the broker console. This happens every time the
> service is terminated. Review listeners shutdown code and make sure that when
> the last listener terminates the connection is stopped before the process
> exits. Also, make sure that uima threads from custom pools are daemon threads
> to allow the jvm to collect them on shutdown. NOTE: AMQ version 4.x internal
> threads are not daemon threads and there is special code in the listener to
> wait for them to stop before exiting. Newer AMQ version use daemon threads so
> shutting down AMQ is much more reliable.
--
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira