@@ -2023,16 +2023,17 @@ handle_queue_event({queue_event, QName, Evt},
20232023 State = handle_queue_actions (Actions , State1 ),
20242024 {ok , State };
20252025 {eol , Actions } ->
2026- try
2027- State1 = handle_queue_actions (Actions ++ [{queue_down , QName }], State0 ),
2028- {ConfirmPktIds , U } = rabbit_mqtt_confirms :remove_queue (QName , U0 ),
2029- QStates = rabbit_queue_type :remove (QName , QStates0 ),
2030- State = State1 # state {queue_states = QStates ,
2031- unacked_client_pubs = U },
2032- send_puback (ConfirmPktIds , ? RC_SUCCESS , State ),
2033- {ok , State }
2026+ State1 = handle_queue_actions (Actions , State0 ),
2027+ {ConfirmPktIds , U } = rabbit_mqtt_confirms :remove_queue (QName , U0 ),
2028+ QStates = rabbit_queue_type :remove (QName , QStates0 ),
2029+ State = State1 # state {queue_states = QStates ,
2030+ unacked_client_pubs = U },
2031+ send_puback (ConfirmPktIds , ? RC_SUCCESS , State ),
2032+ try handle_queue_down (QName , State ) of
2033+ State2 ->
2034+ {ok , State2 }
20342035 catch throw :consuming_queue_down ->
2035- {error , consuming_queue_down , State0 }
2036+ {error , consuming_queue_down , State }
20362037 end ;
20372038 {protocol_error , _Type , _Reason , _ReasonArgs } = Error ->
20382039 {error , Error , State0 }
0 commit comments