@@ -928,7 +928,7 @@ void TConfigsDispatcher::Handle(TEvConsole::TEvConfigSubscriptionNotification::T
928928 if (subscription->Yaml && YamlConfigEnabled) {
929929 ReplaceConfigItems (YamlProtoConfig, trunc, FilterKinds (subscription->Kinds ), BaseConfig);
930930 } else {
931- Y_FOR_EACH_BIT (kind, kinds) {
931+ Y_FOR_EACH_BIT (kind, FilterKinds ( kinds) ) {
932932 if (affectedKinds.contains (kind)) {
933933 hasAffectedKinds = true ;
934934 }
@@ -942,15 +942,15 @@ void TConfigsDispatcher::Handle(TEvConsole::TEvConfigSubscriptionNotification::T
942942 ReplaceConfigItems (ev->Get ()->Record .GetConfig (), trunc, FilterKinds (kinds), BaseConfig);
943943 }
944944
945- if (hasAffectedKinds || !CompareConfigs (subscription->CurrentConfig .Config , trunc) || CurrentStateFunc () == &TThis::StateInit) {
945+ if (hasAffectedKinds || !CompareConfigs (subscription->CurrentConfig .Config , trunc, FilterKinds (kinds) ) || CurrentStateFunc () == &TThis::StateInit) {
946946 subscription->UpdateInProcess = MakeHolder<TEvConsole::TEvConfigNotificationRequest>();
947947 subscription->UpdateInProcess ->Record .MutableConfig ()->CopyFrom (trunc);
948948 subscription->UpdateInProcess ->Record .SetLocal (true );
949- Y_FOR_EACH_BIT (kind, kinds) {
949+ Y_FOR_EACH_BIT (kind, FilterKinds ( kinds) ) {
950950 subscription->UpdateInProcess ->Record .AddItemKinds (kind);
951951 }
952952 subscription->UpdateInProcessCookie = ++NextRequestCookie;
953- subscription->UpdateInProcessConfigVersion = FilterVersion (ev->Get ()->Record .GetConfig ().GetVersion (), kinds);
953+ subscription->UpdateInProcessConfigVersion = FilterVersion (ev->Get ()->Record .GetConfig ().GetVersion (), FilterKinds ( kinds) );
954954
955955 if (YamlConfigEnabled) {
956956 UpdateYamlVersion (subscription);
@@ -1047,6 +1047,12 @@ void TConfigsDispatcher::Handle(TEvConfigsDispatcher::TEvSetConfigSubscriptionRe
10471047 " SetConfigSubscriptionRequest handler" );
10481048 Y_UNUSED (nonYamlKinds);
10491049 auto kinds = KindsToBitMap (ev->Get ()->ConfigItemKinds );
1050+
1051+ auto truncKinds = FilterKinds (kinds);
1052+ if (truncKinds.Empty () && !kinds.Empty ()) {
1053+ return ;
1054+ }
1055+
10501056 auto subscriberActor = ev->Get ()->Subscriber ? ev->Get ()->Subscriber : ev->Sender ;
10511057
10521058 auto subscription = FindSubscription (kinds);
0 commit comments