Skip to content

An incorrectly configured rendezvous channel & poller causes a memory leak. [INT-2835] #6809

@spring-operator

Description

@spring-operator

Tom Greasley opened INT-2835 and commented

By naively configuring a rendezvous channel it's very easy to create a serious memory leak.

A rendezvous queue blocks message receivers until there is a message to process. However, due to the way pollers work, polling tasks will continue to be created and queued in the task executer according to schedule. The task executor threads will be stalled as they are blocked for messages from the rendezvous channel.

An in-balance between sender and poller frequency will mean that the task queue could grow uncontrolled.

A solution is to ensure a poll frequency that matches the frequency of arriving messages or to configure the poller's task executor with a suitable queue capacity.

It might be nice to have a brief mention of this in the documentation.


Affects: 2.1.3

Attachments:

1 votes, 3 watchers

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions