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

[Enhancement] Ensuring consistency between broker and nameserver data when deleting a topic #7052

Closed
1 task done
RongtongJin opened this issue Jul 20, 2023 · 0 comments · Fixed by #7066
Closed
1 task done

Comments

@RongtongJin
Copy link
Contributor

Before Creating the Enhancement Request

  • I have confirmed that this should be classified as an enhancement rather than a bug/feature.

Summary

I hope that by deleting the topic on the broker, it can be guaranteed that the corresponding routing on the NameServer will eventually be deleted, thus ensuring consistency between the data on both.

Motivation

Currently, the deletion of a topic involves two steps: deleting the topic on the broker and deleting it on all the NameServers. However, since this step is not atomic, if the program execution is interrupted after the broker topic is deleted, the routing on the NameServer will not be removed, leading to potential problems. To ensure data consistency, it is suggested that deleting the topic on the broker should guarantee the corresponding routing on the NameServer to be eventually removed.

Describe the Solution You'd Like

During the registration process, Nameserver compares the registered Topic with the existing Topic in the routing table, and removes invalid routes.

When performing incremental registration (such as creating a Topic), REGISTER_TOPIC_IN_NAMESRV requests are now used instead of REGISTER_BROKER requests.

Describe Alternatives You've Considered

No

Additional Context

No response

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