Skip to content
Closed
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion pkg/monitoring/feed_monitor.go
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ func (f *feedMonitor) Run(ctx context.Context) {
var subs utils.Subprocesses

// Listen for updates
updatesFanIn := make(chan interface{})
updatesFanIn := make(chan interface{}, 1)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Unless this relieves a deadlock, I don't think it will have the effect that you intend. Blocking sends can be a feature in a system like this, due to becoming a natural scheduling point to swap over to executing the worker on the receiving end. Instant backpressure like before this change leads to less latency. Adding/Increasing the buffer trades increased latency for what is effectively batch executions - do we really want/need that? And if so, why only 1 instead of 10, or some factor of the number of senders, etc.?

for _, poller := range f.pollers {
poller := poller
subs.Go(func() {
Expand Down
Loading