Skip to content

Conversation

@dumbbell
Copy link
Collaborator

@dumbbell dumbbell commented Jan 15, 2025

Why

In order to make khepri_db the default in the future, the handling of $RABBITMQ_FEATURE_FLAGS had to be adapted to be able to disable Khepri instead.

Unfortunately I broke the behavior with stable feature flags that are only available in the primary umbrella. In this case, they were automatically enabled and thus, clustering with an old umbrella that did not have these feature flags failed with incompatible_feature_flags.

How

The solution is to always use an absolute list of feature flags, not the new relative list.

V2: Allow a testsuite to skip the configuration of the metadata store. This is needed for the feature_flags_SUITE testsuite because it tests the default behavior and the configuration of the metadata store changes that behavior. While here, fix a ct log message where variables were swapped compared to the format strieg expectation.

V3: Enable rabbitmq_4.0.0 feature flag in rabbit_mgmt_http_SUITE. This testsuite apparently requires it and if it's not enabled, it fails.

[Why]
In order to make `khepri_db` the default in the future, the handling of
`$RABBITMQ_FEATURE_FLAGS` had to be adapted to be able to *disable*
Khepri instead.

Unfortunately I broke the behavior with stable feature flags that are
only available in the primary umbrella. In this case, they were
automatically enabled and thus, clustering with an old umbrella that did
not have these feature flags failed with `incompatible_feature_flags`.

[How]
The solution is to always use an absolute list of feature flags, not the
new relative list.

V2: Allow a testsuite to skip the configuration of the metadata store.
    This is needed for the feature_flags_SUITE testsuite because it
    tests the default behavior and the configuration of the metadata
    store changes that behavior.

    While here, fix a ct log message where variables were swapped
    compared to the format strieg expectation.

V3: Enable `rabbitmq_4.0.0` feature flag in rabbit_mgmt_http_SUITE. This
    testsuite apparently requires it and if it's not enabled, it fails.
@dumbbell dumbbell force-pushed the fix-how-RABBITMQ_FEATURE_FLAGS-is-set-in-tests branch from 489ace3 to 57ed962 Compare January 15, 2025 19:43
@dumbbell dumbbell marked this pull request as ready for review January 15, 2025 20:25
@dumbbell dumbbell merged commit 5bc7803 into main Jan 15, 2025
272 checks passed
@dumbbell dumbbell deleted the fix-how-RABBITMQ_FEATURE_FLAGS-is-set-in-tests branch January 15, 2025 22:32
@dumbbell dumbbell self-assigned this Feb 20, 2025
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