Hi all,

I think the functionality to quiesce a deployed AE via JMX is not implemented 
correctly.

I did the following steps:

-          Deploy AE via shell script

-          Enable JMX monitor by passing parameters to JVM 
-Duima.jmx.monitor.interval=60000 -Dcom.sun.management.jmxremote 
-Dcom.sun.management.jmxremote.port=8009 
-Dcom.sun.management.jmxremote.authenticate=false 
-Dcom.sun.management.jmxremote.ssl=false

-          Connect via JConole and navigate to org.apache.uima -> 
ee.jms.service -> <Your Annotator Name> Uima EE Service -> Controller -> 
Operations

-          Run operation completeProcessingAndStop()

Result:

-          The Java process does not exit correctly, because the JMXMonitor 
thread is still running

Reason:

-          If you quiesce the service via console q + ENTER or s + ENTER the 
method stopMonitor in class UIMA_Service is explicit executed

-          If you quiesce the service via JMX and running operation StopNow() a 
System.exit(0) is executed, which kills the JMXMonitor thread

-          If you run operation completeProcessingAndStop() via JMX the 
JMXMonitor thread is not closed and this is the reason for the bug.


I hope this information will help you to test the behavior. Please feel free to 
contact me for further details and questions.


Regards,
Christopher Schulz.

Reply via email to