@@ -559,6 +559,11 @@ pub(crate) async fn locations_changed(
559559 . map ( |config| config. clone ( ) . into_location ( instance. id ) )
560560 . collect ( ) ;
561561
562+ error ! (
563+ "Instance {} locations changed: {}" ,
564+ instance. name,
565+ db_locations != core_locations
566+ ) ;
562567 Ok ( db_locations != core_locations)
563568}
564569
@@ -577,15 +582,22 @@ pub(crate) async fn do_update_instance(
577582 instance. url = instance_info. url ;
578583 instance. proxy_url = instance_info. proxy_url ;
579584 instance. username = instance_info. username ;
580- // TODO
581- // // Make sure to update the locations too if we are disabling all traffic
582- // if instance.disable_all_traffic != instance_info.disable_all_traffic
583- // && instance_info.disable_all_traffic
584- // {
585- // debug!("Disabling all traffic for all locations of instance {instance}");
586- // Location::disable_all_traffic_for_all(transaction.as_mut(), instance.id).await?;
587- // debug!("Disabled all traffic for all locations of instance {instance}");
588- // }
585+ // Make sure to update the locations too if we are disabling all traffic
586+ let policy = instance_info. client_traffic_policy . into ( ) ;
587+ if instance. client_traffic_policy != policy && policy == ClientTrafficPolicy :: DisableAllTraffic
588+ {
589+ debug ! ( "Disabling all traffic for all locations of instance {instance}" ) ;
590+ Location :: disable_all_traffic_for_all ( transaction. as_mut ( ) , instance. id ) . await ?;
591+ debug ! ( "Disabled all traffic for all locations of instance {instance}" ) ;
592+ }
593+ error ! (
594+ "## Updating instance {}({:?}) : {:?} -> {:?}({:?})" ,
595+ instance. name,
596+ instance. client_traffic_policy,
597+ instance. client_traffic_policy,
598+ instance_info. client_traffic_policy,
599+ ClientTrafficPolicy :: from( instance_info. client_traffic_policy) ,
600+ ) ;
589601 instance. client_traffic_policy = instance_info. client_traffic_policy . into ( ) ;
590602 instance. openid_display_name = instance_info. openid_display_name ;
591603 instance. uuid = instance_info. id ;
0 commit comments