Jerry Cwiklik created UIMA-4866:
-----------------------------------
Summary: UIMA DUCC: Agent rogue detector not working
Key: UIMA-4866
URL: https://issues.apache.org/jira/browse/UIMA-4866
Project: UIMA
Issue Type: Bug
Components: DUCC
Reporter: Jerry Cwiklik
Assignee: Jerry Cwiklik
Fix For: 2.1.0-Ducc
Looks like the rogue process detector does not actually initiate process kill
when it detects a rogue process.
The detector does not mark a rogue process for kill immediately upon detection.
It supposed to mark it for death on 3rd iteration (detection). This is done due
to an asynchronous nature of the detector. It runs in a thread driven by timer.
It needs to reconcile processes it finds with information sent by the OR which
includes reservations. So the rogue process detector does not mark anything for
death until it sees OR state.
The bug in the code is in RogueProcessReaper:
if ((counter = entry.countDown()) == 0 && !entry.isKilled()) {
if entry.countDown() returns a negative number the test fails and the process
is not marked for death.
The fix is to first check the counter to see if it is positive and only than
decrement and test.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)