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

Orion Broker Set UI Implementation #292

Merged
merged 3 commits into from
Sep 19, 2024
Merged

Orion Broker Set UI Implementation #292

merged 3 commits into from
Sep 19, 2024

Conversation

yisheng-zhou
Copy link
Contributor

Code Review Summary: Orion Broker Set UI Implementation

Enhancements to Broker Set Section on Service Page

  • Introduced a new header.
  • Added three sub-sections:
    1. Assignments: Displays start broker ID to end broker ID.
    2. Broker Links
    3. Status: Reserved for future use.

Improvements to Node Page

  • Added a new label in the header to show the broker set count.
  • Introduced a broker set section that records all broker sets.
  • Added a broker status section, which is reserved for future use.

Class Updates

The existing BrokerSet class is generated from a configuration file every 2 minutes, which means it cannot currently save state information. Additionally, it plays a critical role in the existing topic assignment logic. To avoid disrupting any existing logic during refactoring, a new BrokerSetState class has been added.

Testing

This change has been tested via branch deployment.

@yisheng-zhou yisheng-zhou requested a review from a team as a code owner September 19, 2024 16:42
Comment on lines 9 to 10
private List<List<Integer>> brokersetRanges = new ArrayList<>();
private List<String> brokerIds;
Copy link
Contributor

Choose a reason for hiding this comment

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

Are we keeping redundant information in these two variables? Isn't brokerIds union of all brokersetRanges?

Copy link
Contributor Author

@yisheng-zhou yisheng-zhou Sep 19, 2024

Choose a reason for hiding this comment

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

The ranges are from the configuration. The ids are from the cluster info.

There can be a condition that brokerRange contains a broker that does not exist. Now, that means the brokerset is invalid. Once we have more condition check, there can be other reasons causing this mismatch.

Will add comments for these two variables along with other changes.

return brokersetStatus;
}

function getStatusColumns() {
Copy link
Contributor

Choose a reason for hiding this comment

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

Should this be getStatsColumns columns? Are there other places a similar change if needed?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

For brokerset, do we want to use stats or status? I want to display the condition of a brokerset at one time.
https://stackoverflow.com/questions/1162816/naming-conventions-state-versus-status

@yisheng-zhou yisheng-zhou merged commit e18c34e into master Sep 19, 2024
1 check passed
@yisheng-zhou yisheng-zhou deleted the show_brokerset branch September 19, 2024 18:55
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.

2 participants