Skip to content

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.

  • Mandatory: I (or my employer/client) have have signed the CA (see https://github.com/rabbitmq/cla)
  • I have read the CONTRIBUTING.md document
  • I have added tests that prove my fix is effective or that my feature works
  • All tests pass locally with my changes
  • If relevant, I have added necessary documentation to https://github.com/rabbitmq/rabbitmq-website
  • If relevant, I have added this change to the first version(s) in release-notes that I expect to introduce it

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.

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