@@ -927,7 +927,7 @@ void TConfigsDispatcher::Handle(TEvConsole::TEvConfigSubscriptionNotification::T
927927 if (subscription->Yaml && YamlConfigEnabled) {
928928 ReplaceConfigItems (YamlProtoConfig, trunc, FilterKinds (subscription->Kinds ), BaseConfig);
929929 } else {
930- Y_FOR_EACH_BIT (kind, kinds) {
930+ Y_FOR_EACH_BIT (kind, FilterKinds ( kinds) ) {
931931 if (affectedKinds.contains (kind)) {
932932 hasAffectedKinds = true ;
933933 }
@@ -941,15 +941,15 @@ void TConfigsDispatcher::Handle(TEvConsole::TEvConfigSubscriptionNotification::T
941941 ReplaceConfigItems (ev->Get ()->Record .GetConfig (), trunc, FilterKinds (kinds), BaseConfig);
942942 }
943943
944- if (hasAffectedKinds || !CompareConfigs (subscription->CurrentConfig .Config , trunc) || CurrentStateFunc () == &TThis::StateInit) {
944+ if (hasAffectedKinds || !CompareConfigs (subscription->CurrentConfig .Config , trunc, FilterKinds (kinds) ) || CurrentStateFunc () == &TThis::StateInit) {
945945 subscription->UpdateInProcess = MakeHolder<TEvConsole::TEvConfigNotificationRequest>();
946946 subscription->UpdateInProcess ->Record .MutableConfig ()->CopyFrom (trunc);
947947 subscription->UpdateInProcess ->Record .SetLocal (true );
948- Y_FOR_EACH_BIT (kind, kinds) {
948+ Y_FOR_EACH_BIT (kind, FilterKinds ( kinds) ) {
949949 subscription->UpdateInProcess ->Record .AddItemKinds (kind);
950950 }
951951 subscription->UpdateInProcessCookie = ++NextRequestCookie;
952- subscription->UpdateInProcessConfigVersion = FilterVersion (ev->Get ()->Record .GetConfig ().GetVersion (), kinds);
952+ subscription->UpdateInProcessConfigVersion = FilterVersion (ev->Get ()->Record .GetConfig ().GetVersion (), FilterKinds ( kinds) );
953953
954954 if (YamlConfigEnabled) {
955955 UpdateYamlVersion (subscription);
@@ -1046,6 +1046,12 @@ void TConfigsDispatcher::Handle(TEvConfigsDispatcher::TEvSetConfigSubscriptionRe
10461046 " SetConfigSubscriptionRequest handler" );
10471047 Y_UNUSED (nonYamlKinds);
10481048 auto kinds = KindsToBitMap (ev->Get ()->ConfigItemKinds );
1049+
1050+ auto truncKinds = FilterKinds (kinds);
1051+ if (truncKinds.Empty () && !kinds.Empty ()) {
1052+ return ;
1053+ }
1054+
10491055 auto subscriberActor = ev->Get ()->Subscriber ? ev->Get ()->Subscriber : ev->Sender ;
10501056
10511057 auto subscription = FindSubscription (kinds);
0 commit comments