Is it possible to replay events to an AMQP aware ReplayCluster?

Hi All,

I have a cluster config that uses AMQP (RabbitMQ) to distribute events to other VM’s running on other nodes, and this is working just fine for regular command-causes-event scenarios.

Now, I’ve moved onto experimenting with Event Replay scenarios using a ReplayCluster in my Spring config.

I have successfully instructed my replay-cluster to start playback, and playback does occur - sending my stored events to the listener I have registered. However, none of these events seem to make it onto the AMQP Exchange that I’ve configured via my ‘terminal’ (the config is copied from a known-good Spring configuration which already works, just with <axon:replay-cluster line added to the cluster.

I can understand that it might be a terrible idea to ‘distribute’ replayed events, but I couldn’t see anything in the documentation for Axon that explicitly says it shouldn’t either be done or be possible, only that replay cluster wraps a regular cluster.

Have I missed something? Is the distributed replay of events such a bad idea that the framework prevents it from happening or have I misunderstood or mis-configured something?

Any help gratefully received!

Ben

Hi Ben,

replays should never be posted to the Event Bus, unstead you’re really, really, really sure that your situation allows it.
Sagas, for example, have side effects (commands are sent, external systems notified, etc). Sending events via the event bus will cause these sagas to be triggered again, potentially causing these side-effects again.
The reason replays exist is to allow certain read models to be rebuilt from scratch. So you’d just replay the cluster for which you want to rebuild the models.

Cheers,

Allard

Awesome, thanks Allard!

Message received and understood - distributed replay of events is indeed a terrible idea.

Thanks for taking time out to answer my question.

Cheers

Ben