Skip to content

Conversation

@renatolfc
Copy link
Contributor

@renatolfc renatolfc commented Nov 29, 2022

In a recent change, the rabbitmq component dropped support for backoff policies. This updates the documentation page by leaving those out as well.

Signed-off-by: Renato L. de F. Cunha renatocunha@acm.org

Thank you for helping make the Dapr documentation better!

Please follow this checklist before submitting:

  • Commits are signed with Developer Certificate of Origin (DCO - learn more)
  • Read the contribution guide
  • Commands include options for Linux, MacOS, and Windows within codetabs
  • New file and folder names are globally unique
  • Page references use shortcodes instead of markdown or URL links
  • Images use HTML style and have alternative text
  • Places where multiple code/command options are given have codetabs

In addition, please fill out the following to help reviewers understand this pull request:

Description

I've removed the outdated mentions of backoff from the RabbitMQ pubsub component page.

Issue reference

#2977
dapr/dapr#1798

In a recent change, the rabbitmq component dropped support for backoff policies.
This updates the documentation page by leaving those out as well.

Signed-off-by: Renato L. de F. Cunha <renatocunha@acm.org>
@shivamkm07 shivamkm07 mentioned this pull request Dec 2, 2022
7 tasks
### Enabling message delivery retries

Backoff retry strategy can instruct the dapr sidecar how to resend the message. By default, the retry strategy is turned off, which means that the sidecar will send a message to the service once. When the service returns a result, the message will be marked as consumption regardless of whether it is correct or not. The above is based on the condition of `autoAck` and `requeueInFailure` is setting to false(if `requeueInFailure` is set to true, the message will get a second chance).
The rabbitmq pubsub component has no built-in support for retry strategies. This means that the sidecar will send a message to the service only once. When the service returns a result, the message will be marked as consumed regardless of whether it was processed correctly or not.
Copy link
Contributor

Choose a reason for hiding this comment

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

Note that this is common among all PubSub components and not just RabbitMQ. Users should use Resiliency if they want in-process retries.

What’s important to note is the difference between the two ways to retry messages:

  • When using autoAck = false and requeueInFailure = true, RabbitMQ is the one responsible for re-delivering messages and any subscriber can get the redelivered message. If you have more than one instance of your consumer, then it’s possible that another consumer will get it. This is usually the better approach because if there’s a transient failure, it’s more likely that a different worker will be in a better position to successfully process the message.
  • Using Resiliency (and the deprecated backoff policy) makes the same Dapr sidecar retry redelivering the messages. So it will be the same Dapr sidecar and the same app receiving the same message.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Sorry for not getting back at this earlier. I see that @msfussell made some more changes to this PR and approved them.

I like this explanation and I've incorporated it into the PR. Please let me know what you think, @ItalyPaleAle.

Copy link
Contributor

@hhunter-ms hhunter-ms left a comment

Choose a reason for hiding this comment

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

quick grammar pass

@github-actions
Copy link

Stale PR, paging all reviewers

@github-actions github-actions bot added the stale label Dec 14, 2022
msfussell and others added 3 commits December 13, 2022 16:40
…ubsub/setup-rabbitmq.md

Co-authored-by: Hannah Hunter <94493363+hhunter-ms@users.noreply.github.com>
Signed-off-by: Mark Fussell <markfussell@gmail.com>
…ubsub/setup-rabbitmq.md

Co-authored-by: Hannah Hunter <94493363+hhunter-ms@users.noreply.github.com>
Signed-off-by: Mark Fussell <markfussell@gmail.com>
…ubsub/setup-rabbitmq.md

Co-authored-by: Hannah Hunter <94493363+hhunter-ms@users.noreply.github.com>
Signed-off-by: Mark Fussell <markfussell@gmail.com>
Copy link
Member

@msfussell msfussell left a comment

Choose a reason for hiding this comment

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

LGTM

@msfussell msfussell removed the stale label Dec 14, 2022
@msfussell msfussell modified the milestones: 1.10, 1.9 Dec 14, 2022
…ubsub/setup-rabbitmq.md

Signed-off-by: Mark Fussell <markfussell@gmail.com>
…ubsub/setup-rabbitmq.md

Signed-off-by: Mark Fussell <markfussell@gmail.com>
…ubsub/setup-rabbitmq.md

Signed-off-by: Mark Fussell <markfussell@gmail.com>
@msfussell msfussell requested a review from hhunter-ms December 14, 2022 01:10
Signed-off-by: Renato L. de F. Cunha <renatocunha@acm.org>
Copy link
Contributor

@hhunter-ms hhunter-ms left a comment

Choose a reason for hiding this comment

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

lgtm

@msfussell msfussell merged commit 58902c6 into dapr:v1.9 Dec 17, 2022
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.

4 participants