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

rabbitmq_ct_helpers: Change how Mnesia/Khepri is selected #12737

Draft
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

dumbbell
Copy link
Member

Why

Once khepr_db is enabled by default, we need another way to disable it to select Mnesia instead.

How

We use the new relative forced feature flags mechanism to indicate if we want to explicitly enable or disable khepri_db. This way, we don't touch other stable feature flags and only mess with Khepri.

However, this mechanism is not supported by RabbitMQ 4.0.x and older. They will ignore the setting. Therefore, to make this work in mixed-version testing, after a node has been started, we try to enable khepri_db if we detect that it doesn't support this mechanism.

At the end, we compare the effective metadata store to the expected one. If they don't match, we skip the test.

While here, change rjms_topic_selector_SUITE to only choose Khepri without specifying any feature flags.

@dumbbell dumbbell self-assigned this Nov 15, 2024
@dumbbell dumbbell force-pushed the improve-metadata-store-selection-in-rabbitmq_ct_helpers branch from 84d8b13 to d5e1cad Compare November 15, 2024 15:16
[Why]
Once `khepr_db` is enabled by default, we need another way to disable it
to select Mnesia instead.

[How]
We use the new relative forced feature flags mechanism to indicate if we
want to explicitly enable or disable `khepri_db`. This way, we don't
touch other stable feature flags and only mess with Khepri.

However, this mechanism is not supported by RabbitMQ 4.0.x and older.
They will ignore the setting. Therefore, to make this work in
mixed-version testing, after a node has been started, we try to enable
`khepri_db` if we detect that it doesn't support this mechanism.

At the end, we compare the effective metadata store to the expected one.
If they don't match, we skip the test.

While here, change `rjms_topic_selector_SUITE` to only choose Khepri
without specifying any feature flags.
@dumbbell dumbbell force-pushed the improve-metadata-store-selection-in-rabbitmq_ct_helpers branch from d5e1cad to 282d9e2 Compare November 15, 2024 16:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Development

Successfully merging this pull request may close these issues.

1 participant