Skip to content

Comments

Fix shovel with AMQP 1.0 dest always being in flow state#15163

Draft
gomoripeti wants to merge 1 commit intorabbitmq:mainfrom
cloudamqp:amqp_10_shovel_flow
Draft

Fix shovel with AMQP 1.0 dest always being in flow state#15163
gomoripeti wants to merge 1 commit intorabbitmq:mainfrom
cloudamqp:amqp_10_shovel_flow

Conversation

@gomoripeti
Copy link
Contributor

Proposed Changes

The link_state field should be under State.dest.current and the pending field should be under State.dest. Field being expected or put in the wrong place caused multiple function clauses not matching. Because of this the credited link event was never processed. But also a link_state=attached did not prevent messages to be forwarded. So the shovel accidentally worked fine.

I only tested manually, and did not even test when the shovel is really blocked and should cumulate some pending messages. Test cases need to be added, hence opening a draft PR.

Types of Changes

What types of changes does your code introduce to this project?
Put an x in the boxes that apply

  • Bug fix (non-breaking change which fixes issue #NNNN)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause an observable behavior change in existing systems)
  • Documentation improvements (corrections, new content, etc)
  • Cosmetic change (whitespace, formatting, etc)
  • Build system and/or CI

Checklist

Put an x in the boxes that apply.
You can also fill these out after creating the PR.
This is simply a reminder of what we are going to look for before merging your code.

Further Comments

If this is a relatively large or complex change, kick off the discussion by explaining why you chose the solution
you did and what alternatives you considered, etc.

The link_state field should be under State.dest.current and the
pending field should be under State.dest. Because of this the credited
link event was never processed. But also a link_state=attached did not
prevent messages to be forwarded. So the shovel accidentally worked
fine.
@michaelklishin
Copy link
Collaborator

The analysis looks correct to me. Thank you, @gomoripeti.

@michaelklishin
Copy link
Collaborator

@gomoripeti do you plan to finish thsi PR? It's still in draft state with quite a few CI jobs that failed.

@gomoripeti
Copy link
Contributor Author

unfortunately I wont be able to work on this in the next couple of weeks

@michaelklishin
Copy link
Collaborator

That's fine, so this PR indeed should be a draft for now.

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