@@ -2754,12 +2754,14 @@ ensure_source(#'v1_0.source'{
27542754 } = Source0 ,
27552755 SndSettled , LinkName , Vhost , User , ContainerId ,
27562756 ConnPid , PermCache0 , TopicPermCache ) ->
2757+ FFEnabled = rabbit_volatile_queue :ff_enabled (),
27572758 case maps :from_keys (Caps , true ) of
27582759 #{{symbol , ? CAP_RABBITMQ_VOLATILE_QUEUE } := true }
2759- when Durable =:= ? V_1_0_TERMINUS_DURABILITY_NONE andalso
2760+ when ( Durable =:= undefined orelse Durable =:= ? V_1_0_TERMINUS_DURABILITY_NONE ) andalso
27602761 ExpiryPolicy =:= ? V_1_0_TERMINUS_EXPIRY_POLICY_LINK_DETACH andalso
27612762 (Timeout =:= undefined orelse Timeout =:= {uint , 0 }) andalso
2762- SndSettled ->
2763+ SndSettled andalso
2764+ FFEnabled ->
27632765 % % create volatile queue
27642766 QNameBin = rabbit_volatile_queue :generate_name (self ()),
27652767 Source = # 'v1_0.source' {
@@ -2798,7 +2800,7 @@ ensure_source(#'v1_0.source'{
27982800 exit_not_implemented (" Dynamic source not supported: ~tp " , [Source0 ])
27992801 end ;
28002802ensure_source (Source = # 'v1_0.source' {dynamic = true }, _ , _ , _ , _ , _ , _ , _ , _ ) ->
2801- exit_not_implemented (" Dynamic source not supported: ~p " , [Source ]);
2803+ exit_not_implemented (" Dynamic source not supported: ~tp " , [Source ]);
28022804ensure_source (Source0 = # 'v1_0.source' {address = Address ,
28032805 durable = Durable },
28042806 _SndSettle , _LinkName , Vhost , User , _ContainerId ,
0 commit comments