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

Only check FULL_AUTO resources when determining if the evacuation is complete #2743

Merged

Conversation

zpinto
Copy link
Contributor

@zpinto zpinto commented Jan 25, 2024

Issues

  • isEvacuationCompleted is returning false for instances with SEMI_AUTO resources assigned to it.

Description

Evacuation is not supported for SEMI_AUTO resources. It is the customers job to populate the preferenceList. Evacuate does not make since in this context because EVACUATION relies on rebalancer to decide a new destination for the replicas. If the resource is not FULL_AUTO, helix is not allowed to modify the preferenceList.

We are fixing the API to only consider the CURRENTSTATE of FULL_AUTO resources in the check to see if evacuation has is finished.

Tests

  • testEvacuate is modified to create semi auto resource assigned to all participants and we call evacuate and isEvacuateFinished is successful

Changes that Break Backward Compatibility (Optional)

NA

Documentation (Optional)

NA

Commits

  • My commits all reference appropriate Apache Helix GitHub issues in their subject lines. In addition, my commits follow the guidelines from "How to write a good git commit message":
    1. Subject is separated from body by a blank line
    2. Subject is limited to 50 characters (not including Jira issue reference)
    3. Subject does not end with a period
    4. Subject uses the imperative mood ("add", not "adding")
    5. Body wraps at 72 characters
    6. Body explains "what" and "why", not "how"

Code Quality

  • My diff has been formatted using helix-style.xml
    (helix-style-intellij.xml if IntelliJ IDE is used)

…complete. EVACUATE is only supported for FULL_AUTO.
@zpinto
Copy link
Contributor Author

zpinto commented Jan 26, 2024

This PR is ready to be merged!

Commit Message:
Evacuation is not supported for SEMI_AUTO resources. We are fixing the API to only consider the CURRENTSTATE of FULL_AUTO resources in the check to see if evacuation has is finished.

@xyuanlu xyuanlu merged commit 3a7dbb3 into apache:master Jan 26, 2024
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants