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

[improve][txn] Support ack message list for transaction #15729

Merged
merged 12 commits into from
Jul 5, 2022
Merged

[improve][txn] Support ack message list for transaction #15729

merged 12 commits into from
Jul 5, 2022

Conversation

liangyepianzhou
Copy link
Contributor

@liangyepianzhou liangyepianzhou commented May 24, 2022

Motivation

Now, there is

doAcknowledgeWithTxn(List<MessageId> messageIdList, AckType ackType,
                                                           Map<String, Long> properties, TransactionImpl txn)

But not interface

acknowledgeAsync(List<MessageId> messageIdList, Transaction txn)
CompletableFuture<Void> acknowledgeAsync(Messages<?> messages, Transaction txn);

Modification

Add interface

acknowledgeAsync(List<MessageId> messageIdList, Transaction txn)
CompletableFuture<Void> acknowledgeAsync(Messages<?> messages, Transaction txn);

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)
  • The rest endpoints: (yes / no)
  • The admin cli options: (yes / no)
  • Anything that affects deployment: (yes / no / don't know)

Documentation

Check the box below or label this PR directly.

Need to update docs?

  • doc-required
    (Your PR needs to update docs and you will update later)

  • no-need-doc
    (Please explain why)

  • doc
    (Your PR contains doc changes)

  • doc-added
    (Docs have been already added)

  • doc-not-needed

  • doc-label-missing

### Motivation
Now, there is
```java
doAcknowledgeWithTxn(List<MessageId> messageIdList, AckType ackType,
                                                           Map<String, Long> properties,
                                                           TransactionImpl txn)
```
But not interface
```java
acknowledgeAsync(List<MessageId> messageIdList, Transaction txn)
```
@github-actions github-actions bot added the doc-required Your PR changes impact docs and you will update later. label May 24, 2022
Copy link
Contributor

@codelipenghui codelipenghui left a comment

Choose a reason for hiding this comment

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

Please add support for CompletableFuture<Void> acknowledgeAsync(Messages<?> messages, Transaction txn);

Copy link
Contributor

@codelipenghui codelipenghui left a comment

Choose a reason for hiding this comment

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

Please add support for CompletableFuture<Void> acknowledgeAsync(Messages<?> messages, Transaction txn);

@Technoboy- Technoboy- added this to the 2.11.0 milestone May 24, 2022
@github-actions github-actions bot added doc-not-needed Your PR changes do not impact docs and removed doc-required Your PR changes impact docs and you will update later. labels May 25, 2022
@liangyepianzhou
Copy link
Contributor Author

/pulsarbot run-failure-checks

@liangyepianzhou liangyepianzhou requested a review from gaoran10 June 29, 2022 10:25
Copy link
Contributor

@congbobo184 congbobo184 left a comment

Choose a reason for hiding this comment

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

LGTM! Please optimize some repetitive code

@liangyepianzhou liangyepianzhou merged commit 926834e into apache:master Jul 5, 2022
wuxuanqicn pushed a commit to wuxuanqicn/pulsar that referenced this pull request Jul 14, 2022
* [improve][txn] Support ack message list for transaction
### Motivation
Now, there is
```java
doAcknowledgeWithTxn(List<MessageId> messageIdList, AckType ackType,
                                                           Map<String, Long> properties,
                                                           TransactionImpl txn)
```
But not interface
```java
acknowledgeAsync(List<MessageId> messageIdList, Transaction txn)
```
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/transaction doc-not-needed Your PR changes do not impact docs
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants