[ https://issues.apache.org/jira/browse/UIMA-3713?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Jerry Cwiklik updated UIMA-3713: -------------------------------- Fix Version/s: 1.1.0-Ducc > Modify DUCC to deal with out of order messages > ---------------------------------------------- > > Key: UIMA-3713 > URL: https://issues.apache.org/jira/browse/UIMA-3713 > Project: UIMA > Issue Type: Bug > Components: DUCC > Affects Versions: 1.0.0-Ducc > Reporter: Jerry Cwiklik > Assignee: Jerry Cwiklik > Fix For: 1.1.0-Ducc > > > Its been observed that an Agent killed a JD immediately after starting it. > This happens rarely but does occur.Looking through the Agent log I see that > multiple OR state updates arrive almost instantly. In one of the states the > OR requests a new process to be started while in the second state the process > doesnt even exist. So the agent first launches the process and then > subsequently kills it as this indicates a ghost process. A ghost process is > one that exists in the agent's inventory but is not present in the OR state > update. > This is happening due to out of order messages. The OR generates its state > updates at regular intervals (every 20 secs) and sends them to a jms topic. > In this case, the PM fetches the update, trims it and sends it to agents. Not > 100% sure, but it looks like there is some kind of a delay in a broker which > causes messages to be held and than subsequently delivered in rapid > succession. > The agent should be able to cope with this. The OR should add a sequence > number to each state it publishes. The PM should forward this sequence when > it sends a trimmed state to the agents. The agent should compare received > sequence against what it received on the previous update.If the new sequence > is larger than the previous one, processing should be allowed. If the new > sequence is smaller then previous, the message should be discarded. -- This message was sent by Atlassian JIRA (v6.2#6252)