graylog2-server
graylog2-server copied to clipboard
EventDefinitions can be enabled more than once
The {definitionId}/schedule endpoint does not check whether an EventDefinition is
already enabled.
This will lead to additional jobdefinitions and triggers, which will break the UI.
Expected Behavior
The request should be ignored
Possible Solution
--- graylog2-server/src/main/java/org/graylog/events/processor/EventDefinitionHandler.java
+++ graylog2-server/src/main/java/org/graylog/events/processor/EventDefinitionHandler.java
@@ -211,6 +211,10 @@ public class EventDefinitionHandler {
private void createJobDefinitionAndTrigger(EventDefinitionDto eventDefinition,
EventProcessorSchedulerConfig schedulerConfig) {
+ if (getJobDefinition(eventDefinition).isPresent()) {
+ LOG.warn("Not creating a second job definition for EventDefintion <{}>", eventDefinition);
+ return;
+ }
final JobDefinitionDto jobDefinition = createJobDefinition(eventDefinition, schedulerConfig);
Steps to Reproduce (for bugs)
Call PUT to the schedule endpoint more than once.
push. has same problem