Skip to content

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

Merged
Technoboy- merged 1 commit into
apache:branch-2.10from
Demogorgon314:Demogorgon314/cherry-pick-20822
Aug 8, 2023
Merged

[branch-2.10][fix][broker] Avoid infinite bundle unloading (#20822)#20877
Technoboy- merged 1 commit into
apache:branch-2.10from
Demogorgon314:Demogorgon314/cherry-pick-20822

Conversation

@Demogorgon314

Copy link
Copy Markdown
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
Copy Markdown
Member Author

@BewareMyPower Do you know why the CPP test failed?

@BewareMyPower

Copy link
Copy Markdown
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
Copy Markdown
Contributor

I removed this workflow: b0e2c0a

@Technoboy-
Technoboy- merged commit 31d59cf into apache:branch-2.10 Aug 8, 2023
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