[
https://issues.apache.org/jira/browse/UIMA-4866?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jerry Cwiklik closed UIMA-4866.
-------------------------------
Resolution: Fixed
Updated code to prevent the counter from getting negative
> 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)