Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix infinite dispatch loop in MP due to stale channel #2241

Merged
merged 1 commit into from
Nov 28, 2024

Conversation

malakaganga
Copy link
Contributor

Purpose

The issue occurred when the message processor repeatedly attempted to dispatch a message in a loop, leaving an unacknowledged message in the RabbitMQ queue. Over time, the channel to the queue became stale. Although there is a check in the dispatch logic for a healthy store connection, this check failed to terminate the loop, causing the dispatch process to run indefinitely. This commit addresses the issue by ensuring the loop exits when the channel becomes stale or the store connection is deemed unhealthy.

Fixes: wso2/product-micro-integrator#3771

The issue occurred when the message processor repeatedly attempted to dispatch a message in a loop, leaving an unacknowledged message in the RabbitMQ queue. Over time, the channel to the queue became stale. Although there is a check in the dispatch logic for a healthy store connection, this check failed to terminate the loop, causing the dispatch process to run indefinitely. This commit addresses the issue by ensuring the loop exits when the channel becomes stale or the store connection is deemed unhealthy.

Fixes: wso2/product-micro-integrator#3771
@malakaganga malakaganga merged commit c56e91b into wso2:master Nov 28, 2024
1 of 2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

The message processor is not consuming the messages once the failed back-end becomes available
2 participants