roboconf / roboconf-platform

The core modules and the platform
Apache License 2.0
35 stars 11 forks source link

[ Autonomic ] Reactions should be limited per app and event ID #467

Open vincent-zurczak opened 9 years ago

vincent-zurczak commented 9 years ago

Following #452, it is not reactions we should limit, but reactions to event. For the moment, if we have two rules (e.g. one to scale the database and one to scale the web server), they are considered as a same reaction.

If the autonomic executes one, any request to trigger the second will be dropped, as long as the first one has not completed. In fact, I think this behavior is invalid. Both actions match different events. But the reaction is the same.

So, rather than limiting reactions by their name, we should limit them by application and by event.

vincent-zurczak commented 9 years ago

In terms of code, it means the reactionKey should not be...

app.getName() + "_" + rule.getReactionId()

... but ...

app.getName() + "_" + rule.getEventId()

The event ID is defined by the user, while the reaction ID is a predefined choice given Roboconf's autonomic. BTW, choosing better names for our concepts would be relevant.