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

[Nack] support flexible specified redelivery delay time of Nack #830

Open
wants to merge 5 commits into
base: master
Choose a base branch
from

Conversation

shenqianjin
Copy link
Contributor

@shenqianjin shenqianjin commented Aug 17, 2022

Dears,

I want to specify flexible nack delay time in my business. So I expected a NackLater(msg Message, delay time.Duration) method in your original Consumer interface, just like ReconsumeLater(msg Message, delay time.Duration).

Motivation

  • Specify flexible nack delay time rather than a fixed time.
  • NackBackoffPolicy decides delay time by redeliveryCount, it is not appropriate in some cases.

Modifications

  • Add a NackLater(msg Message, delay time.Duration) method in your original Consumer interface

Verifying this change

  • Make sure that the change passes the CI checks.

(Please pick either of the following options)

This change is a trivial rework / code cleanup without any test coverage.

(or)

This change is already covered by existing tests, such as (please describe tests).

(or)

This change added tests and can be verified as follows:

(example:)

  • Added integration tests for end-to-end deployment with large payloads (10MB)
  • Extended integration test for recovery after broker failure

Does this pull request potentially affect one of the following parts:

If yes was chosen, please highlight the changes

  • Dependencies (does it add or upgrade a dependency): (yes / no)
  • The public API: (yes / no)
  • The schema: (yes / no / don't know)
  • The default values of configurations: (yes / no)
  • The wire protocol: (yes / no)

Documentation

  • Does this pull request introduce a new feature? (yes / no)
  • If yes, how is the feature documented? (not applicable / docs / GoDocs / not documented)
  • If a feature is not applicable for documentation, explain why?
  • If a feature is not documented yet in this PR, please create a followup issue for adding the documentation

shubham1172 and others added 3 commits March 8, 2022 11:05
Fixes apache#725

### Motivation

This PR will enable pulsar-client-go to be a compliant library. One of its dependencies was not compliant with OSS licensing requirements earlier, and this PR upgrades to the latest version of it, which has a MIT license.

### Modifications

Ran the following commands
```bash
go get github.com/beefsack/go-rate@latest
go mod tidy
```

### Verifying this change

- [x] Make sure that the change passes the CI checks.
@shenqianjin shenqianjin changed the title [Nack] support flexible specified nack delivery depay [Nack] support flexible specified redelivery delay time of Nack Aug 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.

3 participants