Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'doc/development/event_store.md')
-rw-r--r--doc/development/event_store.md15
1 files changed, 15 insertions, 0 deletions
diff --git a/doc/development/event_store.md b/doc/development/event_store.md
index c54e6ae2d07..918da8fb738 100644
--- a/doc/development/event_store.md
+++ b/doc/development/event_store.md
@@ -300,6 +300,21 @@ executed synchronously every time the given event is published.
For complex conditions it's best to subscribe to all the events and then handle the logic
in the `handle_event` method of the subscriber worker.
+### Delayed dispatching of events
+
+A subscription can specify a delay when to receive an event:
+
+```ruby
+store.subscribe ::MergeRequests::UpdateHeadPipelineWorker,
+ to: ::Ci::PipelineCreatedEvent,
+ delay: 1.minute
+```
+
+The `delay` parameter switches the dispatching of the event to use `perform_in` method
+on the subscriber Sidekiq worker, instead of `perform_async`.
+
+This technique is useful when publishing many events and leverage the Sidekiq deduplication.
+
## Testing
### Testing the publisher