TimeOut trigger object not triggered when using quartz along with redis

Hi Allard,

I am using axon 2.3.1 and quartz scheduler 2.1.7 along with Jlinn/Quartz-redis-jobstore (whichis a Quartz Scheduler JobStore that uses Redis for persistent storage).
We are using sagas to schedule timeouts in some events for this we are using EventScheduler class provided by axon. so we do

EventScheduler.schedule(duration,object) to trigger the object on timeout

and we write eventHandler for this object

@SagaEventHandler(Object object)

and take some action.
But it is not triggered when the timeout happens. Previously we were using oracle as persistant storage by passing the datasource to

SchedulerFactoryBean and passing this bean as a reference to property scheduler to class QuartzEventSchedulerFactoryBean

that time the timouts were processed succesfully.
So when we are using oracle along with quartz the timeout objects were triggered properly.But now as we are using redis with quartz the timeout happens entry get deleted after the timeout but the object to be triggered is not triggered after the timeout so it doesn’t come on the eventHandler.
Can you suggest some pointers.

Hi Anand,

this sounds like a Quartz/Redis specific issue. I don’t know what the status of Quartz’ Redis scheduler is. If the schedulder doesn’t trigger, it is not likely to be an issue related to Axon.

Cheers,

Allard

Hi Allard,

Thanks for your quick response,
I am tried using these two providers redis-quartz and quartz-redis-jobstore . But i am facing the same problem. I am not sure but if lot of people are using these providers and are they facing the same problem.

As the event gets stored in the redis, the event is also removed after the timeout has been completed for the duration we scheduled. After timeout the event is not triggered.
By the time can you suggest any good example of axon-redis usage and does it provides the scheduling functionality, so that it can be achived using axon-redis directly.

Hi Anand,

any Redis support currently available in the Axon codebase are incubator components. That mean they aren’t production ready, and should only be used at your discretion. Actually, my opinion is that they are currently not at all in any state suitable for a production environment.

Cheers,

Allard