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

Introduce doneCh for ack error #777

Merged
merged 5 commits into from
Sep 27, 2022

Conversation

wolfstudy
Copy link
Member

@wolfstudy wolfstudy commented May 25, 2022

Signed-off-by: xiaolongran xiaolongran@tencent.com

Motivation

In #775 and #776, we support the error information that may occur when the Go SDK side processes the Ack Command, but there is a bug in this implementation. We do not wait for the error information to return directly, so the error obtained in the Ack interface will always be nil.

Modifications

  • Introduce doneCh to wait for the information of ack error to return

Signed-off-by: xiaolongran <xiaolongran@tencent.com>
@wolfstudy wolfstudy added this to the v0.9.0 milestone May 25, 2022
@wolfstudy wolfstudy requested a review from cckellogg May 25, 2022 03:28
@wolfstudy wolfstudy self-assigned this May 25, 2022
Signed-off-by: xiaolongran <xiaolongran@tencent.com>
Copy link
Contributor

@liangyuanpeng liangyuanpeng left a comment

Choose a reason for hiding this comment

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

I'm not sure if deleting A was the right choice.

@freeznet freeznet modified the milestones: v0.9.0, v0.10.0 Jul 4, 2022
@wolfstudy wolfstudy mentioned this pull request Sep 14, 2022
1 task
@wolfstudy
Copy link
Member Author

@freeznet PTAL thanks

Signed-off-by: xiaolongran <xiaolongran@tencent.com>
@xiaofan-luan
Copy link

hi @wolfstudy , what would happen if currently we don't wait for ACK but broker side failed to ack?
If we get the error response how do we suppose to handle it?

@merlimat merlimat modified the milestones: v0.10.0, v0.9.0 Sep 27, 2022
@merlimat merlimat merged commit e78dc3c into apache:master Sep 27, 2022
@wolfstudy
Copy link
Member Author

hi @wolfstudy , what would happen if currently we don't wait for ACK but broker side failed to ack? If we get the error response how do we suppose to handle it?

Here we can look at two situations:

  1. If the location of the ack error is an error in the Go SDK, then we can now catch the error and try to call the ack interface again
  2. If the ack error information is returned by the Broker, it means that the Broker has an error in processing the ack, and we can also try to ack again, but in general, we may need to further confirm why the Broker side failed and whether it conforms to the predetermined logic.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants