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

Refactor rabbit_channel from gen_server2 to gen_server #12209

Draft
wants to merge 4 commits into
base: main
Choose a base branch
from

Conversation

mkuratczyk
Copy link
Contributor

Refactor rabbit_channel from gen_server2 to gen_server

Tests with 100B messages:
msg-size-100B

Tests with 1kB messages:
msg-size-1kb

Tests with 5kB messages:
msg-size-5kb

Tests with 20kB messages:
msg-size-20kb

Full test results:
https://grafana.lionhead.rabbitmq.com/goto/cxGVTkeIR?orgId=1

@mkuratczyk mkuratczyk marked this pull request as draft September 4, 2024 18:46
@michaelklishin
Copy link
Member

michaelklishin commented Sep 5, 2024

@mkuratczyk the AWS peer discovery failure almost certainly has nothing to do with these changes. Even after clearing certain resources the suite sometimes leaks, it (sometimes) continues failing on topic branches only to succeed in main, v4.0.x, etc after merging :/

@michaelklishin
Copy link
Member

The AWS test suite is green after one more retry.

@mkuratczyk mkuratczyk marked this pull request as ready for review September 5, 2024 06:10
Copy link
Contributor

@lhoguin lhoguin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The changes are incomplete. The following callbacks specific to gen_server2 are still in the module but unused:

  • handle_pre_hibernate/1
  • handle_post_hibernate/1
  • prioritise_call/4
  • prioritise_cast/3
  • prioritise_info/3
  • format_message_queue/2

Priorities can likely just be removed. Format can likely be converted to format_status/1. Pre and post hibernate are a little more complex in that they do seemingly useful things so we need to make sure those things are still done, or remove them if they're not useful.

@mkuratczyk mkuratczyk marked this pull request as draft September 5, 2024 07:56
`format_status` replaces the queue of pending messages,
which is sometimes very long, with just the number of messages
pending.
@mkuratczyk mkuratczyk force-pushed the rabbit_channel-gs2-to-gen_server branch from c769aaf to 5a86545 Compare September 5, 2024 09:47
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.

3 participants