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

[branch-2.10][fix][broker] Avoid infinite bundle unloading (#20822) #20877

Merged

Conversation

Demogorgon314
Copy link
Member

(cherry picked from commit 3f63768)

Motivation

The bundle ownership assignment logic doesn't know the previous unloaded broker when unloading happens. It might assign the bundle to the same broker. In this case, it might cause an infinite bundle unloading loop.

To resolve this issue, we can check the destination broker when doing the doLoadShedding stage. When the destination broker is the same as the current owner broker, we can skip this unload, and if it is different, we set the new owner in this stage.

Modifications

  • Transfer the bundle to the new owner when needed to unload.

Verifying this change

See the ModularLoadManagerImplTest#testLoadShedding unit test.

Documentation

  • doc
  • doc-required
  • doc-not-needed
  • doc-complete

@Demogorgon314 Demogorgon314 self-assigned this Jul 26, 2023
@github-actions github-actions bot added the doc-not-needed Your PR changes do not impact docs label Jul 26, 2023
@Demogorgon314
Copy link
Member Author

@BewareMyPower Do you know why the CPP test failed?

@BewareMyPower
Copy link
Contributor

Could we just ignore this test?

  File "/usr/local/lib/python2.7/dist-packages/bookkeeper/common/protobuf_helpers.py", line 18, in <module>
    from collections.abc import Mapping
ImportError: No module named abc

The error seems to be related to the bookkeeper-client dependency from the Python function. I think we can ignore it.

@BewareMyPower
Copy link
Contributor

I removed this workflow: b0e2c0a

@Technoboy- Technoboy- merged commit 31d59cf into apache:branch-2.10 Aug 8, 2023
28 of 29 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
doc-not-needed Your PR changes do not impact docs
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants