Description
Falcon provides LateRerunService and RetryService to automatically handle late data reruns and instance failure correspondingly, for both process and a feed instance based on the policies like periodic, back-off etc.
The service supports switchable queues to handle the messages, currently Retry Service uses InMemoryQueue which is built over Java's DelayQueue. A case where if the delay (delayedMessage) in message is greater than the existing message in the queue is not handle, and the service just stops enqueuing or dequeing the messages. Hence Falcon stops all the failed instance retries.
A fix in the compareTo method of the event message is required.
The fix can be back-ported from Ivory.