@@ -905,6 +905,25 @@ query_node(Config, NodeConfig) ->
905905 rabbit_ct_helpers :set_config (NodeConfig , Vars ).
906906
907907uses_expected_metadata_store (Config , NodeConfig ) ->
908+ case ? config (use_secondary_umbrella , NodeConfig ) of
909+ false ->
910+ does_use_expected_metadata_store (Config , NodeConfig );
911+ true ->
912+ ExpectedMetadataStore = rabbit_ct_helpers :get_config (
913+ Config , metadata_store ),
914+ case does_use_expected_metadata_store (Config , NodeConfig ) of
915+ {MetadataStore , MetadataStore } = Ret ->
916+ Ret ;
917+ _ when ExpectedMetadataStore =:= khepri ->
918+ Nodename = ? config (nodename , NodeConfig ),
919+ _ = rpc (Config , Nodename , rabbit_feature_flags , enable , [khepri_db ]),
920+ does_use_expected_metadata_store (Config , NodeConfig );
921+ Ret ->
922+ Ret
923+ end
924+ end .
925+
926+ does_use_expected_metadata_store (Config , NodeConfig ) ->
908927 % % We want to verify if the active metadata store matches the expected one.
909928 Nodename = ? config (nodename , NodeConfig ),
910929 ExpectedMetadataStore = rabbit_ct_helpers :get_config (
@@ -916,7 +935,7 @@ uses_expected_metadata_store(Config, NodeConfig) ->
916935 end ,
917936 ct :pal (
918937 " Metadata store on ~s : expected=~s , used=~s " ,
919- [Nodename , UsedMetadataStore , ExpectedMetadataStore ]),
938+ [Nodename , ExpectedMetadataStore , UsedMetadataStore ]),
920939 {ExpectedMetadataStore , UsedMetadataStore }.
921940
922941maybe_cluster_nodes (Config ) ->
@@ -1088,14 +1107,6 @@ configure_metadata_store(Config) ->
10881107 % % However, RabbitMQ 4.0.x and older don't support it. See the
10891108 % % `uses_expected_metadata_store/2' check to see how Khepri is enabled in
10901109 % % this case.
1091- % %
1092- % % Note that this setting will be ignored by the secondary umbrella because
1093- % % we set `$RABBITMQ_FEATURE_FLAGS' explisitly. In this case, we handle the
1094- % % `khepri_db' feature flag when we compute the value of that variable.
1095- % %
1096- % % TODO: When we start to do mixed-version testing against 4.1.x as the
1097- % % secondary umbrella, we will need to stop setting
1098- % % `$RABBITMQ_FEATURE_FLAGS'.
10991110 case MetadataStore of
11001111 khepri ->
11011112 ct :log (" Enabling Khepri metadata store" ),
0 commit comments