aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorgvit <gvit@ydb.tech>2023-11-13 12:51:12 +0300
committergvit <gvit@ydb.tech>2023-11-13 13:33:01 +0300
commitb598927a0221c88565b4d51982e3364e2b47ed66 (patch)
tree4fc9aa0dd7217a92a907a19649b8a775f726780f
parent8f71613ae4af935f07bce837ef1f9bdd96aca6c1 (diff)
downloadydb-b598927a0221c88565b4d51982e3364e2b47ed66.tar.gz
directly include things from appdata.h where we use them KIKIMR-19910
-rw-r--r--ydb/core/base/appdata.h8
-rw-r--r--ydb/core/base/board_lookup.cpp1
-rw-r--r--ydb/core/base/board_publish.cpp2
-rw-r--r--ydb/core/base/cputime.h8
-rw-r--r--ydb/core/base/feature_flags.h2
-rw-r--r--ydb/core/base/statestorage_guardian.cpp1
-rw-r--r--ydb/core/blobstorage/dsproxy/dsproxy_request.cpp2
-rw-r--r--ydb/core/blobstorage/dsproxy/log_acc.h1
-rw-r--r--ydb/core/blobstorage/groupinfo/blobstorage_groupinfo.h1
-rw-r--r--ydb/core/blobstorage/nodewarden/distconf_persistent_storage.cpp2
-rw-r--r--ydb/core/blobstorage/nodewarden/node_warden_group_resolver.cpp2
-rw-r--r--ydb/core/blobstorage/nodewarden/node_warden_impl.cpp2
-rw-r--r--ydb/core/blobstorage/pdisk/blobstorage_pdisk_actorsystem_creator.h8
-rw-r--r--ydb/core/blobstorage/pdisk/blobstorage_pdisk_driveestimator.h6
-rw-r--r--ydb/core/blobstorage/pdisk/blobstorage_pdisk_impl.cpp1
-rw-r--r--ydb/core/blobstorage/pdisk/blobstorage_pdisk_impl.h2
-rw-r--r--ydb/core/blobstorage/pdisk/blobstorage_pdisk_impl_http.cpp1
-rw-r--r--ydb/core/blobstorage/pdisk/defs.h2
-rw-r--r--ydb/core/blobstorage/vdisk/anubis_osiris/blobstorage_anubisrunner.cpp1
-rw-r--r--ydb/core/blobstorage/vdisk/common/blobstorage_dblogcutter.h2
-rw-r--r--ydb/core/blobstorage/vdisk/common/blobstorage_vdisk_guids.cpp1
-rw-r--r--ydb/core/blobstorage/vdisk/common/vdisk_config.h1
-rw-r--r--ydb/core/blobstorage/vdisk/common/vdisk_events.h1
-rw-r--r--ydb/core/blobstorage/vdisk/handoff/handoff_basic.h1
-rw-r--r--ydb/core/blobstorage/vdisk/huge/blobstorage_hullhugerecovery.cpp2
-rw-r--r--ydb/core/blobstorage/vdisk/hullop/blobstorage_hullcompact.h1
-rw-r--r--ydb/core/blobstorage/vdisk/localrecovery/localrecovery_defs.cpp2
-rw-r--r--ydb/core/blobstorage/vdisk/localrecovery/localrecovery_public.cpp1
-rw-r--r--ydb/core/blobstorage/vdisk/skeleton/blobstorage_skeleton.cpp1
-rw-r--r--ydb/core/blobstorage/vdisk/syncer/guid_firstrun.cpp1
-rw-r--r--ydb/core/blobstorage/vdisk/syncer/syncer_job_actor.cpp1
-rw-r--r--ydb/core/client/server/grpc_proxy_status.cpp1
-rw-r--r--ydb/core/client/server/msgbus_server_node_registration.cpp2
-rw-r--r--ydb/core/client/server/msgbus_server_sqs.cpp1
-rw-r--r--ydb/core/cms/cluster_info.cpp1
-rw-r--r--ydb/core/cms/cms.cpp2
-rw-r--r--ydb/core/cms/console/config_helpers.cpp1
-rw-r--r--ydb/core/cms/console/console.cpp3
-rw-r--r--ydb/core/cms/console/console_configs_manager.cpp1
-rw-r--r--ydb/core/cms/console/console_configs_subscriber.cpp1
-rw-r--r--ydb/core/cms/info_collector.cpp1
-rw-r--r--ydb/core/cms/sentinel.cpp1
-rw-r--r--ydb/core/cms/walle_api_handler.cpp1
-rw-r--r--ydb/core/control/immediate_control_board_actor.cpp1
-rw-r--r--ydb/core/discovery/discovery.cpp1
-rw-r--r--ydb/core/driver_lib/run/kikimr_services_initializers.cpp1
-rw-r--r--ydb/core/driver_lib/run/run.cpp8
-rw-r--r--ydb/core/grpc_services/base/base.h4
-rw-r--r--ydb/core/grpc_services/counters/counters.cpp1
-rw-r--r--ydb/core/grpc_services/db_metadata_cache.h2
-rw-r--r--ydb/core/grpc_services/grpc_endpoint_publish_actor.cpp1
-rw-r--r--ydb/core/grpc_services/grpc_request_check_actor.h5
-rw-r--r--ydb/core/grpc_services/grpc_request_proxy.cpp18
-rw-r--r--ydb/core/grpc_services/grpc_request_proxy_simple.cpp12
-rw-r--r--ydb/core/grpc_services/query/rpc_execute_query.cpp2
-rw-r--r--ydb/core/grpc_services/rpc_maintenance.cpp1
-rw-r--r--ydb/core/grpc_services/rpc_node_registration.cpp2
-rw-r--r--ydb/core/grpc_services/rpc_stream_execute_scan_query.cpp2
-rw-r--r--ydb/core/grpc_services/rpc_stream_execute_yql_script.cpp3
-rw-r--r--ydb/core/health_check/health_check.cpp1
-rw-r--r--ydb/core/http_proxy/auth_factory.cpp1
-rw-r--r--ydb/core/keyvalue/keyvalue_intermediate.cpp1
-rw-r--r--ydb/core/keyvalue/keyvalue_state.h1
-rw-r--r--ydb/core/kqp/common/kqp_resolve.h2
-rw-r--r--ydb/core/kqp/compute_actor/kqp_pure_compute_actor.cpp2
-rw-r--r--ydb/core/kqp/compute_actor/kqp_scan_compute_actor.cpp1
-rw-r--r--ydb/core/kqp/counters/kqp_counters.cpp1
-rw-r--r--ydb/core/kqp/executer_actor/kqp_executer_impl.h1
-rw-r--r--ydb/core/kqp/executer_actor/kqp_table_resolver.cpp2
-rw-r--r--ydb/core/kqp/executer_actor/kqp_tasks_graph.cpp1
-rw-r--r--ydb/core/kqp/federated_query/kqp_federated_query_helpers.cpp5
-rw-r--r--ydb/core/kqp/gateway/behaviour/external_data_source/manager.cpp1
-rw-r--r--ydb/core/kqp/gateway/kqp_gateway.h1
-rw-r--r--ydb/core/kqp/gateway/kqp_metadata_loader.h2
-rw-r--r--ydb/core/kqp/node_service/kqp_node_service.cpp1
-rw-r--r--ydb/core/kqp/opt/logical/kqp_opt_log_ranges_predext.cpp1
-rw-r--r--ydb/core/kqp/provider/yql_kikimr_datasource.cpp1
-rw-r--r--ydb/core/kqp/provider/yql_kikimr_settings.cpp4
-rw-r--r--ydb/core/kqp/provider/yql_kikimr_settings.h8
-rw-r--r--ydb/core/kqp/proxy_service/kqp_proxy_service.cpp1
-rw-r--r--ydb/core/kqp/proxy_service/kqp_proxy_service.h11
-rw-r--r--ydb/core/kqp/query_compiler/kqp_query_compiler.cpp1
-rw-r--r--ydb/core/kqp/query_data/kqp_predictor.cpp6
-rw-r--r--ydb/core/kqp/query_data/kqp_predictor.h23
-rw-r--r--ydb/core/kqp/query_data/kqp_prepared_query.cpp16
-rw-r--r--ydb/core/kqp/query_data/kqp_prepared_query.h29
-rw-r--r--ydb/core/kqp/query_data/kqp_request_predictor.h28
-rw-r--r--ydb/core/kqp/rm_service/kqp_resource_info_exchanger.cpp1
-rw-r--r--ydb/core/kqp/rm_service/kqp_rm_service.cpp2
-rw-r--r--ydb/core/kqp/run_script_actor/kqp_run_script_actor.h4
-rw-r--r--ydb/core/kqp/session_actor/kqp_tx.h1
-rw-r--r--ydb/core/load_test/gen.h1
-rw-r--r--ydb/core/load_test/keyvalue_write.cpp2
-rw-r--r--ydb/core/load_test/kqp.cpp1
-rw-r--r--ydb/core/load_test/memory.cpp2
-rw-r--r--ydb/core/load_test/pdisk_log.cpp3
-rw-r--r--ydb/core/load_test/pdisk_read.cpp1
-rw-r--r--ydb/core/load_test/pdisk_write.cpp2
-rw-r--r--ydb/core/load_test/service_actor.cpp3
-rw-r--r--ydb/core/mind/bscontroller/cmds_storage_pool.cpp2
-rw-r--r--ydb/core/mind/bscontroller/migrate.cpp2
-rw-r--r--ydb/core/mind/bscontroller/monitoring.cpp2
-rw-r--r--ydb/core/mind/bscontroller/sys_view.cpp1
-rw-r--r--ydb/core/mind/dynamic_nameserver.cpp1
-rw-r--r--ydb/core/mind/dynamic_nameserver_mon.cpp2
-rw-r--r--ydb/core/mind/hive/balancer.cpp1
-rw-r--r--ydb/core/mind/hive/hive_impl.cpp2
-rw-r--r--ydb/core/mind/hive/leader_tablet_info.h1
-rw-r--r--ydb/core/mind/hive/storage_pool_info.cpp1
-rw-r--r--ydb/core/mind/hive/tablet_move_info.cpp2
-rw-r--r--ydb/core/mind/lease_holder.cpp1
-rw-r--r--ydb/core/mind/local.cpp1
-rw-r--r--ydb/core/mind/node_broker.cpp2
-rw-r--r--ydb/core/mind/tenant_node_enumeration.cpp1
-rw-r--r--ydb/core/mind/tenant_pool.cpp2
-rw-r--r--ydb/core/mind/tenant_pool.h4
-rw-r--r--ydb/core/mind/tenant_slot_broker.cpp2
-rw-r--r--ydb/core/mind/tenant_slot_broker__load_state.cpp2
-rw-r--r--ydb/core/mon_alloc/monitor.cpp3
-rw-r--r--ydb/core/persqueue/partition_write.cpp1
-rw-r--r--ydb/core/persqueue/pq_impl.cpp1
-rw-r--r--ydb/core/persqueue/read_balancer.cpp3
-rw-r--r--ydb/core/security/ticket_parser_impl.h1
-rw-r--r--ydb/core/sys_view/processor/db_counters.cpp1
-rw-r--r--ydb/core/sys_view/processor/processor_impl.cpp2
-rw-r--r--ydb/core/sys_view/processor/tx_init.cpp1
-rw-r--r--ydb/core/sys_view/processor/tx_init_schema.cpp1
-rw-r--r--ydb/core/sys_view/query_stats/query_stats.cpp1
-rw-r--r--ydb/core/sys_view/service/ext_counters.cpp3
-rw-r--r--ydb/core/sys_view/service/sysview_service.cpp3
-rw-r--r--ydb/core/tablet/bootstrapper.cpp1
-rw-r--r--ydb/core/tablet/node_tablet_monitor.cpp1
-rw-r--r--ydb/core/tablet/node_whiteboard.cpp1
-rw-r--r--ydb/core/tablet/resource_broker_impl.h2
-rw-r--r--ydb/core/tablet/tablet_counters_aggregator.cpp2
-rw-r--r--ydb/core/tablet/tablet_monitoring_proxy.cpp1
-rw-r--r--ydb/core/tablet/tablet_pipe_client.cpp3
-rw-r--r--ydb/core/tablet/tablet_resolver.cpp2
-rw-r--r--ydb/core/tablet/tablet_responsiveness_pinger.cpp2
-rw-r--r--ydb/core/tablet/tablet_setup.h1
-rw-r--r--ydb/core/tablet/tablet_sys.cpp1
-rw-r--r--ydb/core/tablet_flat/flat_executor.cpp1
-rw-r--r--ydb/core/tablet_flat/flat_executor_bootlogic.cpp2
-rw-r--r--ydb/core/tx/columnshard/counters/blobs_manager.cpp1
-rw-r--r--ydb/core/tx/columnshard/engines/column_engine_logs.cpp3
-rw-r--r--ydb/core/tx/coordinator/coordinator_impl.cpp3
-rw-r--r--ydb/core/tx/coordinator/coordinator_state.cpp2
-rw-r--r--ydb/core/tx/long_tx_service/long_tx_service_impl.cpp2
-rw-r--r--ydb/core/tx/mediator/mediator_impl.cpp1
-rw-r--r--ydb/core/tx/replication/service/service.cpp1
-rw-r--r--ydb/core/tx/scheme_board/cache.cpp1
-rw-r--r--ydb/core/tx/scheme_board/monitoring.cpp2
-rw-r--r--ydb/core/tx/scheme_board/subscriber.cpp1
-rw-r--r--ydb/core/tx/schemeshard/operation_queue_timer.h1
-rw-r--r--ydb/core/tx/schemeshard/schemeshard_impl.h1
-rw-r--r--ydb/core/tx/schemeshard/schemeshard_info_types.cpp2
-rw-r--r--ydb/core/tx/schemeshard/schemeshard_info_types.h1
-rw-r--r--ydb/core/tx/time_cast/time_cast.cpp1
-rw-r--r--ydb/core/tx/tx_proxy/datareq.cpp1
-rw-r--r--ydb/core/tx/tx_proxy/describe.cpp1
-rw-r--r--ydb/core/tx/tx_proxy/read_table_impl.cpp1
-rw-r--r--ydb/core/tx/tx_proxy/upload_rows_common_impl.h1
-rw-r--r--ydb/core/util/failure_injection.cpp1
-rw-r--r--ydb/core/util/memory_tracker.cpp1
-rw-r--r--ydb/core/util/single_thread_ic_mock.cpp6
-rw-r--r--ydb/core/util/testactorsys.cpp7
-rw-r--r--ydb/core/util/testactorsys.h3
-rw-r--r--ydb/core/viewer/counters_hosts.h1
-rw-r--r--ydb/core/viewer/wb_req.h3
-rw-r--r--ydb/core/ydb_convert/column_families.h1
-rw-r--r--ydb/core/ydb_convert/table_profiles.cpp2
-rw-r--r--ydb/core/ymq/actor/auth_factory.cpp2
-rw-r--r--ydb/core/ymq/actor/fifo_cleanup.cpp1
-rw-r--r--ydb/core/ymq/actor/purge.cpp3
-rw-r--r--ydb/core/ymq/actor/queue_schema.cpp2
-rw-r--r--ydb/core/ymq/actor/retention.cpp1
-rw-r--r--ydb/library/persqueue/topic_parser/topic_parser.cpp1
-rw-r--r--ydb/services/bg_tasks/abstract/task.h1
-rw-r--r--ydb/services/deprecated/persqueue_v0/persqueue.cpp1
-rw-r--r--ydb/services/ext_index/service/executor.h1
-rw-r--r--ydb/services/lib/actors/pq_schema_actor.cpp1
-rw-r--r--ydb/services/metadata/common/timeout.h1
-rw-r--r--ydb/services/metadata/initializer/object.h2
-rw-r--r--ydb/services/persqueue_v1/actors/read_session_actor.ipp1
-rw-r--r--ydb/services/persqueue_v1/actors/update_offsets_in_transaction_actor.cpp2
-rw-r--r--ydb/services/persqueue_v1/actors/write_session_actor.ipp1
186 files changed, 396 insertions, 74 deletions
diff --git a/ydb/core/base/appdata.h b/ydb/core/base/appdata.h
index 6c865cee46..50ae5e71c0 100644
--- a/ydb/core/base/appdata.h
+++ b/ydb/core/base/appdata.h
@@ -33,12 +33,4 @@
namespace NKikimr {
-
-struct TAppConfig : public NKikimrConfig::TAppConfig, public TThrRefBase, TNonCopyable {
- explicit TAppConfig(const NKikimrConfig::TAppConfig& c)
- : NKikimrConfig::TAppConfig(c)
- {}
-};
-
-
} // NKikimr
diff --git a/ydb/core/base/board_lookup.cpp b/ydb/core/base/board_lookup.cpp
index 14d4eae229..d24448b0bb 100644
--- a/ydb/core/base/board_lookup.cpp
+++ b/ydb/core/base/board_lookup.cpp
@@ -5,6 +5,7 @@
#include <ydb/library/services/services.pb.h>
#include <library/cpp/actors/core/interconnect.h>
+#include <library/cpp/random_provider/random_provider.h>
#include <library/cpp/actors/core/actor_bootstrapped.h>
#include <library/cpp/actors/core/log.h>
#include <library/cpp/actors/core/hfunc.h>
diff --git a/ydb/core/base/board_publish.cpp b/ydb/core/base/board_publish.cpp
index c808bb0326..ab0e56870a 100644
--- a/ydb/core/base/board_publish.cpp
+++ b/ydb/core/base/board_publish.cpp
@@ -3,7 +3,7 @@
#include <ydb/core/base/appdata.h>
#include <ydb/library/services/services.pb.h>
#include <library/cpp/actors/core/interconnect.h>
-
+#include <library/cpp/random_provider/random_provider.h>
#include <library/cpp/actors/core/actor_bootstrapped.h>
#include <library/cpp/actors/core/log.h>
#include <library/cpp/actors/core/hfunc.h>
diff --git a/ydb/core/base/cputime.h b/ydb/core/base/cputime.h
index 6661a728fa..48f8be4fdb 100644
--- a/ydb/core/base/cputime.h
+++ b/ydb/core/base/cputime.h
@@ -1,11 +1,10 @@
#pragma once
#include "appdata.h"
+#include "feature_flags.h"
#include <util/system/datetime.h>
-#include <library/cpp/actors/core/actor.h>
-namespace NKikimr {
-namespace NCpuTime {
+namespace NKikimr::NCpuTime {
class TCpuTimer {
ui64 GetCpuTime() const {
@@ -47,5 +46,4 @@ private:
TDuration* Counter;
};
-} // namespace NCpuTime
-} // namespace NKikimr
+} // namespace NKikimr::NCpuTime
diff --git a/ydb/core/base/feature_flags.h b/ydb/core/base/feature_flags.h
index c830a0a340..262939d0fc 100644
--- a/ydb/core/base/feature_flags.h
+++ b/ydb/core/base/feature_flags.h
@@ -2,7 +2,7 @@
#include "defs.h"
-#include <ydb/core/protos/config.pb.h>
+#include <ydb/core/protos/feature_flags.pb.h>
namespace NKikimr {
diff --git a/ydb/core/base/statestorage_guardian.cpp b/ydb/core/base/statestorage_guardian.cpp
index 4ccee3e99c..1aa715b947 100644
--- a/ydb/core/base/statestorage_guardian.cpp
+++ b/ydb/core/base/statestorage_guardian.cpp
@@ -10,6 +10,7 @@
#include <library/cpp/actors/core/actor_bootstrapped.h>
#include <library/cpp/actors/core/hfunc.h>
#include <library/cpp/actors/core/interconnect.h>
+#include <library/cpp/random_provider/random_provider.h>
#include <util/generic/algorithm.h>
#include <util/generic/xrange.h>
diff --git a/ydb/core/blobstorage/dsproxy/dsproxy_request.cpp b/ydb/core/blobstorage/dsproxy/dsproxy_request.cpp
index 38ee68b496..50a016384c 100644
--- a/ydb/core/blobstorage/dsproxy/dsproxy_request.cpp
+++ b/ydb/core/blobstorage/dsproxy/dsproxy_request.cpp
@@ -1,5 +1,7 @@
#include "dsproxy_impl.h"
#include "dsproxy_monactor.h"
+#include <ydb/core/base/feature_flags.h>
+
namespace NKikimr {
diff --git a/ydb/core/blobstorage/dsproxy/log_acc.h b/ydb/core/blobstorage/dsproxy/log_acc.h
index a5938d5fdf..f91d310d54 100644
--- a/ydb/core/blobstorage/dsproxy/log_acc.h
+++ b/ydb/core/blobstorage/dsproxy/log_acc.h
@@ -1,6 +1,7 @@
#pragma once
#include "defs.h"
+#include <library/cpp/random_provider/random_provider.h>
namespace NKikimr {
diff --git a/ydb/core/blobstorage/groupinfo/blobstorage_groupinfo.h b/ydb/core/blobstorage/groupinfo/blobstorage_groupinfo.h
index 0685921fdc..af2534a650 100644
--- a/ydb/core/blobstorage/groupinfo/blobstorage_groupinfo.h
+++ b/ydb/core/blobstorage/groupinfo/blobstorage_groupinfo.h
@@ -3,6 +3,7 @@
#include "defs.h"
#include <ydb/core/blobstorage/base/blobstorage_vdiskid.h>
#include <ydb/core/blobstorage/crypto/crypto.h>
+#include <ydb/core/protos/blobstorage.pb.h>
#include <ydb/core/base/appdata.h>
#include <ydb/core/base/blobstorage.h>
diff --git a/ydb/core/blobstorage/nodewarden/distconf_persistent_storage.cpp b/ydb/core/blobstorage/nodewarden/distconf_persistent_storage.cpp
index 35699774c0..adfabaf272 100644
--- a/ydb/core/blobstorage/nodewarden/distconf_persistent_storage.cpp
+++ b/ydb/core/blobstorage/nodewarden/distconf_persistent_storage.cpp
@@ -1,4 +1,6 @@
#include "distconf.h"
+#include <google/protobuf/util/json_util.h>
+
namespace NKikimr::NStorage {
diff --git a/ydb/core/blobstorage/nodewarden/node_warden_group_resolver.cpp b/ydb/core/blobstorage/nodewarden/node_warden_group_resolver.cpp
index eecad8732c..a9b78c7024 100644
--- a/ydb/core/blobstorage/nodewarden/node_warden_group_resolver.cpp
+++ b/ydb/core/blobstorage/nodewarden/node_warden_group_resolver.cpp
@@ -1,4 +1,6 @@
#include "node_warden_impl.h"
+#include <ydb/core/base/nameservice.h>
+
namespace NKikimr::NStorage {
diff --git a/ydb/core/blobstorage/nodewarden/node_warden_impl.cpp b/ydb/core/blobstorage/nodewarden/node_warden_impl.cpp
index 285cee2ad6..188095bf28 100644
--- a/ydb/core/blobstorage/nodewarden/node_warden_impl.cpp
+++ b/ydb/core/blobstorage/nodewarden/node_warden_impl.cpp
@@ -3,6 +3,8 @@
#include <ydb/core/blobstorage/crypto/secured_block.h>
#include <ydb/core/blobstorage/pdisk/drivedata_serializer.h>
#include <ydb/library/pdisk_io/file_params.h>
+#include <ydb/core/base/nameservice.h>
+
using namespace NKikimr;
using namespace NStorage;
diff --git a/ydb/core/blobstorage/pdisk/blobstorage_pdisk_actorsystem_creator.h b/ydb/core/blobstorage/pdisk/blobstorage_pdisk_actorsystem_creator.h
index 7bf0a8d44e..8a1293dd66 100644
--- a/ydb/core/blobstorage/pdisk/blobstorage_pdisk_actorsystem_creator.h
+++ b/ydb/core/blobstorage/pdisk/blobstorage_pdisk_actorsystem_creator.h
@@ -10,6 +10,14 @@
#include <library/cpp/actors/core/executor_pool_basic.h>
#include <library/cpp/actors/core/mon.h>
#include <library/cpp/actors/core/scheduler_basic.h>
+#include <ydb/core/control/immediate_control_board_impl.h>
+#include <ydb/core/grpc_services/grpc_helper.h>
+#include <ydb/core/protos/config.pb.h>
+#include <ydb/core/base/feature_flags.h>
+#include <ydb/core/base/nameservice.h>
+#include <ydb/core/base/channel_profiles.h>
+#include <ydb/core/base/domain.h>
+
namespace NKikimr {
diff --git a/ydb/core/blobstorage/pdisk/blobstorage_pdisk_driveestimator.h b/ydb/core/blobstorage/pdisk/blobstorage_pdisk_driveestimator.h
index d41c75d6a9..f2e7c7d538 100644
--- a/ydb/core/blobstorage/pdisk/blobstorage_pdisk_driveestimator.h
+++ b/ydb/core/blobstorage/pdisk/blobstorage_pdisk_driveestimator.h
@@ -10,6 +10,12 @@
#include <util/system/hp_timer.h>
#include <library/cpp/deprecated/atomic/atomic.h>
+#include <library/cpp/actors/core/monotonic_provider.h>
+#include <ydb/core/base/resource_profile.h>
+#include <ydb/core/base/feature_flags.h>
+#include <ydb/core/base/nameservice.h>
+#include <ydb/core/base/channel_profiles.h>
+#include <ydb/core/base/domain.h>
#include <util/system/condvar.h>
#include <library/cpp/actors/core/actorsystem.h>
diff --git a/ydb/core/blobstorage/pdisk/blobstorage_pdisk_impl.cpp b/ydb/core/blobstorage/pdisk/blobstorage_pdisk_impl.cpp
index 3e6b402880..69be213e02 100644
--- a/ydb/core/blobstorage/pdisk/blobstorage_pdisk_impl.cpp
+++ b/ydb/core/blobstorage/pdisk/blobstorage_pdisk_impl.cpp
@@ -6,6 +6,7 @@
#include "blobstorage_pdisk_request_id.h"
#include <ydb/core/blobstorage/base/blobstorage_events.h>
+#include <ydb/core/control/immediate_control_board_impl.h>
#include <ydb/core/protos/blobstorage.pb.h>
#include <ydb/core/blobstorage/crypto/secured_block.h>
#include <ydb/library/schlab/schine/job_kind.h>
diff --git a/ydb/core/blobstorage/pdisk/blobstorage_pdisk_impl.h b/ydb/core/blobstorage/pdisk/blobstorage_pdisk_impl.h
index 61a42556ef..e1f937d320 100644
--- a/ydb/core/blobstorage/pdisk/blobstorage_pdisk_impl.h
+++ b/ydb/core/blobstorage/pdisk/blobstorage_pdisk_impl.h
@@ -19,6 +19,8 @@
#include "blobstorage_pdisk_util_countedqueuemanyone.h"
#include "blobstorage_pdisk_writer.h"
+#include <ydb/core/control/immediate_control_board_impl.h>
+#include <ydb/core/base/resource_profile.h>
#include <ydb/core/node_whiteboard/node_whiteboard.h>
#include <ydb/core/blobstorage/lwtrace_probes/blobstorage_probes.h>
#include <ydb/core/control/immediate_control_board_wrapper.h>
diff --git a/ydb/core/blobstorage/pdisk/blobstorage_pdisk_impl_http.cpp b/ydb/core/blobstorage/pdisk/blobstorage_pdisk_impl_http.cpp
index 4d3cc940b4..6e7cdd65ca 100644
--- a/ydb/core/blobstorage/pdisk/blobstorage_pdisk_impl_http.cpp
+++ b/ydb/core/blobstorage/pdisk/blobstorage_pdisk_impl_http.cpp
@@ -1,6 +1,7 @@
#include "blobstorage_pdisk_impl.h"
#include <ydb/core/blobstorage/base/html.h>
+#include <ydb/core/base/feature_flags.h>
#include <library/cpp/monlib/service/pages/templates.h>
diff --git a/ydb/core/blobstorage/pdisk/defs.h b/ydb/core/blobstorage/pdisk/defs.h
index 539ffaf72d..ab22de26e9 100644
--- a/ydb/core/blobstorage/pdisk/defs.h
+++ b/ydb/core/blobstorage/pdisk/defs.h
@@ -7,4 +7,4 @@
#include <library/cpp/actors/core/log.h>
#include <ydb/library/services/services.pb.h>
#include <util/system/sanitizers.h>
-
+#include <library/cpp/actors/core/monotonic_provider.h>
diff --git a/ydb/core/blobstorage/vdisk/anubis_osiris/blobstorage_anubisrunner.cpp b/ydb/core/blobstorage/vdisk/anubis_osiris/blobstorage_anubisrunner.cpp
index 0ad1e965ce..6e3d1e426f 100644
--- a/ydb/core/blobstorage/vdisk/anubis_osiris/blobstorage_anubisrunner.cpp
+++ b/ydb/core/blobstorage/vdisk/anubis_osiris/blobstorage_anubisrunner.cpp
@@ -4,6 +4,7 @@
#include <ydb/core/blobstorage/vdisk/common/vdisk_events.h>
#include <ydb/core/blobstorage/groupinfo/blobstorage_groupinfo_sets.h>
+#include <library/cpp/random_provider/random_provider.h>
#include <library/cpp/monlib/service/pages/templates.h>
#include <library/cpp/actors/core/mon.h>
diff --git a/ydb/core/blobstorage/vdisk/common/blobstorage_dblogcutter.h b/ydb/core/blobstorage/vdisk/common/blobstorage_dblogcutter.h
index 65a29c5853..c582f91a15 100644
--- a/ydb/core/blobstorage/vdisk/common/blobstorage_dblogcutter.h
+++ b/ydb/core/blobstorage/vdisk/common/blobstorage_dblogcutter.h
@@ -5,6 +5,8 @@
#include <ydb/core/base/blobstorage.h>
#include <ydb/core/base/appdata.h>
#include <ydb/core/blobstorage/vdisk/common/vdisk_pdiskctx.h>
+#include <library/cpp/time_provider/time_provider.h>
+
namespace NKikimr {
diff --git a/ydb/core/blobstorage/vdisk/common/blobstorage_vdisk_guids.cpp b/ydb/core/blobstorage/vdisk/common/blobstorage_vdisk_guids.cpp
index 5757a3a68a..e0d9f06371 100644
--- a/ydb/core/blobstorage/vdisk/common/blobstorage_vdisk_guids.cpp
+++ b/ydb/core/blobstorage/vdisk/common/blobstorage_vdisk_guids.cpp
@@ -1,6 +1,7 @@
#include "blobstorage_vdisk_guids.h"
#include <ydb/core/base/appdata.h>
+#include <library/cpp/random_provider/random_provider.h>
namespace NKikimr {
diff --git a/ydb/core/blobstorage/vdisk/common/vdisk_config.h b/ydb/core/blobstorage/vdisk/common/vdisk_config.h
index e38278d33c..f4d64e2de7 100644
--- a/ydb/core/blobstorage/vdisk/common/vdisk_config.h
+++ b/ydb/core/blobstorage/vdisk/common/vdisk_config.h
@@ -5,6 +5,7 @@
#include <ydb/core/base/blobstorage.h>
#include <ydb/core/protos/blobstorage.pb.h>
#include <ydb/core/protos/blobstorage_vdisk_config.pb.h>
+#include <ydb/core/control/immediate_control_board_impl.h>
namespace NKikimr {
diff --git a/ydb/core/blobstorage/vdisk/common/vdisk_events.h b/ydb/core/blobstorage/vdisk/common/vdisk_events.h
index 2b5de0bc70..f33888e534 100644
--- a/ydb/core/blobstorage/vdisk/common/vdisk_events.h
+++ b/ydb/core/blobstorage/vdisk/common/vdisk_events.h
@@ -21,6 +21,7 @@
#include <ydb/core/util/pb.h>
+#include <library/cpp/time_provider/time_provider.h>
#include <library/cpp/string_utils/base64/base64.h>
#include <util/digest/multi.h>
diff --git a/ydb/core/blobstorage/vdisk/handoff/handoff_basic.h b/ydb/core/blobstorage/vdisk/handoff/handoff_basic.h
index 0a8380a8fc..ddae3945c2 100644
--- a/ydb/core/blobstorage/vdisk/handoff/handoff_basic.h
+++ b/ydb/core/blobstorage/vdisk/handoff/handoff_basic.h
@@ -4,6 +4,7 @@
#include <ydb/core/blobstorage/vdisk/common/vdisk_syncneighbors.h>
#include <ydb/core/blobstorage/base/utility.h>
#include <ydb/core/base/appdata.h>
+#include <library/cpp/random_provider/random_provider.h>
namespace NKikimr {
diff --git a/ydb/core/blobstorage/vdisk/huge/blobstorage_hullhugerecovery.cpp b/ydb/core/blobstorage/vdisk/huge/blobstorage_hullhugerecovery.cpp
index 2e401916dd..3e054638b5 100644
--- a/ydb/core/blobstorage/vdisk/huge/blobstorage_hullhugerecovery.cpp
+++ b/ydb/core/blobstorage/vdisk/huge/blobstorage_hullhugerecovery.cpp
@@ -1,5 +1,7 @@
#include "blobstorage_hullhugerecovery.h"
#include "blobstorage_hullhugeheap.h"
+#include <library/cpp/random_provider/random_provider.h>
+
using namespace NKikimrServices;
diff --git a/ydb/core/blobstorage/vdisk/hullop/blobstorage_hullcompact.h b/ydb/core/blobstorage/vdisk/hullop/blobstorage_hullcompact.h
index 8ab580a316..3bdec02cf9 100644
--- a/ydb/core/blobstorage/vdisk/hullop/blobstorage_hullcompact.h
+++ b/ydb/core/blobstorage/vdisk/hullop/blobstorage_hullcompact.h
@@ -4,6 +4,7 @@
#include "blobstorage_hullcompactworker.h"
#include <ydb/core/blobstorage/vdisk/hullop/blobstorage_hullload.h>
#include <ydb/core/blobstorage/vdisk/huge/blobstorage_hullhuge.h>
+#include <library/cpp/random_provider/random_provider.h>
#include <util/generic/queue.h>
diff --git a/ydb/core/blobstorage/vdisk/localrecovery/localrecovery_defs.cpp b/ydb/core/blobstorage/vdisk/localrecovery/localrecovery_defs.cpp
index a80c47d078..befab60296 100644
--- a/ydb/core/blobstorage/vdisk/localrecovery/localrecovery_defs.cpp
+++ b/ydb/core/blobstorage/vdisk/localrecovery/localrecovery_defs.cpp
@@ -2,6 +2,8 @@
#include <ydb/core/blobstorage/vdisk/common/vdisk_mon.h>
#include <ydb/core/blobstorage/pdisk/blobstorage_pdisk_internal_interface.h>
#include <library/cpp/monlib/service/pages/templates.h>
+#include <library/cpp/time_provider/time_provider.h>
+
namespace NKikimr {
diff --git a/ydb/core/blobstorage/vdisk/localrecovery/localrecovery_public.cpp b/ydb/core/blobstorage/vdisk/localrecovery/localrecovery_public.cpp
index 28e8187288..c326c4cfd8 100644
--- a/ydb/core/blobstorage/vdisk/localrecovery/localrecovery_public.cpp
+++ b/ydb/core/blobstorage/vdisk/localrecovery/localrecovery_public.cpp
@@ -1,5 +1,6 @@
#include "localrecovery_public.h"
#include "localrecovery_logreplay.h"
+#include <ydb/core/base/feature_flags.h>
#include <ydb/core/blobstorage/vdisk/common/vdisk_lsnmngr.h>
#include <ydb/core/blobstorage/vdisk/hulldb/recovery/hulldb_recovery.h>
#include <ydb/core/blobstorage/vdisk/hulldb/generic/hulldb_bulksstloaded.h>
diff --git a/ydb/core/blobstorage/vdisk/skeleton/blobstorage_skeleton.cpp b/ydb/core/blobstorage/vdisk/skeleton/blobstorage_skeleton.cpp
index ce32860c25..1e8fd6dae4 100644
--- a/ydb/core/blobstorage/vdisk/skeleton/blobstorage_skeleton.cpp
+++ b/ydb/core/blobstorage/vdisk/skeleton/blobstorage_skeleton.cpp
@@ -16,6 +16,7 @@
#include "skeleton_capturevdisklayout.h"
#include "skeleton_compactionstate.h"
#include "skeleton_block_and_get.h"
+#include <ydb/core/base/feature_flags.h>
#include <ydb/core/blobstorage/groupinfo/blobstorage_groupinfo_iter.h>
#include <ydb/core/blobstorage/vdisk/localrecovery/localrecovery_public.h>
#include <ydb/core/blobstorage/vdisk/hullop/blobstorage_hull.h>
diff --git a/ydb/core/blobstorage/vdisk/syncer/guid_firstrun.cpp b/ydb/core/blobstorage/vdisk/syncer/guid_firstrun.cpp
index f1bfed4b45..88e00c9b94 100644
--- a/ydb/core/blobstorage/vdisk/syncer/guid_firstrun.cpp
+++ b/ydb/core/blobstorage/vdisk/syncer/guid_firstrun.cpp
@@ -5,6 +5,7 @@
#include <ydb/core/blobstorage/vdisk/common/vdisk_syncneighbors.h>
#include <ydb/core/blobstorage/vdisk/common/sublog.h>
#include <ydb/core/blobstorage/vdisk/common/vdisk_events.h>
+#include <library/cpp/random_provider/random_provider.h>
using namespace NKikimrServices;
using namespace NKikimr::NSync;
diff --git a/ydb/core/blobstorage/vdisk/syncer/syncer_job_actor.cpp b/ydb/core/blobstorage/vdisk/syncer/syncer_job_actor.cpp
index ef18d2b9ec..d6a917eb0f 100644
--- a/ydb/core/blobstorage/vdisk/syncer/syncer_job_actor.cpp
+++ b/ydb/core/blobstorage/vdisk/syncer/syncer_job_actor.cpp
@@ -7,6 +7,7 @@
#include <ydb/core/blobstorage/vdisk/synclog/blobstorage_synclogmsgreader.h>
#include <ydb/core/base/interconnect_channels.h>
#include <library/cpp/actors/core/interconnect.h>
+#include <library/cpp/random_provider/random_provider.h>
using namespace NKikimrServices;
using namespace NKikimr::NSyncer;
diff --git a/ydb/core/client/server/grpc_proxy_status.cpp b/ydb/core/client/server/grpc_proxy_status.cpp
index 827f635cc2..5d7bd58855 100644
--- a/ydb/core/client/server/grpc_proxy_status.cpp
+++ b/ydb/core/client/server/grpc_proxy_status.cpp
@@ -4,6 +4,7 @@
#include <library/cpp/actors/core/log.h>
#include <library/cpp/actors/core/interconnect.h>
#include <library/cpp/actors/interconnect/interconnect.h>
+#include <library/cpp/random_provider/random_provider.h>
#include <ydb/core/base/tablet_resolver.h>
#include <ydb/core/base/tablet_pipe.h>
#include <ydb/core/base/appdata.h>
diff --git a/ydb/core/client/server/msgbus_server_node_registration.cpp b/ydb/core/client/server/msgbus_server_node_registration.cpp
index ac87b12bd5..2c6b29c2f9 100644
--- a/ydb/core/client/server/msgbus_server_node_registration.cpp
+++ b/ydb/core/client/server/msgbus_server_node_registration.cpp
@@ -5,6 +5,8 @@
#include <library/cpp/actors/core/hfunc.h>
#include <library/cpp/actors/interconnect/interconnect.h>
#include <ydb/core/base/appdata.h>
+#include <ydb/core/base/nameservice.h>
+#include <ydb/core/base/feature_flags.h>
#include <ydb/core/base/tablet_pipe.h>
#include <ydb/core/mind/node_broker.h>
#include <ydb/core/kqp/common/kqp.h>
diff --git a/ydb/core/client/server/msgbus_server_sqs.cpp b/ydb/core/client/server/msgbus_server_sqs.cpp
index 82981f571a..137193d6d2 100644
--- a/ydb/core/client/server/msgbus_server_sqs.cpp
+++ b/ydb/core/client/server/msgbus_server_sqs.cpp
@@ -1,6 +1,7 @@
#include "msgbus_servicereq.h"
#include <ydb/core/ymq/actor/actor.h>
+#include <util/generic/guid.h>
namespace NKikimr {
namespace NMsgBusProxy {
diff --git a/ydb/core/cms/cluster_info.cpp b/ydb/core/cms/cluster_info.cpp
index d14f6de637..e0cc003e75 100644
--- a/ydb/core/cms/cluster_info.cpp
+++ b/ydb/core/cms/cluster_info.cpp
@@ -2,6 +2,7 @@
#include "cms_state.h"
#include "node_checkers.h"
+#include <ydb/core/base/nameservice.h>
#include <ydb/library/services/services.pb.h>
#include <library/cpp/actors/core/actor.h>
diff --git a/ydb/core/cms/cms.cpp b/ydb/core/cms/cms.cpp
index 0834ef50c4..07d94f0874 100644
--- a/ydb/core/cms/cms.cpp
+++ b/ydb/core/cms/cms.cpp
@@ -11,6 +11,7 @@
#include <ydb/core/base/statestorage.h>
#include <ydb/core/base/statestorage_impl.h>
#include <ydb/core/base/ticket_parser.h>
+#include <ydb/core/base/domain.h>
#include <ydb/core/cms/console/config_helpers.h>
#include <ydb/core/erasure/erasure.h>
#include <ydb/core/protos/cms.pb.h>
@@ -22,6 +23,7 @@
#include <library/cpp/actors/core/hfunc.h>
#include <library/cpp/actors/interconnect/interconnect.h>
#include <library/cpp/monlib/service/pages/templates.h>
+#include <library/cpp/time_provider/time_provider.h>
#include <util/datetime/base.h>
#include <util/generic/serialized_enum.h>
diff --git a/ydb/core/cms/console/config_helpers.cpp b/ydb/core/cms/console/config_helpers.cpp
index 3fbdbdbc4b..c08418d72d 100644
--- a/ydb/core/cms/console/config_helpers.cpp
+++ b/ydb/core/cms/console/config_helpers.cpp
@@ -5,6 +5,7 @@
#include <ydb/core/base/appdata.h>
#include <ydb/core/base/counters.h>
+#include <ydb/core/base/domain.h>
#include <ydb/core/base/tablet_pipe.h>
#include <ydb/core/mind/tenant_pool.h>
diff --git a/ydb/core/cms/console/console.cpp b/ydb/core/cms/console/console.cpp
index 4e7330820a..51cdf6aeb8 100644
--- a/ydb/core/cms/console/console.cpp
+++ b/ydb/core/cms/console/console.cpp
@@ -6,8 +6,11 @@
#include "net_classifier_updater.h"
#include <ydb/core/base/counters.h>
+#include <ydb/core/base/domain.h>
+#include <ydb/core/base/feature_flags.h>
#include <ydb/core/cms/console/validators/registry.h>
+#include <library/cpp/actors/core/actor_bootstrapped.h>
#include <library/cpp/monlib/service/pages/templates.h>
namespace NKikimr::NConsole {
diff --git a/ydb/core/cms/console/console_configs_manager.cpp b/ydb/core/cms/console/console_configs_manager.cpp
index 88d2f46ebe..033054bf50 100644
--- a/ydb/core/cms/console/console_configs_manager.cpp
+++ b/ydb/core/cms/console/console_configs_manager.cpp
@@ -6,6 +6,7 @@
#include "http.h"
#include <ydb/core/cms/console/validators/registry.h>
+#include <ydb/core/base/feature_flags.h>
#include <ydb/library/yql/public/issue/protos/issue_severity.pb.h>
diff --git a/ydb/core/cms/console/console_configs_subscriber.cpp b/ydb/core/cms/console/console_configs_subscriber.cpp
index 6ef0ea8068..433c425873 100644
--- a/ydb/core/cms/console/console_configs_subscriber.cpp
+++ b/ydb/core/cms/console/console_configs_subscriber.cpp
@@ -3,6 +3,7 @@
#include "util.h"
#include <ydb/core/base/appdata.h>
+#include <ydb/core/base/domain.h>
#include <ydb/core/base/tablet_pipe.h>
#include <ydb/core/cms/console/util/config_index.h>
#include <ydb/core/mind/tenant_pool.h>
diff --git a/ydb/core/cms/info_collector.cpp b/ydb/core/cms/info_collector.cpp
index 0362057258..3c3e22936d 100644
--- a/ydb/core/cms/info_collector.cpp
+++ b/ydb/core/cms/info_collector.cpp
@@ -2,6 +2,7 @@
#include "info_collector.h"
#include <ydb/core/base/tablet_pipe.h>
+#include <ydb/core/base/domain.h>
#include <ydb/core/cms/console/configs_dispatcher.h>
#include <ydb/core/blobstorage/base/blobstorage_events.h>
#include <ydb/core/mind/tenant_pool.h>
diff --git a/ydb/core/cms/sentinel.cpp b/ydb/core/cms/sentinel.cpp
index c4773d3636..d94df23799 100644
--- a/ydb/core/cms/sentinel.cpp
+++ b/ydb/core/cms/sentinel.cpp
@@ -5,6 +5,7 @@
#include <ydb/core/base/appdata.h>
#include <ydb/core/base/counters.h>
+#include <ydb/core/base/domain.h>
#include <ydb/core/base/tablet_pipe.h>
#include <ydb/core/blobstorage/base/blobstorage_events.h>
#include <ydb/core/node_whiteboard/node_whiteboard.h>
diff --git a/ydb/core/cms/walle_api_handler.cpp b/ydb/core/cms/walle_api_handler.cpp
index e9413850dd..c5b3e5a8ee 100644
--- a/ydb/core/cms/walle_api_handler.cpp
+++ b/ydb/core/cms/walle_api_handler.cpp
@@ -2,6 +2,7 @@
#include <ydb/core/base/appdata.h>
#include <ydb/core/base/tablet_pipe.h>
+#include <ydb/core/base/domain.h>
#include <ydb/core/cms/cms.h>
#include <ydb/core/mon/mon.h>
diff --git a/ydb/core/control/immediate_control_board_actor.cpp b/ydb/core/control/immediate_control_board_actor.cpp
index 5a8ca7d9b5..47fe307553 100644
--- a/ydb/core/control/immediate_control_board_actor.cpp
+++ b/ydb/core/control/immediate_control_board_actor.cpp
@@ -3,6 +3,7 @@
#include <ydb/core/mon/mon.h>
#include <ydb/core/base/appdata.h>
#include <ydb/core/base/counters.h>
+#include <ydb/library/services/services.pb.h>
#include <library/cpp/monlib/dynamic_counters/counters.h>
#include <library/cpp/monlib/service/pages/templates.h>
diff --git a/ydb/core/discovery/discovery.cpp b/ydb/core/discovery/discovery.cpp
index a9ab435d8b..6e5f4f247c 100644
--- a/ydb/core/discovery/discovery.cpp
+++ b/ydb/core/discovery/discovery.cpp
@@ -2,6 +2,7 @@
#include <ydb/core/base/appdata.h>
#include <ydb/core/base/path.h>
+#include <ydb/core/base/feature_flags.h>
#include <ydb/core/base/statestorage.h>
#include <ydb/core/tx/scheme_cache/scheme_cache.h>
#include <ydb/public/api/protos/ydb_discovery.pb.h>
diff --git a/ydb/core/driver_lib/run/kikimr_services_initializers.cpp b/ydb/core/driver_lib/run/kikimr_services_initializers.cpp
index 1b519ba80b..14a6365dbd 100644
--- a/ydb/core/driver_lib/run/kikimr_services_initializers.cpp
+++ b/ydb/core/driver_lib/run/kikimr_services_initializers.cpp
@@ -14,6 +14,7 @@
#include <ydb/core/base/config_units.h>
#include <ydb/core/base/counters.h>
#include <ydb/core/base/event_filter.h>
+#include <ydb/core/base/feature_flags.h>
#include <ydb/core/base/hive.h>
#include <ydb/core/base/location.h>
#include <ydb/core/base/pool_stats_collector.h>
diff --git a/ydb/core/driver_lib/run/run.cpp b/ydb/core/driver_lib/run/run.cpp
index 586c49c914..d1c0841ee9 100644
--- a/ydb/core/driver_lib/run/run.cpp
+++ b/ydb/core/driver_lib/run/run.cpp
@@ -11,6 +11,7 @@
#include <library/cpp/actors/core/actor_bootstrapped.h>
#include <library/cpp/actors/core/mon.h>
#include <library/cpp/actors/core/mon_stats.h>
+#include <library/cpp/actors/core/monotonic_provider.h>
#include <library/cpp/actors/core/process_stats.h>
#include <library/cpp/actors/core/log.h>
#include <library/cpp/actors/core/log_settings.h>
@@ -45,6 +46,13 @@
#include <ydb/core/base/appdata.h>
#include <ydb/core/base/counters.h>
#include <ydb/core/base/tabletid.h>
+#include <ydb/core/base/channel_profiles.h>
+#include <ydb/core/base/domain.h>
+#include <ydb/core/base/feature_flags.h>
+#include <ydb/core/base/nameservice.h>
+#include <ydb/core/base/tablet_types.h>
+#include <ydb/core/base/resource_profile.h>
+#include <ydb/core/base/event_filter.h>
#include <ydb/core/base/statestorage_impl.h>
#include <ydb/library/services/services.pb.h>
diff --git a/ydb/core/grpc_services/base/base.h b/ydb/core/grpc_services/base/base.h
index 4cc7340239..06357c1c11 100644
--- a/ydb/core/grpc_services/base/base.h
+++ b/ydb/core/grpc_services/base/base.h
@@ -29,8 +29,6 @@
namespace NKikimr {
-struct TAppConfig;
-
namespace NSchemeCache {
struct TSchemeCacheNavigate;
}
@@ -336,7 +334,7 @@ class ICheckerIface;
// The way to pass some common data to request processing
class IFacilityProvider {
public:
- virtual TIntrusiveConstPtr<TAppConfig> GetAppConfig() const = 0;
+ virtual ui64 GetChannelBufferSize() const = 0;
// Registers new actor using method chosen by grpc proxy
virtual TActorId RegisterActor(IActor* actor) const = 0;
};
diff --git a/ydb/core/grpc_services/counters/counters.cpp b/ydb/core/grpc_services/counters/counters.cpp
index 5b0b8ce08b..726086e1f4 100644
--- a/ydb/core/grpc_services/counters/counters.cpp
+++ b/ydb/core/grpc_services/counters/counters.cpp
@@ -1,6 +1,7 @@
#include "counters.h"
#include <ydb/core/base/appdata.h>
+#include <ydb/core/base/feature_flags.h>
#include <ydb/core/base/counters.h>
#include <ydb/core/sys_view/service/db_counters.h>
#include <ydb/core/sys_view/service/sysview_service.h>
diff --git a/ydb/core/grpc_services/db_metadata_cache.h b/ydb/core/grpc_services/db_metadata_cache.h
index 41e93d3d5d..52120bd4a1 100644
--- a/ydb/core/grpc_services/db_metadata_cache.h
+++ b/ydb/core/grpc_services/db_metadata_cache.h
@@ -4,6 +4,8 @@
#include <library/cpp/actors/core/actor_bootstrapped.h>
#include <library/cpp/actors/core/hfunc.h>
#include <ydb/core/base/appdata.h>
+#include <ydb/core/base/feature_flags.h>
+#include <ydb/core/base/domain.h>
#include <ydb/core/base/statestorage.h>
#include <ydb/core/health_check/health_check.h>
#include <ydb/core/protos/db_metadata_cache.pb.h>
diff --git a/ydb/core/grpc_services/grpc_endpoint_publish_actor.cpp b/ydb/core/grpc_services/grpc_endpoint_publish_actor.cpp
index 8fd0585862..ce60f2e2a1 100644
--- a/ydb/core/grpc_services/grpc_endpoint_publish_actor.cpp
+++ b/ydb/core/grpc_services/grpc_endpoint_publish_actor.cpp
@@ -6,6 +6,7 @@
#include <ydb/core/base/path.h>
#include <ydb/core/base/appdata.h>
+#include <ydb/core/base/domain.h>
#include <ydb/core/base/location.h>
#include <ydb/core/base/statestorage.h>
diff --git a/ydb/core/grpc_services/grpc_request_check_actor.h b/ydb/core/grpc_services/grpc_request_check_actor.h
index b1b06bff32..e29d833b41 100644
--- a/ydb/core/grpc_services/grpc_request_check_actor.h
+++ b/ydb/core/grpc_services/grpc_request_check_actor.h
@@ -11,6 +11,7 @@
#include <library/cpp/actors/core/actor_bootstrapped.h>
#include <ydb/core/base/path.h>
+#include <ydb/core/base/feature_flags.h>
#include <ydb/core/base/subdomain.h>
#include <ydb/library/ydb_issue/issue_helpers.h>
#include <ydb/core/grpc_services/counters/proxy_counters.h>
@@ -227,8 +228,8 @@ public:
TBase::PassAway();
}
- TIntrusiveConstPtr<TAppConfig> GetAppConfig() const override {
- return FacilityProvider_->GetAppConfig();
+ ui64 GetChannelBufferSize() const override {
+ return FacilityProvider_->GetChannelBufferSize();
}
TActorId RegisterActor(IActor* actor) const override {
diff --git a/ydb/core/grpc_services/grpc_request_proxy.cpp b/ydb/core/grpc_services/grpc_request_proxy.cpp
index 9fb8d73995..099cb36627 100644
--- a/ydb/core/grpc_services/grpc_request_proxy.cpp
+++ b/ydb/core/grpc_services/grpc_request_proxy.cpp
@@ -5,6 +5,7 @@
#include <ydb/core/base/appdata.h>
#include <ydb/core/base/path.h>
+#include <ydb/core/base/nameservice.h>
#include <ydb/core/cms/console/configs_dispatcher.h>
#include <ydb/core/cms/console/console.h>
#include <ydb/core/grpc_services/counters/proxy_counters.h>
@@ -59,7 +60,7 @@ class TGRpcRequestProxyImpl
using TBase = TActorBootstrapped<TGRpcRequestProxyImpl>;
public:
explicit TGRpcRequestProxyImpl(const NKikimrConfig::TAppConfig& appConfig)
- : AppConfig(MakeIntrusive<TAppConfig>(appConfig))
+ : ChannelBufferSize(appConfig.GetTableServiceConfig().GetResourceManager().GetChannelBufferSize())
{ }
void Bootstrap(const TActorContext& ctx);
@@ -264,9 +265,8 @@ private:
void DoStartUpdate(const TString& database);
bool DeferAndStartUpdate(const TString& database, TAutoPtr<IEventHandle>& ev, IRequestProxyCtx*);
- TIntrusiveConstPtr<TAppConfig> GetAppConfig() const override {
- std::shared_lock lock(Mutex);
- return AppConfig;
+ ui64 GetChannelBufferSize() const override {
+ return ChannelBufferSize.load();
}
TActorId RegisterActor(IActor* actor) const override {
@@ -296,12 +296,11 @@ private:
std::unordered_map<TString, TActorId> Subscribers;
THashSet<TSubDomainKey> SubDomainKeys;
bool AllowYdbRequestsWithoutDatabase = true;
- TIntrusiveConstPtr<TAppConfig> AppConfig;
+ std::atomic<ui64> ChannelBufferSize;
TActorId SchemeCache;
bool DynamicNode = false;
TString RootDatabase;
IGRpcProxyCounters::TPtr Counters;
- mutable std::shared_mutex Mutex;
};
void TGRpcRequestProxyImpl::Bootstrap(const TActorContext& ctx) {
@@ -371,11 +370,8 @@ void TGRpcRequestProxyImpl::HandleConfig(NConsole::TEvConfigsDispatcher::TEvSetC
void TGRpcRequestProxyImpl::HandleConfig(NConsole::TEvConsole::TEvConfigNotificationRequest::TPtr& ev) {
auto &event = ev->Get()->Record;
- {
- std::unique_lock lock(Mutex);
- AppConfig = MakeIntrusive<TAppConfig>(event.GetConfig());
- }
-
+ ChannelBufferSize.store(
+ event.GetConfig().GetTableServiceConfig().GetResourceManager().GetChannelBufferSize());
LOG_INFO(*TlsActivationContext, NKikimrServices::GRPC_SERVER, "Updated app config");
auto responseEv = MakeHolder<NConsole::TEvConsole::TEvConfigNotificationResponse>(event);
diff --git a/ydb/core/grpc_services/grpc_request_proxy_simple.cpp b/ydb/core/grpc_services/grpc_request_proxy_simple.cpp
index fc3253d94d..da16091acb 100644
--- a/ydb/core/grpc_services/grpc_request_proxy_simple.cpp
+++ b/ydb/core/grpc_services/grpc_request_proxy_simple.cpp
@@ -46,7 +46,8 @@ class TGRpcRequestProxySimple
using TBase = TActorBootstrapped<TGRpcRequestProxySimple>;
public:
explicit TGRpcRequestProxySimple(const NKikimrConfig::TAppConfig& appConfig)
- : AppConfig(MakeIntrusiveConst<TAppConfig>(appConfig))
+ : AppConfig(appConfig)
+ , ChannelBufferSize(appConfig.GetTableServiceConfig().GetResourceManager().GetChannelBufferSize())
{
}
@@ -74,7 +75,7 @@ private:
THolder<TEvListEndpointsRequest> request(event->Release().Release());
auto *result = TEvListEndpointsRequest::AllocateResult<Ydb::Discovery::ListEndpointsResult>(request);
- const auto& grpcConfig = AppConfig->GetGRpcConfig();
+ const auto& grpcConfig = AppConfig.GetGRpcConfig();
AddEndpointsForGrpcConfig(grpcConfig, *result);
for (const auto& externalEndpoint : grpcConfig.GetExtEndpoints()) {
@@ -135,15 +136,16 @@ private:
requestBaseCtx->ReplyWithYdbStatus(Ydb::StatusIds::BAD_REQUEST);
}
- TIntrusiveConstPtr<TAppConfig> GetAppConfig() const override {
- return AppConfig;
+ ui64 GetChannelBufferSize() const override {
+ return ChannelBufferSize.load();
}
TActorId RegisterActor(IActor* actor) const override {
return TActivationContext::AsActorContext().Register(actor);
}
- TIntrusiveConstPtr<TAppConfig> AppConfig;
+ const NKikimrConfig::TAppConfig AppConfig;
+ std::atomic<ui64> ChannelBufferSize;
IGRpcProxyCounters::TPtr Counters;
};
diff --git a/ydb/core/grpc_services/query/rpc_execute_query.cpp b/ydb/core/grpc_services/query/rpc_execute_query.cpp
index 6016b88ab8..dd9783f9f8 100644
--- a/ydb/core/grpc_services/query/rpc_execute_query.cpp
+++ b/ydb/core/grpc_services/query/rpc_execute_query.cpp
@@ -462,7 +462,7 @@ namespace NQuery {
void DoExecuteQuery(std::unique_ptr<IRequestNoOpCtx> p, const IFacilityProvider& f) {
// Use default channel buffer size as inflight limit
- ui64 inflightLimitBytes = f.GetAppConfig()->GetTableServiceConfig().GetResourceManager().GetChannelBufferSize();
+ ui64 inflightLimitBytes = f.GetChannelBufferSize();
auto* req = dynamic_cast<TEvExecuteQueryRequest*>(p.release());
Y_ABORT_UNLESS(req != nullptr, "Wrong using of TGRpcRequestWrapper");
diff --git a/ydb/core/grpc_services/rpc_maintenance.cpp b/ydb/core/grpc_services/rpc_maintenance.cpp
index 14048daffa..e6a798101b 100644
--- a/ydb/core/grpc_services/rpc_maintenance.cpp
+++ b/ydb/core/grpc_services/rpc_maintenance.cpp
@@ -2,6 +2,7 @@
#include <ydb/core/base/tablet_pipe.h>
#include <ydb/core/cms/cms.h>
+#include <ydb/core/base/domain.h>
#include <ydb/core/grpc_services/rpc_request_base.h>
#include <ydb/public/api/protos/draft/ydb_maintenance.pb.h>
diff --git a/ydb/core/grpc_services/rpc_node_registration.cpp b/ydb/core/grpc_services/rpc_node_registration.cpp
index 60d74dc50b..5b2a5eb040 100644
--- a/ydb/core/grpc_services/rpc_node_registration.cpp
+++ b/ydb/core/grpc_services/rpc_node_registration.cpp
@@ -1,11 +1,13 @@
#include "service_discovery.h"
#include <ydb/core/grpc_services/base/base.h>
+#include <ydb/core/base/feature_flags.h>
#include <library/cpp/actors/core/actor_bootstrapped.h>
#include <library/cpp/actors/interconnect/interconnect.h>
#include <ydb/core/grpc_services/auth_processor/dynamic_node_auth_processor.h>
#include <ydb/core/base/tablet_pipe.h>
#include <ydb/core/base/appdata.h>
+#include <ydb/core/base/nameservice.h>
#include <ydb/core/mind/node_broker.h>
#include <ydb/core/protos/node_broker.pb.h>
#include <ydb/public/api/protos/ydb_discovery.pb.h>
diff --git a/ydb/core/grpc_services/rpc_stream_execute_scan_query.cpp b/ydb/core/grpc_services/rpc_stream_execute_scan_query.cpp
index e854fd5394..afd5d6853c 100644
--- a/ydb/core/grpc_services/rpc_stream_execute_scan_query.cpp
+++ b/ydb/core/grpc_services/rpc_stream_execute_scan_query.cpp
@@ -488,7 +488,7 @@ private:
} // namespace
void DoExecuteScanQueryRequest(std::unique_ptr<IRequestNoOpCtx> p, const IFacilityProvider& f) {
- ui64 rpcBufferSize = f.GetAppConfig()->GetTableServiceConfig().GetResourceManager().GetChannelBufferSize();
+ ui64 rpcBufferSize = f.GetChannelBufferSize();
auto* req = dynamic_cast<TEvStreamExecuteScanQueryRequest*>(p.release());
Y_ABORT_UNLESS(req != nullptr, "Wrong using of TGRpcRequestWrapper");
f.RegisterActor(new TStreamExecuteScanQueryRPC(req, rpcBufferSize));
diff --git a/ydb/core/grpc_services/rpc_stream_execute_yql_script.cpp b/ydb/core/grpc_services/rpc_stream_execute_yql_script.cpp
index d89d22cd7f..7013ec943e 100644
--- a/ydb/core/grpc_services/rpc_stream_execute_yql_script.cpp
+++ b/ydb/core/grpc_services/rpc_stream_execute_yql_script.cpp
@@ -6,6 +6,7 @@
#include <ydb/core/actorlib_impl/long_timer.h>
#include <ydb/core/base/appdata.h>
+#include <ydb/core/base/feature_flags.h>
#include <ydb/library/ydb_issue/issue_helpers.h>
#include <ydb/core/kqp/executer_actor/kqp_executer.h>
@@ -487,7 +488,7 @@ private:
} // namespace
void DoStreamExecuteYqlScript(std::unique_ptr<IRequestNoOpCtx> p, const IFacilityProvider& f) {
- ui64 rpcBufferSize = f.GetAppConfig()->GetTableServiceConfig().GetResourceManager().GetChannelBufferSize();
+ ui64 rpcBufferSize = f.GetChannelBufferSize();
f.RegisterActor(new TStreamExecuteYqlScriptRPC(p.release(), rpcBufferSize));
}
diff --git a/ydb/core/health_check/health_check.cpp b/ydb/core/health_check/health_check.cpp
index dd00f6db72..91406d87cf 100644
--- a/ydb/core/health_check/health_check.cpp
+++ b/ydb/core/health_check/health_check.cpp
@@ -16,6 +16,7 @@
#include <ydb/core/base/path.h>
#include <ydb/core/base/tablet_pipe.h>
#include <ydb/core/mon/mon.h>
+#include <ydb/core/base/nameservice.h>
#include <ydb/core/blobstorage/base/blobstorage_events.h>
#include <ydb/core/cms/console/console.h>
#include <ydb/core/mind/tenant_slot_broker.h>
diff --git a/ydb/core/http_proxy/auth_factory.cpp b/ydb/core/http_proxy/auth_factory.cpp
index b09f212735..647c5358f1 100644
--- a/ydb/core/http_proxy/auth_factory.cpp
+++ b/ydb/core/http_proxy/auth_factory.cpp
@@ -1,5 +1,6 @@
#include "auth_factory.h"
#include "http_req.h"
+#include <ydb/core/base/feature_flags.h>
#include <ydb/core/http_proxy/http_service.h>
#include <ydb/core/http_proxy/http_req.h>
#include <ydb/core/http_proxy/metrics_actor.h>
diff --git a/ydb/core/keyvalue/keyvalue_intermediate.cpp b/ydb/core/keyvalue/keyvalue_intermediate.cpp
index 3f735def92..54a63fdab8 100644
--- a/ydb/core/keyvalue/keyvalue_intermediate.cpp
+++ b/ydb/core/keyvalue/keyvalue_intermediate.cpp
@@ -1,5 +1,6 @@
#include "keyvalue_intermediate.h"
#include <ydb/core/base/appdata.h>
+#include <library/cpp/time_provider/time_provider.h>
namespace NKikimr {
namespace NKeyValue {
diff --git a/ydb/core/keyvalue/keyvalue_state.h b/ydb/core/keyvalue/keyvalue_state.h
index bae2891c7d..01bf5ab969 100644
--- a/ydb/core/keyvalue/keyvalue_state.h
+++ b/ydb/core/keyvalue/keyvalue_state.h
@@ -19,6 +19,7 @@
#include <ydb/core/tablet/tablet_counters.h>
#include <ydb/core/tablet/tablet_metrics.h>
#include <ydb/core/keyvalue/protos/events.pb.h>
+#include <library/cpp/time_provider/time_provider.h>
#include <bitset>
namespace NActors {
diff --git a/ydb/core/kqp/common/kqp_resolve.h b/ydb/core/kqp/common/kqp_resolve.h
index 8226503d9a..014b404955 100644
--- a/ydb/core/kqp/common/kqp_resolve.h
+++ b/ydb/core/kqp/common/kqp_resolve.h
@@ -59,7 +59,7 @@ struct TTableConstInfo : public TAtomicRefCount<TTableConstInfo> {
seq = Path + "/" + seq;
}
- Sequences.emplace(phyColumn.GetId().GetName(), seq);
+ Sequences.emplace(phyColumn.GetId().GetName(), seq);
}
if (phyColumn.HasDefaultFromLiteral()) {
diff --git a/ydb/core/kqp/compute_actor/kqp_pure_compute_actor.cpp b/ydb/core/kqp/compute_actor/kqp_pure_compute_actor.cpp
index f3868ca3bd..59048148a9 100644
--- a/ydb/core/kqp/compute_actor/kqp_pure_compute_actor.cpp
+++ b/ydb/core/kqp/compute_actor/kqp_pure_compute_actor.cpp
@@ -1,4 +1,6 @@
#include "kqp_pure_compute_actor.h"
+#include <ydb/core/base/feature_flags.h>
+
namespace NKikimr {
namespace NKqp {
diff --git a/ydb/core/kqp/compute_actor/kqp_scan_compute_actor.cpp b/ydb/core/kqp/compute_actor/kqp_scan_compute_actor.cpp
index 3358d032cd..02159ec758 100644
--- a/ydb/core/kqp/compute_actor/kqp_scan_compute_actor.cpp
+++ b/ydb/core/kqp/compute_actor/kqp_scan_compute_actor.cpp
@@ -3,6 +3,7 @@
#include "kqp_compute_actor_impl.h"
#include <ydb/core/grpc_services/local_rate_limiter.h>
#include <ydb/core/base/appdata.h>
+#include <ydb/core/base/feature_flags.h>
#include <ydb/core/kqp/rm_service/kqp_rm_service.h>
#include <ydb/core/kqp/runtime/kqp_tasks_runner.h>
#include <ydb/core/kqp/common/kqp_resolve.h>
diff --git a/ydb/core/kqp/counters/kqp_counters.cpp b/ydb/core/kqp/counters/kqp_counters.cpp
index d45e4facc1..f6707d2814 100644
--- a/ydb/core/kqp/counters/kqp_counters.cpp
+++ b/ydb/core/kqp/counters/kqp_counters.cpp
@@ -1,6 +1,7 @@
#include "kqp_counters.h"
#include <ydb/core/base/appdata.h>
+#include <ydb/core/base/feature_flags.h>
#include <ydb/core/base/counters.h>
#include <ydb/library/ydb_issue/proto/issue_id.pb.h>
#include <ydb/core/sys_view/service/db_counters.h>
diff --git a/ydb/core/kqp/executer_actor/kqp_executer_impl.h b/ydb/core/kqp/executer_actor/kqp_executer_impl.h
index 7654c0aa98..635891c0e8 100644
--- a/ydb/core/kqp/executer_actor/kqp_executer_impl.h
+++ b/ydb/core/kqp/executer_actor/kqp_executer_impl.h
@@ -13,6 +13,7 @@
#include <ydb/core/actorlib_impl/long_timer.h>
#include <ydb/core/base/appdata.h>
+#include <ydb/core/base/feature_flags.h>
#include <ydb/core/base/tablet_pipecache.h>
#include <ydb/library/wilson_ids/wilson.h>
#include <ydb/library/ydb_issue/issue_helpers.h>
diff --git a/ydb/core/kqp/executer_actor/kqp_table_resolver.cpp b/ydb/core/kqp/executer_actor/kqp_table_resolver.cpp
index 3e29f7e012..79691ccb39 100644
--- a/ydb/core/kqp/executer_actor/kqp_table_resolver.cpp
+++ b/ydb/core/kqp/executer_actor/kqp_table_resolver.cpp
@@ -4,6 +4,8 @@
#include <ydb/core/base/cputime.h>
#include <ydb/core/base/path.h>
#include <ydb/core/kqp/executer_actor/kqp_executer.h>
+#include <library/cpp/actors/core/actor_bootstrapped.h>
+
namespace NKikimr::NKqp {
diff --git a/ydb/core/kqp/executer_actor/kqp_tasks_graph.cpp b/ydb/core/kqp/executer_actor/kqp_tasks_graph.cpp
index 2370bb0a89..0d1c2e2682 100644
--- a/ydb/core/kqp/executer_actor/kqp_tasks_graph.cpp
+++ b/ydb/core/kqp/executer_actor/kqp_tasks_graph.cpp
@@ -1,6 +1,7 @@
#include "kqp_tasks_graph.h"
#include <ydb/core/base/appdata.h>
+#include <ydb/core/base/feature_flags.h>
#include <ydb/core/kqp/common/kqp_yql.h>
#include <ydb/core/tx/datashard/range_ops.h>
diff --git a/ydb/core/kqp/federated_query/kqp_federated_query_helpers.cpp b/ydb/core/kqp/federated_query/kqp_federated_query_helpers.cpp
index eee9cd5dd9..ea5004f832 100644
--- a/ydb/core/kqp/federated_query/kqp_federated_query_helpers.cpp
+++ b/ydb/core/kqp/federated_query/kqp_federated_query_helpers.cpp
@@ -3,12 +3,17 @@
#include <library/cpp/actors/http/http_proxy.h>
#include <ydb/core/base/counters.h>
+#include <ydb/core/base/feature_flags.h>
+#include <ydb/core/protos/config.pb.h>
#include <ydb/core/fq/libs/actors/database_resolver.h>
#include <ydb/core/fq/libs/actors/proxy.h>
#include <ydb/core/fq/libs/db_id_async_resolver_impl/db_async_resolver_impl.h>
#include <ydb/core/fq/libs/db_id_async_resolver_impl/mdb_endpoint_generator.h>
+#include <util/system/file.h>
+#include <util/stream/file.h>
+
namespace NKikimr::NKqp {
NYql::THttpGatewayConfig DefaultHttpGatewayConfig() {
diff --git a/ydb/core/kqp/gateway/behaviour/external_data_source/manager.cpp b/ydb/core/kqp/gateway/behaviour/external_data_source/manager.cpp
index d88999b068..688ecae027 100644
--- a/ydb/core/kqp/gateway/behaviour/external_data_source/manager.cpp
+++ b/ydb/core/kqp/gateway/behaviour/external_data_source/manager.cpp
@@ -5,6 +5,7 @@
#include <ydb/core/kqp/gateway/actors/scheme.h>
#include <ydb/core/kqp/provider/yql_kikimr_gateway.h>
#include <ydb/core/base/path.h>
+#include <ydb/core/base/feature_flags.h>
#include <ydb/core/kqp/provider/yql_kikimr_gateway.h>
#include <util/string/type.h>
diff --git a/ydb/core/kqp/gateway/kqp_gateway.h b/ydb/core/kqp/gateway/kqp_gateway.h
index 9a5e0fc5b2..a31df57e3f 100644
--- a/ydb/core/kqp/gateway/kqp_gateway.h
+++ b/ydb/core/kqp/gateway/kqp_gateway.h
@@ -8,6 +8,7 @@
#include <ydb/core/kqp/counters/kqp_counters.h>
#include <ydb/core/kqp/provider/yql_kikimr_gateway.h>
#include <ydb/core/kqp/provider/yql_kikimr_settings.h>
+#include <ydb/core/control/immediate_control_board_impl.h>
#include <ydb/core/tx/long_tx_service/public/lock_handle.h>
#include <ydb/core/ydb_convert/table_profiles.h>
#include <ydb/library/accessor/accessor.h>
diff --git a/ydb/core/kqp/gateway/kqp_metadata_loader.h b/ydb/core/kqp/gateway/kqp_metadata_loader.h
index 04c7af7bd9..33340ab8ba 100644
--- a/ydb/core/kqp/gateway/kqp_metadata_loader.h
+++ b/ydb/core/kqp/gateway/kqp_metadata_loader.h
@@ -4,7 +4,7 @@
#include <ydb/core/kqp/provider/yql_kikimr_gateway.h>
#include <ydb/core/scheme/scheme_tabledefs.h>
#include <ydb/core/tx/scheme_cache/scheme_cache.h>
-
+#include <ydb/core/kqp/provider/yql_kikimr_settings.h>
#include <library/cpp/threading/future/core/future.h>
#include <util/system/mutex.h>
diff --git a/ydb/core/kqp/node_service/kqp_node_service.cpp b/ydb/core/kqp/node_service/kqp_node_service.cpp
index 350b1c2d5c..b9c8dc655f 100644
--- a/ydb/core/kqp/node_service/kqp_node_service.cpp
+++ b/ydb/core/kqp/node_service/kqp_node_service.cpp
@@ -2,6 +2,7 @@
#include "kqp_node_state.h"
#include <ydb/core/actorlib_impl/long_timer.h>
+#include <ydb/core/base/feature_flags.h>
#include <ydb/core/cms/console/configs_dispatcher.h>
#include <ydb/core/cms/console/console.h>
#include <ydb/core/protos/tx_datashard.pb.h>
diff --git a/ydb/core/kqp/opt/logical/kqp_opt_log_ranges_predext.cpp b/ydb/core/kqp/opt/logical/kqp_opt_log_ranges_predext.cpp
index 6876641b2a..71b2ab727a 100644
--- a/ydb/core/kqp/opt/logical/kqp_opt_log_ranges_predext.cpp
+++ b/ydb/core/kqp/opt/logical/kqp_opt_log_ranges_predext.cpp
@@ -9,6 +9,7 @@
#include <ydb/library/yql/dq/opt/dq_opt_log.h>
#include <ydb/library/yql/providers/common/provider/yql_table_lookup.h>
#include <ydb/library/yql/core/extract_predicate/extract_predicate.h>
+#include <ydb/core/protos/config.pb.h>
namespace NKikimr::NKqp::NOpt {
diff --git a/ydb/core/kqp/provider/yql_kikimr_datasource.cpp b/ydb/core/kqp/provider/yql_kikimr_datasource.cpp
index 4c5af6a457..ee1434dfcf 100644
--- a/ydb/core/kqp/provider/yql_kikimr_datasource.cpp
+++ b/ydb/core/kqp/provider/yql_kikimr_datasource.cpp
@@ -7,6 +7,7 @@
#include <ydb/library/yql/core/yql_expr_type_annotation.h>
#include <ydb/library/yql/providers/common/schema/expr/yql_expr_schema.h>
#include <ydb/library/yql/providers/dq/expr_nodes/dqs_expr_nodes.h>
+#include <ydb/library/yql/dq/expr_nodes/dq_expr_nodes.h>
#include <ydb/core/external_sources/external_source_factory.h>
#include <ydb/core/fq/libs/result_formatter/result_formatter.h>
diff --git a/ydb/core/kqp/provider/yql_kikimr_settings.cpp b/ydb/core/kqp/provider/yql_kikimr_settings.cpp
index 9814488a71..2fbc48c5cc 100644
--- a/ydb/core/kqp/provider/yql_kikimr_settings.cpp
+++ b/ydb/core/kqp/provider/yql_kikimr_settings.cpp
@@ -1,5 +1,7 @@
#include "yql_kikimr_settings.h"
+#include <ydb/core/protos/config.pb.h>
+
namespace NYql {
using namespace NCommon;
@@ -69,6 +71,8 @@ TKikimrConfiguration::TKikimrConfiguration() {
/* Runtime */
REGISTER_SETTING(*this, ScanQuery);
+
+ IndexAutoChooserMode = NKikimrConfig::TTableServiceConfig_EIndexAutoChooseMode_DISABLED;
}
bool TKikimrSettings::HasAllowKqpUnsafeCommit() const {
diff --git a/ydb/core/kqp/provider/yql_kikimr_settings.h b/ydb/core/kqp/provider/yql_kikimr_settings.h
index 3d53636a73..01bbc5cd71 100644
--- a/ydb/core/kqp/provider/yql_kikimr_settings.h
+++ b/ydb/core/kqp/provider/yql_kikimr_settings.h
@@ -4,7 +4,11 @@
#include <ydb/library/yql/providers/common/config/yql_dispatch.h>
#include <ydb/library/yql/providers/common/config/yql_setting.h>
#include <ydb/library/yql/sql/settings/translation_settings.h>
-#include <ydb/core/protos/config.pb.h>
+#include <ydb/core/protos/feature_flags.pb.h>
+
+namespace NKikimrConfig {
+ enum TTableServiceConfig_EIndexAutoChooseMode : int;
+}
namespace NYql {
@@ -154,7 +158,7 @@ struct TKikimrConfiguration : public TKikimrSettings, public NCommon::TSettingDi
bool EnableSequences = false;
bool EnableColumnsWithDefault = false;
NSQLTranslation::EBindingsMode BindingsMode = NSQLTranslation::EBindingsMode::ENABLED;
- NKikimrConfig::TTableServiceConfig::EIndexAutoChooseMode IndexAutoChooserMode = NKikimrConfig::TTableServiceConfig_EIndexAutoChooseMode_DISABLED;
+ NKikimrConfig::TTableServiceConfig_EIndexAutoChooseMode IndexAutoChooserMode;
};
}
diff --git a/ydb/core/kqp/proxy_service/kqp_proxy_service.cpp b/ydb/core/kqp/proxy_service/kqp_proxy_service.cpp
index 9517b24a00..746eaf90a4 100644
--- a/ydb/core/kqp/proxy_service/kqp_proxy_service.cpp
+++ b/ydb/core/kqp/proxy_service/kqp_proxy_service.cpp
@@ -5,6 +5,7 @@
#include <ydb/core/base/appdata.h>
#include <ydb/core/base/path.h>
#include <ydb/core/base/location.h>
+#include <ydb/core/base/feature_flags.h>
#include <ydb/core/base/statestorage.h>
#include <ydb/core/cms/console/configs_dispatcher.h>
#include <ydb/core/cms/console/console.h>
diff --git a/ydb/core/kqp/proxy_service/kqp_proxy_service.h b/ydb/core/kqp/proxy_service/kqp_proxy_service.h
index c070b4df35..82346fcd93 100644
--- a/ydb/core/kqp/proxy_service/kqp_proxy_service.h
+++ b/ydb/core/kqp/proxy_service/kqp_proxy_service.h
@@ -7,6 +7,17 @@
#include <util/datetime/base.h>
+namespace NKikimrConfig {
+ class TLogConfig;
+ class TTableServiceConfig;
+ class TQueryServiceConfig;
+ class TMetadataProviderConfig;
+}
+
+namespace NKikimrKqp {
+ class TKqpSetting;
+ class TKqpProxyNodeResources;
+}
namespace NKikimr::NKqp {
diff --git a/ydb/core/kqp/query_compiler/kqp_query_compiler.cpp b/ydb/core/kqp/query_compiler/kqp_query_compiler.cpp
index 8d9ab4e6e0..b6e3b46444 100644
--- a/ydb/core/kqp/query_compiler/kqp_query_compiler.cpp
+++ b/ydb/core/kqp/query_compiler/kqp_query_compiler.cpp
@@ -1,6 +1,7 @@
#include "kqp_query_compiler.h"
#include <ydb/core/kqp/common/kqp_yql.h>
+#include <ydb/core/kqp/query_data/kqp_request_predictor.h>
#include <ydb/core/kqp/query_data/kqp_predictor.h>
#include <ydb/core/kqp/query_compiler/kqp_mkql_compiler.h>
#include <ydb/core/kqp/query_compiler/kqp_olap_compiler.h>
diff --git a/ydb/core/kqp/query_data/kqp_predictor.cpp b/ydb/core/kqp/query_data/kqp_predictor.cpp
index d5696e3eff..9c0ce87d73 100644
--- a/ydb/core/kqp/query_data/kqp_predictor.cpp
+++ b/ydb/core/kqp/query_data/kqp_predictor.cpp
@@ -1,13 +1,19 @@
#include "kqp_predictor.h"
+#include "kqp_request_predictor.h"
+
#include <ydb/core/base/appdata.h>
#include <ydb/library/yql/core/yql_expr_optimize.h>
#include <util/system/info.h>
+#include <ydb/library/yql/dq/expr_nodes/dq_expr_nodes.h>
#include <ydb/library/yql/core/expr_nodes/yql_expr_nodes.h>
#include <ydb/core/kqp/expr_nodes/kqp_expr_nodes.h>
#include <ydb/core/kqp/common/kqp_yql.h>
+#include <ydb/library/services/services.pb.h>
namespace NKikimr::NKqp {
+using namespace NActors;
+
void TStagePredictor::Prepare() {
InputDataPrediction = 1;
if (HasLookupFlag) {
diff --git a/ydb/core/kqp/query_data/kqp_predictor.h b/ydb/core/kqp/query_data/kqp_predictor.h
index 7968fc3be9..d142ed267f 100644
--- a/ydb/core/kqp/query_data/kqp_predictor.h
+++ b/ydb/core/kqp/query_data/kqp_predictor.h
@@ -1,9 +1,19 @@
#pragma once
#include <ydb/library/accessor/accessor.h>
-#include <ydb/library/yql/dq/expr_nodes/dq_expr_nodes.h>
#include <ydb/library/yql/dq/proto/dq_tasks.pb.h>
+namespace NYql {
+ class TExprNode;
+ struct TExprContext;
+
+ namespace NNodes {
+ class TDqConnection;
+ }
+}
+
namespace NKikimr::NKqp {
+class TRequestPredictor;
+
class TStagePredictor {
private:
YDB_READONLY_FLAG(HasFinalCombiner, false);
@@ -29,7 +39,7 @@ private:
void Prepare();
friend class TRequestPredictor;
public:
- void Scan(const NYql::TExprNode::TPtr& stageNode);
+ void Scan(const TIntrusivePtr<NYql::TExprNode>& stageNode);
void AcceptInputStageInfo(const TStagePredictor& info, const NYql::NNodes::TDqConnection& connection);
void SerializeToKqpSettings(NYql::NDqProto::TProgram::TSettings& kqpProto) const;
bool DeserializeFromKqpSettings(const NYql::NDqProto::TProgram::TSettings& kqpProto);
@@ -38,13 +48,4 @@ public:
ui32 CalcTasksOptimalCount(const ui32 availableThreadsCount, const std::optional<ui32> previousStageTasksCount) const;
};
-class TRequestPredictor {
-private:
- std::deque<TStagePredictor> StagePredictors;
- std::map<ui64, TStagePredictor*> StagesMap;
-public:
- double GetLevelDataVolume(const ui32 level) const;
- TStagePredictor& BuildForStage(const NYql::NNodes::TDqPhyStage& stage, NYql::TExprContext& ctx);
-};
-
}
diff --git a/ydb/core/kqp/query_data/kqp_prepared_query.cpp b/ydb/core/kqp/query_data/kqp_prepared_query.cpp
index 0be3943a0e..544159f436 100644
--- a/ydb/core/kqp/query_data/kqp_prepared_query.cpp
+++ b/ydb/core/kqp/query_data/kqp_prepared_query.cpp
@@ -1,6 +1,8 @@
#include "kqp_prepared_query.h"
+#include <ydb/core/kqp/common/kqp_resolve.h>
#include <ydb/library/mkql_proto/mkql_proto.h>
+#include <ydb/core/kqp/provider/yql_kikimr_settings.h>
#include <ydb/library/yql/core/yql_data_provider.h>
#include <ydb/library/yql/minikql/mkql_function_registry.h>
#include <ydb/library/yql/minikql/mkql_node.h>
@@ -96,6 +98,10 @@ TKqpPhyTxHolder::TKqpPhyTxHolder(const std::shared_ptr<const NKikimrKqp::TPrepar
}
}
+TIntrusiveConstPtr<TTableConstInfoMap> TKqpPhyTxHolder::GetTableConstInfoById() const {
+ return TableConstInfoById;
+}
+
bool TKqpPhyTxHolder::IsLiteralTx() const {
return LiteralTx;
}
@@ -159,6 +165,16 @@ TPreparedQueryHolder::TPreparedQueryHolder(NKikimrKqp::TPreparedQuery* proto,
QueryTables = TVector<TString>(tablesSet.begin(), tablesSet.end());
}
+TIntrusivePtr<TTableConstInfo>& TPreparedQueryHolder::GetInfo(const TTableId& tableId) {
+ auto info = TableConstInfoById->Map.FindPtr(tableId);
+ MKQL_ENSURE_S(info);
+ return *info;
+}
+
+const THashMap<TTableId, TIntrusivePtr<TTableConstInfo>>& TPreparedQueryHolder::GetTableConstInfo() const {
+ return TableConstInfoById->Map;
+}
+
void TPreparedQueryHolder::FillTable(const NKqpProto::TKqpPhyTable& phyTable) {
auto tableId = MakeTableId(phyTable.GetId());
diff --git a/ydb/core/kqp/query_data/kqp_prepared_query.h b/ydb/core/kqp/query_data/kqp_prepared_query.h
index 43e7f627b6..719c14594e 100644
--- a/ydb/core/kqp/query_data/kqp_prepared_query.h
+++ b/ydb/core/kqp/query_data/kqp_prepared_query.h
@@ -1,8 +1,7 @@
#pragma once
-#include <ydb/core/kqp/common/kqp_resolve.h>
#include <ydb/core/kqp/query_data/kqp_predictor.h>
-#include <ydb/core/kqp/provider/yql_kikimr_settings.h>
+#include <ydb/core/scheme/scheme_tabledefs.h>
#include <ydb/core/protos/kqp.pb.h>
#include <util/generic/vector.h>
@@ -10,6 +9,10 @@
#include <memory>
#include <vector>
+namespace NYql {
+ struct TKikimrConfiguration;
+}
+
namespace NKikimr {
namespace NMiniKQL {
class IFunctionRegistry;
@@ -25,6 +28,8 @@ class TKqpPhyTx;
namespace NKikimr::NKqp {
+struct TTableConstInfo;
+
class TPreparedQueryAllocHolder;
struct TPhyTxResultMetadata {
@@ -33,7 +38,7 @@ struct TPhyTxResultMetadata {
};
struct TTableConstInfoMap : public TAtomicRefCount<TTableConstInfoMap> {
- THashMap<TTableId, TIntrusivePtr<TTableConstInfo>> Map;
+ THashMap<NKikimr::TTableId, TIntrusivePtr<TTableConstInfo>> Map;
};
class TKqpPhyTxHolder {
@@ -104,10 +109,7 @@ public:
return Proto->ShortDebugString();
}
- TIntrusiveConstPtr<TTableConstInfoMap> GetTableConstInfoById() const {
- return TableConstInfoById;
- }
-
+ TIntrusiveConstPtr<TTableConstInfoMap> GetTableConstInfoById() const;
TKqpPhyTxHolder(const std::shared_ptr<const NKikimrKqp::TPreparedQuery>& pq, const NKqpProto::TKqpPhyTx* proto,
const std::shared_ptr<TPreparedQueryAllocHolder>& alloc, TIntrusivePtr<TTableConstInfoMap> tableConstInfoById);
@@ -120,14 +122,13 @@ private:
YDB_READONLY(bool, DisableLlvmForUdfStages, false);
YDB_READONLY_DEF(std::optional<bool>, UseLlvmExternalDirective);
public:
- void Fill(NYql::TKikimrConfiguration::TPtr config, const NKikimrKqp::EQueryType qType);
+ void Fill(TIntrusivePtr<NYql::TKikimrConfiguration> config, const NKikimrKqp::EQueryType qType);
bool GetUseLlvm(const NYql::NDqProto::TProgram::TSettings& kqpSettingsProto) const;
};
class TPreparedQueryHolder {
private:
-
YDB_ACCESSOR_DEF(TLlvmSettings, LlvmSettings);
std::shared_ptr<const NKikimrKqp::TPreparedQuery> Proto;
std::shared_ptr<TPreparedQueryAllocHolder> Alloc;
@@ -179,15 +180,9 @@ public:
return Proto->GetPhysicalQuery();
}
- TIntrusivePtr<TTableConstInfo>& GetInfo(const TTableId& tableId) {
- auto info = TableConstInfoById->Map.FindPtr(tableId);
- MKQL_ENSURE_S(info);
- return *info;
- }
+ TIntrusivePtr<TTableConstInfo>& GetInfo(const TTableId& tableId);
- const THashMap<TTableId, TIntrusivePtr<TTableConstInfo>>& GetTableConstInfo() const {
- return TableConstInfoById->Map;
- }
+ const THashMap<TTableId, TIntrusivePtr<TTableConstInfo>>& GetTableConstInfo() const;
void FillTable(const NKqpProto::TKqpPhyTable& phyTable);
diff --git a/ydb/core/kqp/query_data/kqp_request_predictor.h b/ydb/core/kqp/query_data/kqp_request_predictor.h
new file mode 100644
index 0000000000..8b0c8c230c
--- /dev/null
+++ b/ydb/core/kqp/query_data/kqp_request_predictor.h
@@ -0,0 +1,28 @@
+#pragma once
+
+#include "kqp_predictor.h"
+
+#include <ydb/library/accessor/accessor.h>
+#include <ydb/library/yql/dq/proto/dq_tasks.pb.h>
+#include <ydb/library/yql/dq/expr_nodes/dq_expr_nodes.h>
+
+namespace NYql {
+ class TExprNode;
+ struct TExprContext;
+
+ namespace NNodes {
+ class TDqConnection;
+ }
+}
+
+namespace NKikimr::NKqp {
+class TRequestPredictor {
+private:
+ std::deque<TStagePredictor> StagePredictors;
+ std::map<ui64, TStagePredictor*> StagesMap;
+public:
+ double GetLevelDataVolume(const ui32 level) const;
+ TStagePredictor& BuildForStage(const NYql::NNodes::TDqPhyStage& stage, NYql::TExprContext& ctx);
+};
+
+} \ No newline at end of file
diff --git a/ydb/core/kqp/rm_service/kqp_resource_info_exchanger.cpp b/ydb/core/kqp/rm_service/kqp_resource_info_exchanger.cpp
index cf48f3758c..2ebd837d2b 100644
--- a/ydb/core/kqp/rm_service/kqp_resource_info_exchanger.cpp
+++ b/ydb/core/kqp/rm_service/kqp_resource_info_exchanger.cpp
@@ -1,6 +1,7 @@
#include "kqp_rm_service.h"
#include <ydb/core/base/location.h>
+#include <ydb/core/base/domain.h>
#include <ydb/core/base/statestorage.h>
#include <ydb/core/cms/console/configs_dispatcher.h>
#include <ydb/core/cms/console/console.h>
diff --git a/ydb/core/kqp/rm_service/kqp_rm_service.cpp b/ydb/core/kqp/rm_service/kqp_rm_service.cpp
index 2fb04c21b9..4c105511ee 100644
--- a/ydb/core/kqp/rm_service/kqp_rm_service.cpp
+++ b/ydb/core/kqp/rm_service/kqp_rm_service.cpp
@@ -1,6 +1,8 @@
#include "kqp_rm_service.h"
#include <ydb/core/base/location.h>
+#include <ydb/core/base/localdb.h>
+#include <ydb/core/base/domain.h>
#include <ydb/core/base/statestorage.h>
#include <ydb/core/cms/console/configs_dispatcher.h>
#include <ydb/core/cms/console/console.h>
diff --git a/ydb/core/kqp/run_script_actor/kqp_run_script_actor.h b/ydb/core/kqp/run_script_actor/kqp_run_script_actor.h
index 5db2f092a4..97e63036ab 100644
--- a/ydb/core/kqp/run_script_actor/kqp_run_script_actor.h
+++ b/ydb/core/kqp/run_script_actor/kqp_run_script_actor.h
@@ -7,6 +7,10 @@
#include <library/cpp/actors/core/actor.h>
+namespace NKikimrConfig {
+ class TQueryServiceConfig;
+}
+
namespace NKikimr::NKqp {
struct TEvKqpRunScriptActor {
diff --git a/ydb/core/kqp/session_actor/kqp_tx.h b/ydb/core/kqp/session_actor/kqp_tx.h
index 75d3f8778d..b8f8d21337 100644
--- a/ydb/core/kqp/session_actor/kqp_tx.h
+++ b/ydb/core/kqp/session_actor/kqp_tx.h
@@ -1,5 +1,6 @@
#pragma once
+#include <ydb/core/base/feature_flags.h>
#include <ydb/core/kqp/common/kqp_yql.h>
#include <ydb/core/kqp/gateway/kqp_gateway.h>
#include <ydb/core/kqp/provider/yql_kikimr_provider.h>
diff --git a/ydb/core/load_test/gen.h b/ydb/core/load_test/gen.h
index 91e01bac49..b5ad5af2f4 100644
--- a/ydb/core/load_test/gen.h
+++ b/ydb/core/load_test/gen.h
@@ -2,6 +2,7 @@
#include "defs.h"
#include <ydb/core/base/appdata.h>
+#include <library/cpp/random_provider/random_provider.h>
namespace NKikimr {
diff --git a/ydb/core/load_test/keyvalue_write.cpp b/ydb/core/load_test/keyvalue_write.cpp
index 6e425c2e58..18be4b5011 100644
--- a/ydb/core/load_test/keyvalue_write.cpp
+++ b/ydb/core/load_test/keyvalue_write.cpp
@@ -4,9 +4,11 @@
#include <ydb/core/base/tablet_pipe.h>
#include <ydb/core/blobstorage/pdisk/blobstorage_pdisk.h>
#include <ydb/core/blobstorage/base/blobstorage_events.h>
+#include <ydb/core/control/immediate_control_board_impl.h>
#include <ydb/core/keyvalue/keyvalue_events.h>
#include <library/cpp/monlib/service/pages/templates.h>
+#include <library/cpp/time_provider/time_provider.h>
#include <util/random/fast.h>
#include <util/generic/queue.h>
diff --git a/ydb/core/load_test/kqp.cpp b/ydb/core/load_test/kqp.cpp
index ddfe4d36aa..ba177cb477 100644
--- a/ydb/core/load_test/kqp.cpp
+++ b/ydb/core/load_test/kqp.cpp
@@ -12,6 +12,7 @@
#include <library/cpp/monlib/service/pages/templates.h>
#include <library/cpp/histogram/hdr/histogram.h>
+#include <library/cpp/time_provider/time_provider.h>
#include <util/generic/queue.h>
#include <util/random/fast.h>
diff --git a/ydb/core/load_test/memory.cpp b/ydb/core/load_test/memory.cpp
index a9ecad4ce6..de9b2c20cc 100644
--- a/ydb/core/load_test/memory.cpp
+++ b/ydb/core/load_test/memory.cpp
@@ -3,6 +3,8 @@
#include <ydb/core/base/appdata.h>
#include <library/cpp/monlib/service/pages/templates.h>
+#include <library/cpp/time_provider/time_provider.h>
+
namespace NKikimr {
diff --git a/ydb/core/load_test/pdisk_log.cpp b/ydb/core/load_test/pdisk_log.cpp
index 46e7fcb8e1..a4abfb6fe7 100644
--- a/ydb/core/load_test/pdisk_log.cpp
+++ b/ydb/core/load_test/pdisk_log.cpp
@@ -3,10 +3,13 @@
#include <ydb/core/base/counters.h>
#include <ydb/core/blobstorage/pdisk/blobstorage_pdisk.h>
#include <ydb/core/blobstorage/base/blobstorage_events.h>
+#include <ydb/core/control/immediate_control_board_impl.h>
#include <library/cpp/monlib/service/pages/templates.h>
+#include <library/cpp/time_provider/time_provider.h>
#include <util/random/fast.h>
#include <util/generic/queue.h>
+
namespace NKikimr {
class TPDiskLogWriterLoadTestActor;
diff --git a/ydb/core/load_test/pdisk_read.cpp b/ydb/core/load_test/pdisk_read.cpp
index 583f1126dd..739f515175 100644
--- a/ydb/core/load_test/pdisk_read.cpp
+++ b/ydb/core/load_test/pdisk_read.cpp
@@ -6,6 +6,7 @@
#include <ydb/core/blobstorage/pdisk/blobstorage_pdisk.h>
#include <ydb/core/blobstorage/base/blobstorage_events.h>
#include <library/cpp/monlib/service/pages/templates.h>
+#include <library/cpp/time_provider/time_provider.h>
#include <util/random/fast.h>
#include <util/generic/queue.h>
diff --git a/ydb/core/load_test/pdisk_write.cpp b/ydb/core/load_test/pdisk_write.cpp
index 428961ffce..05bad044c1 100644
--- a/ydb/core/load_test/pdisk_write.cpp
+++ b/ydb/core/load_test/pdisk_write.cpp
@@ -4,8 +4,10 @@
#include <ydb/core/blobstorage/pdisk/blobstorage_pdisk.h>
#include <ydb/core/blobstorage/base/blobstorage_events.h>
#include <library/cpp/monlib/service/pages/templates.h>
+#include <library/cpp/time_provider/time_provider.h>
#include <util/random/fast.h>
#include <util/generic/queue.h>
+#include <ydb/core/control/immediate_control_board_impl.h>
namespace NKikimr {
diff --git a/ydb/core/load_test/service_actor.cpp b/ydb/core/load_test/service_actor.cpp
index ad05d51bd4..a6b2084845 100644
--- a/ydb/core/load_test/service_actor.cpp
+++ b/ydb/core/load_test/service_actor.cpp
@@ -7,6 +7,7 @@
#include <ydb/core/base/appdata.h>
#include <ydb/core/base/counters.h>
+#include <ydb/core/base/domain.h>
#include <ydb/core/base/statestorage.h>
#include <ydb/core/blobstorage/base/blobstorage_events.h>
#include <ydb/core/load_test/ycsb/test_load_actor.h>
@@ -18,8 +19,10 @@
#include <library/cpp/json/json_writer.h>
#include <library/cpp/json/writer/json_value.h>
#include <library/cpp/monlib/service/pages/templates.h>
+#include <library/cpp/time_provider/time_provider.h>
#include <google/protobuf/text_format.h>
+#include <google/protobuf/util/json_util.h>
#include <util/generic/algorithm.h>
#include <util/generic/guid.h>
diff --git a/ydb/core/mind/bscontroller/cmds_storage_pool.cpp b/ydb/core/mind/bscontroller/cmds_storage_pool.cpp
index c85935ea31..3264926d3d 100644
--- a/ydb/core/mind/bscontroller/cmds_storage_pool.cpp
+++ b/ydb/core/mind/bscontroller/cmds_storage_pool.cpp
@@ -1,4 +1,6 @@
#include "config.h"
+#include <ydb/core/base/nameservice.h>
+
namespace NKikimr::NBsController {
diff --git a/ydb/core/mind/bscontroller/migrate.cpp b/ydb/core/mind/bscontroller/migrate.cpp
index 36bb635c5e..b70bbb9ad0 100644
--- a/ydb/core/mind/bscontroller/migrate.cpp
+++ b/ydb/core/mind/bscontroller/migrate.cpp
@@ -1,4 +1,6 @@
#include "impl.h"
+#include <ydb/core/base/feature_flags.h>
+
namespace NKikimr {
namespace NBsController {
diff --git a/ydb/core/mind/bscontroller/monitoring.cpp b/ydb/core/mind/bscontroller/monitoring.cpp
index 7a67a918bc..3b68126835 100644
--- a/ydb/core/mind/bscontroller/monitoring.cpp
+++ b/ydb/core/mind/bscontroller/monitoring.cpp
@@ -1,6 +1,8 @@
#include "impl.h"
#include <library/cpp/json/json_writer.h>
+#include <google/protobuf/util/json_util.h>
+
namespace NKikimr {
namespace NBsController {
diff --git a/ydb/core/mind/bscontroller/sys_view.cpp b/ydb/core/mind/bscontroller/sys_view.cpp
index 58a4b1f2a4..f37a03c6a0 100644
--- a/ydb/core/mind/bscontroller/sys_view.cpp
+++ b/ydb/core/mind/bscontroller/sys_view.cpp
@@ -2,6 +2,7 @@
#include "group_geometry_info.h"
#include "storage_stats_calculator.h"
+#include <ydb/core/base/feature_flags.h>
#include <ydb/core/blobstorage/base/utility.h>
namespace NKikimr::NBsController {
diff --git a/ydb/core/mind/dynamic_nameserver.cpp b/ydb/core/mind/dynamic_nameserver.cpp
index 571ffc7494..7b2b103859 100644
--- a/ydb/core/mind/dynamic_nameserver.cpp
+++ b/ydb/core/mind/dynamic_nameserver.cpp
@@ -1,6 +1,7 @@
#include "dynamic_nameserver_impl.h"
#include <ydb/core/base/appdata.h>
+#include <ydb/core/base/nameservice.h>
#include <ydb/core/mon/mon.h>
#include <ydb/library/services/services.pb.h>
diff --git a/ydb/core/mind/dynamic_nameserver_mon.cpp b/ydb/core/mind/dynamic_nameserver_mon.cpp
index 782f766130..f22f92f2a9 100644
--- a/ydb/core/mind/dynamic_nameserver_mon.cpp
+++ b/ydb/core/mind/dynamic_nameserver_mon.cpp
@@ -1,6 +1,8 @@
#include "dynamic_nameserver_impl.h"
#include <ydb/core/base/appdata.h>
+#include <ydb/core/base/domain.h>
+#include <ydb/core/base/nameservice.h>
#include <ydb/core/base/location.h>
#include <library/cpp/monlib/service/pages/templates.h>
diff --git a/ydb/core/mind/hive/balancer.cpp b/ydb/core/mind/hive/balancer.cpp
index cf8753afbf..894cc259d8 100644
--- a/ydb/core/mind/hive/balancer.cpp
+++ b/ydb/core/mind/hive/balancer.cpp
@@ -1,5 +1,6 @@
#include <random>
#include <library/cpp/actors/core/actor_bootstrapped.h>
+#include <library/cpp/random_provider/random_provider.h>
#include "hive_impl.h"
#include "hive_log.h"
#include "node_info.h"
diff --git a/ydb/core/mind/hive/hive_impl.cpp b/ydb/core/mind/hive/hive_impl.cpp
index 2034028f48..8dcc59015c 100644
--- a/ydb/core/mind/hive/hive_impl.cpp
+++ b/ydb/core/mind/hive/hive_impl.cpp
@@ -6,6 +6,8 @@
#include <ydb/core/util/tuples.h>
#include <ydb/library/yverify_stream/yverify_stream.h>
#include <library/cpp/actors/interconnect/interconnect.h>
+#include <library/cpp/random_provider/random_provider.h>
+#include <library/cpp/time_provider/time_provider.h>
#include <util/generic/array_ref.h>
template <>
diff --git a/ydb/core/mind/hive/leader_tablet_info.h b/ydb/core/mind/hive/leader_tablet_info.h
index a1c3eb3ebb..ca9ce963e1 100644
--- a/ydb/core/mind/hive/leader_tablet_info.h
+++ b/ydb/core/mind/hive/leader_tablet_info.h
@@ -3,6 +3,7 @@
#include "hive.h"
#include "tablet_info.h"
#include "follower_tablet_info.h"
+#include <ydb/core/base/channel_profiles.h>
namespace NKikimr {
namespace NHive {
diff --git a/ydb/core/mind/hive/storage_pool_info.cpp b/ydb/core/mind/hive/storage_pool_info.cpp
index 7eac42428c..0abc309089 100644
--- a/ydb/core/mind/hive/storage_pool_info.cpp
+++ b/ydb/core/mind/hive/storage_pool_info.cpp
@@ -1,5 +1,6 @@
#include "storage_pool_info.h"
#include "hive_impl.h"
+#include <library/cpp/random_provider/random_provider.h>
namespace NKikimr {
namespace NHive {
diff --git a/ydb/core/mind/hive/tablet_move_info.cpp b/ydb/core/mind/hive/tablet_move_info.cpp
index ca2c290b17..ab7e1f3206 100644
--- a/ydb/core/mind/hive/tablet_move_info.cpp
+++ b/ydb/core/mind/hive/tablet_move_info.cpp
@@ -1,5 +1,5 @@
#include "hive_impl.h"
-
+#include <library/cpp/random_provider/random_provider.h>
#include <random>
namespace NKikimr {
diff --git a/ydb/core/mind/lease_holder.cpp b/ydb/core/mind/lease_holder.cpp
index 6fd6b9a853..cfcedf4a0e 100644
--- a/ydb/core/mind/lease_holder.cpp
+++ b/ydb/core/mind/lease_holder.cpp
@@ -5,6 +5,7 @@
#include <library/cpp/actors/core/hfunc.h>
#include <ydb/core/mon/mon.h>
#include <library/cpp/actors/core/mon.h>
+#include <library/cpp/actors/util/should_continue.h>
#include <ydb/core/base/appdata.h>
#include <ydb/core/base/tablet_pipe.h>
diff --git a/ydb/core/mind/local.cpp b/ydb/core/mind/local.cpp
index 089e20413f..53fd20f7c0 100644
--- a/ydb/core/mind/local.cpp
+++ b/ydb/core/mind/local.cpp
@@ -3,6 +3,7 @@
#include <ydb/core/base/appdata.h>
#include <ydb/core/base/counters.h>
#include <ydb/core/base/hive.h>
+#include <ydb/core/base/domain.h>
#include <ydb/core/base/tablet_pipe.h>
#include <ydb/core/node_whiteboard/node_whiteboard.h>
#include <ydb/library/services/services.pb.h>
diff --git a/ydb/core/mind/node_broker.cpp b/ydb/core/mind/node_broker.cpp
index be45b5baea..d3aa1a9b27 100644
--- a/ydb/core/mind/node_broker.cpp
+++ b/ydb/core/mind/node_broker.cpp
@@ -3,6 +3,8 @@
#include <ydb/core/actorlib_impl/long_timer.h>
#include <ydb/core/base/appdata.h>
+#include <ydb/core/base/feature_flags.h>
+#include <ydb/core/base/nameservice.h>
#include <ydb/core/base/path.h>
#include <ydb/core/cms/console/config_helpers.h>
#include <ydb/core/protos/node_broker.pb.h>
diff --git a/ydb/core/mind/tenant_node_enumeration.cpp b/ydb/core/mind/tenant_node_enumeration.cpp
index 045cefe738..432de5b930 100644
--- a/ydb/core/mind/tenant_node_enumeration.cpp
+++ b/ydb/core/mind/tenant_node_enumeration.cpp
@@ -3,6 +3,7 @@
#include <ydb/core/base/appdata.h>
#include <ydb/core/base/statestorage.h>
#include <ydb/core/base/path.h>
+#include <ydb/core/base/domain.h>
#include <library/cpp/actors/core/actor_bootstrapped.h>
#include <library/cpp/actors/core/hfunc.h>
#include <util/generic/algorithm.h>
diff --git a/ydb/core/mind/tenant_pool.cpp b/ydb/core/mind/tenant_pool.cpp
index d3cc74619d..e54834aff8 100644
--- a/ydb/core/mind/tenant_pool.cpp
+++ b/ydb/core/mind/tenant_pool.cpp
@@ -3,6 +3,7 @@
#include "tenant_slot_broker.h"
#include <ydb/core/base/appdata.h>
+#include <ydb/core/base/domain.h>
#include <ydb/core/base/counters.h>
#include <ydb/core/base/subdomain.h>
#include <ydb/core/base/tabletid.h>
@@ -10,6 +11,7 @@
#include <ydb/core/node_whiteboard/node_whiteboard.h>
#include <ydb/core/cms/console/configs_dispatcher.h>
#include <ydb/core/cms/console/console.h>
+#include <ydb/core/protos/config.pb.h>
#include <ydb/core/mon/mon.h>
#include <library/cpp/actors/core/actor_bootstrapped.h>
diff --git a/ydb/core/mind/tenant_pool.h b/ydb/core/mind/tenant_pool.h
index b32091211e..052066f2dd 100644
--- a/ydb/core/mind/tenant_pool.h
+++ b/ydb/core/mind/tenant_pool.h
@@ -7,6 +7,10 @@
#include <util/generic/hash.h>
#include <util/generic/ptr.h>
+namespace NKikimrConfig{
+ class TMonitoringConfig;
+}
+
namespace NKikimr {
struct TEvTenantPool {
diff --git a/ydb/core/mind/tenant_slot_broker.cpp b/ydb/core/mind/tenant_slot_broker.cpp
index 552a32a68a..f4e6472ac8 100644
--- a/ydb/core/mind/tenant_slot_broker.cpp
+++ b/ydb/core/mind/tenant_slot_broker.cpp
@@ -2,6 +2,8 @@
#include <ydb/core/base/counters.h>
#include <ydb/core/cms/console/config_helpers.h>
+#include <ydb/core/base/domain.h>
+#include <ydb/core/base/nameservice.h>
#include <library/cpp/monlib/service/pages/templates.h>
diff --git a/ydb/core/mind/tenant_slot_broker__load_state.cpp b/ydb/core/mind/tenant_slot_broker__load_state.cpp
index 2cfd9d16d5..54944cf8dd 100644
--- a/ydb/core/mind/tenant_slot_broker__load_state.cpp
+++ b/ydb/core/mind/tenant_slot_broker__load_state.cpp
@@ -2,6 +2,8 @@
#include <ydb/core/base/appdata.h>
#include <library/cpp/actors/interconnect/interconnect.h>
+#include <library/cpp/random_provider/random_provider.h>
+
namespace NKikimr {
namespace NTenantSlotBroker {
diff --git a/ydb/core/mon_alloc/monitor.cpp b/ydb/core/mon_alloc/monitor.cpp
index 61c30437d9..f9f2f2f6e3 100644
--- a/ydb/core/mon_alloc/monitor.cpp
+++ b/ydb/core/mon_alloc/monitor.cpp
@@ -4,6 +4,7 @@
#include <ydb/core/base/counters.h>
#include <ydb/core/base/appdata.h>
#include <ydb/core/mon/mon.h>
+#include <ydb/library/services/services.pb.h>
#include <library/cpp/actors/core/actor_bootstrapped.h>
#include <library/cpp/actors/core/hfunc.h>
@@ -19,6 +20,8 @@
#include <util/datetime/base.h>
#include <util/generic/hash.h>
#include <util/stream/str.h>
+#include <util/stream/file.h>
+
namespace NKikimr {
using TDynamicCountersPtr = TIntrusivePtr<::NMonitoring::TDynamicCounters>;
diff --git a/ydb/core/persqueue/partition_write.cpp b/ydb/core/persqueue/partition_write.cpp
index 1b44e31cb2..528dbc18cf 100644
--- a/ydb/core/persqueue/partition_write.cpp
+++ b/ydb/core/persqueue/partition_write.cpp
@@ -7,6 +7,7 @@
#include <ydb/core/base/appdata.h>
#include <ydb/core/base/blobstorage.h>
#include <ydb/core/base/counters.h>
+#include <ydb/core/base/feature_flags.h>
#include <ydb/core/base/path.h>
#include <ydb/core/quoter/public/quoter.h>
#include <ydb/core/persqueue/writer/source_id_encoding.h>
diff --git a/ydb/core/persqueue/pq_impl.cpp b/ydb/core/persqueue/pq_impl.cpp
index b8f76ed2a4..9d79ec3440 100644
--- a/ydb/core/persqueue/pq_impl.cpp
+++ b/ydb/core/persqueue/pq_impl.cpp
@@ -4,6 +4,7 @@
#include "partition.h"
#include "read.h"
#include <ydb/core/base/tx_processing.h>
+#include <ydb/core/base/feature_flags.h>
#include <ydb/core/persqueue/config/config.h>
#include <ydb/core/persqueue/partition_key_range/partition_key_range.h>
#include <ydb/core/persqueue/writer/source_id_encoding.h>
diff --git a/ydb/core/persqueue/read_balancer.cpp b/ydb/core/persqueue/read_balancer.cpp
index 2b76fcb48c..00b6ac32f8 100644
--- a/ydb/core/persqueue/read_balancer.cpp
+++ b/ydb/core/persqueue/read_balancer.cpp
@@ -2,10 +2,11 @@
#include <ydb/core/persqueue/events/internal.h>
#include <ydb/core/protos/counters_pq.pb.h>
+#include <ydb/core/base/feature_flags.h>
#include <ydb/core/tablet/tablet_exception.h>
#include <library/cpp/monlib/service/pages/templates.h>
#include <library/cpp/string_utils/base64/base64.h>
-
+#include <library/cpp/random_provider/random_provider.h>
namespace NKikimr {
namespace NPQ {
diff --git a/ydb/core/security/ticket_parser_impl.h b/ydb/core/security/ticket_parser_impl.h
index e3c1ee708f..c7c5229853 100644
--- a/ydb/core/security/ticket_parser_impl.h
+++ b/ydb/core/security/ticket_parser_impl.h
@@ -11,6 +11,7 @@
#include <ydb/library/ycloud/impl/access_service.h>
#include <ydb/library/ycloud/impl/grpc_service_cache.h>
#include <ydb/core/base/counters.h>
+#include <ydb/core/base/domain.h>
#include <ydb/core/mon/mon.h>
#include <ydb/core/base/appdata.h>
#include <ydb/core/base/ticket_parser.h>
diff --git a/ydb/core/sys_view/processor/db_counters.cpp b/ydb/core/sys_view/processor/db_counters.cpp
index d8cd30904d..3cbf5a65b3 100644
--- a/ydb/core/sys_view/processor/db_counters.cpp
+++ b/ydb/core/sys_view/processor/db_counters.cpp
@@ -2,6 +2,7 @@
#include <ydb/core/base/counters.h>
#include <ydb/core/base/path.h>
+#include <ydb/core/base/feature_flags.h>
#include <ydb/core/grpc_services/counters/counters.h>
#include <ydb/core/grpc_services/counters/proxy_counters.h>
#include <ydb/core/kqp/counters/kqp_counters.h>
diff --git a/ydb/core/sys_view/processor/processor_impl.cpp b/ydb/core/sys_view/processor/processor_impl.cpp
index 462bc4ead5..e46d4fc565 100644
--- a/ydb/core/sys_view/processor/processor_impl.cpp
+++ b/ydb/core/sys_view/processor/processor_impl.cpp
@@ -4,6 +4,8 @@
#include <ydb/core/engine/minikql/flat_local_tx_factory.h>
#include <library/cpp/monlib/service/pages/templates.h>
+#include <google/protobuf/text_format.h>
+
namespace NKikimr {
namespace NSysView {
diff --git a/ydb/core/sys_view/processor/tx_init.cpp b/ydb/core/sys_view/processor/tx_init.cpp
index 11ddac0755..dbb48e4f78 100644
--- a/ydb/core/sys_view/processor/tx_init.cpp
+++ b/ydb/core/sys_view/processor/tx_init.cpp
@@ -1,4 +1,5 @@
#include "processor_impl.h"
+#include <ydb/core/base/feature_flags.h>
namespace NKikimr {
namespace NSysView {
diff --git a/ydb/core/sys_view/processor/tx_init_schema.cpp b/ydb/core/sys_view/processor/tx_init_schema.cpp
index 8a1df28d68..6911994eb1 100644
--- a/ydb/core/sys_view/processor/tx_init_schema.cpp
+++ b/ydb/core/sys_view/processor/tx_init_schema.cpp
@@ -1,4 +1,5 @@
#include "processor_impl.h"
+#include <ydb/core/base/feature_flags.h>
namespace NKikimr {
namespace NSysView {
diff --git a/ydb/core/sys_view/query_stats/query_stats.cpp b/ydb/core/sys_view/query_stats/query_stats.cpp
index f8d248cd23..62a084526c 100644
--- a/ydb/core/sys_view/query_stats/query_stats.cpp
+++ b/ydb/core/sys_view/query_stats/query_stats.cpp
@@ -1,6 +1,7 @@
#include "query_stats.h"
#include <ydb/core/base/appdata.h>
+#include <ydb/core/base/feature_flags.h>
#include <ydb/core/sys_view/common/common.h>
#include <ydb/core/sys_view/common/events.h>
#include <ydb/core/sys_view/common/keys.h>
diff --git a/ydb/core/sys_view/service/ext_counters.cpp b/ydb/core/sys_view/service/ext_counters.cpp
index 020a3a223d..6ae93107db 100644
--- a/ydb/core/sys_view/service/ext_counters.cpp
+++ b/ydb/core/sys_view/service/ext_counters.cpp
@@ -2,6 +2,9 @@
#include <ydb/core/base/appdata.h>
#include <ydb/core/base/counters.h>
+#include <ydb/library/services/services.pb.h>
+#include <library/cpp/actors/core/actor_bootstrapped.h>
+
namespace NKikimr {
namespace NSysView {
diff --git a/ydb/core/sys_view/service/sysview_service.cpp b/ydb/core/sys_view/service/sysview_service.cpp
index 82d8d85a92..ee12cdb1d6 100644
--- a/ydb/core/sys_view/service/sysview_service.cpp
+++ b/ydb/core/sys_view/service/sysview_service.cpp
@@ -7,6 +7,7 @@
#include <ydb/core/sys_view/common/events.h>
#include <ydb/core/base/path.h>
#include <ydb/core/base/appdata.h>
+#include <ydb/core/base/feature_flags.h>
#include <ydb/core/base/tablet_pipecache.h>
#include <ydb/core/tablet/tablet_counters_aggregator.h>
#include <ydb/core/tx/scheme_cache/scheme_cache.h>
@@ -14,6 +15,8 @@
#include <library/cpp/actors/core/actor_bootstrapped.h>
#include <library/cpp/actors/core/hfunc.h>
#include <library/cpp/actors/core/log.h>
+#include <library/cpp/time_provider/time_provider.h>
+
using namespace NActors;
diff --git a/ydb/core/tablet/bootstrapper.cpp b/ydb/core/tablet/bootstrapper.cpp
index 383233683a..d0e17cf012 100644
--- a/ydb/core/tablet/bootstrapper.cpp
+++ b/ydb/core/tablet/bootstrapper.cpp
@@ -6,6 +6,7 @@
#include <library/cpp/actors/core/interconnect.h>
#include <library/cpp/actors/core/hfunc.h>
+#include <library/cpp/random_provider/random_provider.h>
#include <ydb/core/protos/bootstrapper.pb.h>
diff --git a/ydb/core/tablet/node_tablet_monitor.cpp b/ydb/core/tablet/node_tablet_monitor.cpp
index 15d147575c..6c8b40f71b 100644
--- a/ydb/core/tablet/node_tablet_monitor.cpp
+++ b/ydb/core/tablet/node_tablet_monitor.cpp
@@ -4,6 +4,7 @@
#include <library/cpp/actors/interconnect/interconnect.h>
#include <ydb/core/mon/mon.h>
#include <library/cpp/actors/core/mon.h>
+#include <ydb/core/base/domain.h>
#include <ydb/core/base/appdata.h>
#include <library/cpp/monlib/service/pages/templates.h>
#include <library/cpp/actors/core/interconnect.h>
diff --git a/ydb/core/tablet/node_whiteboard.cpp b/ydb/core/tablet/node_whiteboard.cpp
index 36c8bb9f51..e512d5a7ef 100644
--- a/ydb/core/tablet/node_whiteboard.cpp
+++ b/ydb/core/tablet/node_whiteboard.cpp
@@ -8,6 +8,7 @@
#include <library/cpp/actors/core/hfunc.h>
#include <library/cpp/actors/core/process_stats.h>
#include <ydb/core/node_whiteboard/node_whiteboard.h>
+#include <ydb/core/base/nameservice.h>
#include "tablet_counters.h"
#include <ydb/core/base/counters.h>
#include <ydb/core/util/tuples.h>
diff --git a/ydb/core/tablet/resource_broker_impl.h b/ydb/core/tablet/resource_broker_impl.h
index 6680d87272..64f00c0ef4 100644
--- a/ydb/core/tablet/resource_broker_impl.h
+++ b/ydb/core/tablet/resource_broker_impl.h
@@ -4,7 +4,9 @@
#include <ydb/core/mon/mon.h>
#include <ydb/core/base/appdata.h>
+#include <ydb/library/services/services.pb.h>
+#include <library/cpp/actors/core/actor_bootstrapped.h>
#include <library/cpp/actors/core/hfunc.h>
#include <util/generic/ptr.h>
diff --git a/ydb/core/tablet/tablet_counters_aggregator.cpp b/ydb/core/tablet/tablet_counters_aggregator.cpp
index 40c44f9163..bde083ae8e 100644
--- a/ydb/core/tablet/tablet_counters_aggregator.cpp
+++ b/ydb/core/tablet/tablet_counters_aggregator.cpp
@@ -10,7 +10,9 @@
#include <library/cpp/actors/core/mon.h>
#include <library/cpp/actors/core/interconnect.h>
#include <library/cpp/actors/interconnect/interconnect.h>
+#include <library/cpp/time_provider/time_provider.h>
#include <ydb/core/base/tablet_resolver.h>
+#include <ydb/core/base/feature_flags.h>
#include <ydb/core/base/tablet_pipe.h>
#include <ydb/core/base/appdata.h>
#include <ydb/core/base/counters.h>
diff --git a/ydb/core/tablet/tablet_monitoring_proxy.cpp b/ydb/core/tablet/tablet_monitoring_proxy.cpp
index 23791e4915..3cf4530fde 100644
--- a/ydb/core/tablet/tablet_monitoring_proxy.cpp
+++ b/ydb/core/tablet/tablet_monitoring_proxy.cpp
@@ -7,6 +7,7 @@
#include <ydb/core/base/tablet_pipe.h>
#include <ydb/core/base/statestorage.h>
#include <ydb/core/base/appdata.h>
+#include <ydb/core/base/domain.h>
#include <ydb/core/node_whiteboard/node_whiteboard.h>
#include <ydb/core/base/tablet.h>
#include <ydb/core/tx/tx.h>
diff --git a/ydb/core/tablet/tablet_pipe_client.cpp b/ydb/core/tablet/tablet_pipe_client.cpp
index e727420157..d7ddcef5fe 100644
--- a/ydb/core/tablet/tablet_pipe_client.cpp
+++ b/ydb/core/tablet/tablet_pipe_client.cpp
@@ -7,8 +7,11 @@
#include <ydb/library/services/services.pb.h>
#include <ydb/core/base/tablet_resolver.h>
#include <ydb/core/base/hive.h>
+#include <ydb/core/base/domain.h>
#include <ydb/core/base/appdata.h>
#include <library/cpp/actors/util/queue_oneone_inplace.h>
+#include <library/cpp/random_provider/random_provider.h>
+
#if defined BLOG_D || defined BLOG_I || defined BLOG_ERROR
#error log macro definition clash
diff --git a/ydb/core/tablet/tablet_resolver.cpp b/ydb/core/tablet/tablet_resolver.cpp
index f1f55121d1..1af4a0410e 100644
--- a/ydb/core/tablet/tablet_resolver.cpp
+++ b/ydb/core/tablet/tablet_resolver.cpp
@@ -14,6 +14,8 @@
#include <ydb/core/util/queue_oneone_inplace.h>
#include <util/generic/map.h>
#include <util/generic/deque.h>
+#include <library/cpp/random_provider/random_provider.h>
+
namespace NKikimr {
diff --git a/ydb/core/tablet/tablet_responsiveness_pinger.cpp b/ydb/core/tablet/tablet_responsiveness_pinger.cpp
index 0f0e779e8d..39227136f8 100644
--- a/ydb/core/tablet/tablet_responsiveness_pinger.cpp
+++ b/ydb/core/tablet/tablet_responsiveness_pinger.cpp
@@ -1,5 +1,7 @@
#include "tablet_responsiveness_pinger.h"
#include <ydb/core/base/appdata.h>
+#include <library/cpp/time_provider/time_provider.h>
+
namespace NKikimr {
diff --git a/ydb/core/tablet/tablet_setup.h b/ydb/core/tablet/tablet_setup.h
index 57ea7d6edb..f1146463ab 100644
--- a/ydb/core/tablet/tablet_setup.h
+++ b/ydb/core/tablet/tablet_setup.h
@@ -3,6 +3,7 @@
#include <ydb/core/base/appdata.h>
#include <ydb/core/base/shared_quota.h>
#include <ydb/core/base/tablet_types.h>
+#include <ydb/core/base/resource_profile.h>
#include <functional>
namespace NKikimr {
diff --git a/ydb/core/tablet/tablet_sys.cpp b/ydb/core/tablet/tablet_sys.cpp
index 5eb00aecf0..2988504c09 100644
--- a/ydb/core/tablet/tablet_sys.cpp
+++ b/ydb/core/tablet/tablet_sys.cpp
@@ -7,6 +7,7 @@
#include <ydb/library/services/services.pb.h>
#include <library/cpp/actors/core/log.h>
+#include <library/cpp/time_provider/time_provider.h>
#include <util/generic/deque.h>
#include <util/generic/hash.h>
diff --git a/ydb/core/tablet_flat/flat_executor.cpp b/ydb/core/tablet_flat/flat_executor.cpp
index ca521aa020..6297b0f008 100644
--- a/ydb/core/tablet_flat/flat_executor.cpp
+++ b/ydb/core/tablet_flat/flat_executor.cpp
@@ -37,6 +37,7 @@
#include <library/cpp/monlib/service/pages/templates.h>
#include <library/cpp/actors/core/hfunc.h>
+#include <library/cpp/actors/core/monotonic_provider.h>
#include <util/generic/xrange.h>
#include <util/generic/ymath.h>
diff --git a/ydb/core/tablet_flat/flat_executor_bootlogic.cpp b/ydb/core/tablet_flat/flat_executor_bootlogic.cpp
index 05980cef08..d2bd921fbb 100644
--- a/ydb/core/tablet_flat/flat_executor_bootlogic.cpp
+++ b/ydb/core/tablet_flat/flat_executor_bootlogic.cpp
@@ -15,6 +15,8 @@
#include <ydb/core/base/appdata.h>
#include <ydb/core/base/counters.h>
#include <ydb/core/util/pb.h>
+#include <library/cpp/actors/core/monotonic_provider.h>
+
namespace NKikimr {
namespace NTabletFlatExecutor {
diff --git a/ydb/core/tx/columnshard/counters/blobs_manager.cpp b/ydb/core/tx/columnshard/counters/blobs_manager.cpp
index e4c290f7cd..8e67ada393 100644
--- a/ydb/core/tx/columnshard/counters/blobs_manager.cpp
+++ b/ydb/core/tx/columnshard/counters/blobs_manager.cpp
@@ -1,6 +1,7 @@
#include "blobs_manager.h"
#include <ydb/core/base/appdata.h>
#include <ydb/core/base/counters.h>
+#include <ydb/library/services/services.pb.h>
namespace NKikimr::NColumnShard {
diff --git a/ydb/core/tx/columnshard/engines/column_engine_logs.cpp b/ydb/core/tx/columnshard/engines/column_engine_logs.cpp
index 5de9690781..5afcfb28f7 100644
--- a/ydb/core/tx/columnshard/engines/column_engine_logs.cpp
+++ b/ydb/core/tx/columnshard/engines/column_engine_logs.cpp
@@ -13,6 +13,9 @@
#include "changes/cleanup.h"
#include "changes/ttl.h"
+#include <library/cpp/time_provider/time_provider.h>
+#include <library/cpp/actors/core/monotonic_provider.h>
+
#include <concepts>
namespace NKikimr::NOlap {
diff --git a/ydb/core/tx/coordinator/coordinator_impl.cpp b/ydb/core/tx/coordinator/coordinator_impl.cpp
index a5c2882059..76f44b55b8 100644
--- a/ydb/core/tx/coordinator/coordinator_impl.cpp
+++ b/ydb/core/tx/coordinator/coordinator_impl.cpp
@@ -1,5 +1,6 @@
#include "coordinator_impl.h"
#include "coordinator_state.h"
+#include <ydb/core/control/immediate_control_board_impl.h>
#include <ydb/core/engine/minikql/flat_local_tx_factory.h>
#include <ydb/core/tablet/tablet_counters_protobuf.h>
#include <ydb/core/tablet/tablet_counters_aggregator.h>
@@ -9,6 +10,8 @@
#include <ydb/library/services/services.pb.h>
#include <ydb/core/tx/tx.h>
+#include <library/cpp/time_provider/time_provider.h>
+#include <library/cpp/actors/core/monotonic_provider.h>
#include <library/cpp/actors/interconnect/interconnect.h>
namespace NKikimr {
diff --git a/ydb/core/tx/coordinator/coordinator_state.cpp b/ydb/core/tx/coordinator/coordinator_state.cpp
index 8426f477ff..2a09309387 100644
--- a/ydb/core/tx/coordinator/coordinator_state.cpp
+++ b/ydb/core/tx/coordinator/coordinator_state.cpp
@@ -2,6 +2,8 @@
#include "coordinator_impl.h"
#include <library/cpp/actors/core/interconnect.h>
+#include <library/cpp/time_provider/time_provider.h>
+
namespace NKikimr::NFlatTxCoordinator {
diff --git a/ydb/core/tx/long_tx_service/long_tx_service_impl.cpp b/ydb/core/tx/long_tx_service/long_tx_service_impl.cpp
index 9ed13192b9..9013dda8cd 100644
--- a/ydb/core/tx/long_tx_service/long_tx_service_impl.cpp
+++ b/ydb/core/tx/long_tx_service/long_tx_service_impl.cpp
@@ -2,7 +2,9 @@
#include "lwtrace_probes.h"
#include <ydb/core/base/appdata.h>
+#include <ydb/core/base/domain.h>
#include <library/cpp/actors/core/log.h>
+#include <library/cpp/actors/core/actor.h>
#include <util/string/builder.h>
#define TXLOG_LOG(priority, stream) \
diff --git a/ydb/core/tx/mediator/mediator_impl.cpp b/ydb/core/tx/mediator/mediator_impl.cpp
index 83cf466784..79ffd1fc59 100644
--- a/ydb/core/tx/mediator/mediator_impl.cpp
+++ b/ydb/core/tx/mediator/mediator_impl.cpp
@@ -1,6 +1,7 @@
#include "mediator_impl.h"
#include <ydb/core/engine/minikql/flat_local_tx_factory.h>
+#include <library/cpp/time_provider/time_provider.h>
namespace NKikimr {
namespace NTxMediator {
diff --git a/ydb/core/tx/replication/service/service.cpp b/ydb/core/tx/replication/service/service.cpp
index bc9489a71d..6547d19d6f 100644
--- a/ydb/core/tx/replication/service/service.cpp
+++ b/ydb/core/tx/replication/service/service.cpp
@@ -2,6 +2,7 @@
#include <ydb/core/base/appdata.h>
#include <ydb/core/base/path.h>
+#include <ydb/core/base/domain.h>
#include <ydb/core/base/statestorage.h>
#include <library/cpp/actors/core/actor_bootstrapped.h>
diff --git a/ydb/core/tx/scheme_board/cache.cpp b/ydb/core/tx/scheme_board/cache.cpp
index 796deca27c..c712b0b56b 100644
--- a/ydb/core/tx/scheme_board/cache.cpp
+++ b/ydb/core/tx/scheme_board/cache.cpp
@@ -11,6 +11,7 @@
#include <ydb/core/base/domain.h>
#include <ydb/core/base/path.h>
#include <ydb/core/base/tabletid.h>
+#include <ydb/core/base/feature_flags.h>
#include <ydb/core/protos/flat_tx_scheme.pb.h>
#include <ydb/library/services/services.pb.h>
#include <ydb/core/scheme/scheme_tabledefs.h>
diff --git a/ydb/core/tx/scheme_board/monitoring.cpp b/ydb/core/tx/scheme_board/monitoring.cpp
index d88fa746c6..652c8f9738 100644
--- a/ydb/core/tx/scheme_board/monitoring.cpp
+++ b/ydb/core/tx/scheme_board/monitoring.cpp
@@ -4,6 +4,8 @@
#include <ydb/core/base/appdata.h>
#include <ydb/core/scheme/scheme_pathid.h>
#include <ydb/core/base/statestorage_impl.h>
+#include <ydb/core/base/tabletid.h>
+#include <ydb/core/base/domain.h>
#include <ydb/core/mon/mon.h>
#include <ydb/library/services/services.pb.h>
diff --git a/ydb/core/tx/scheme_board/subscriber.cpp b/ydb/core/tx/scheme_board/subscriber.cpp
index 9f03738ca5..712d6fc602 100644
--- a/ydb/core/tx/scheme_board/subscriber.cpp
+++ b/ydb/core/tx/scheme_board/subscriber.cpp
@@ -4,6 +4,7 @@
#include "subscriber.h"
#include <ydb/core/base/appdata.h>
+#include <ydb/core/base/domain.h>
#include <ydb/core/base/statestorage_impl.h>
#include <ydb/core/base/tabletid.h>
#include <ydb/core/protos/scheme_board.pb.h>
diff --git a/ydb/core/tx/schemeshard/operation_queue_timer.h b/ydb/core/tx/schemeshard/operation_queue_timer.h
index 432e7761c5..b036eccb38 100644
--- a/ydb/core/tx/schemeshard/operation_queue_timer.h
+++ b/ydb/core/tx/schemeshard/operation_queue_timer.h
@@ -7,6 +7,7 @@
#include <ydb/core/base/appdata.h>
#include <ydb/core/util/operation_queue.h>
+#include <library/cpp/actors/core/monotonic_provider.h>
#include <library/cpp/actors/core/log.h>
// TODO: TOperationQueueWithTimer is a good candidate for core/util, but since
diff --git a/ydb/core/tx/schemeshard/schemeshard_impl.h b/ydb/core/tx/schemeshard/schemeshard_impl.h
index 17e75315c1..8f5f729916 100644
--- a/ydb/core/tx/schemeshard/schemeshard_impl.h
+++ b/ydb/core/tx/schemeshard/schemeshard_impl.h
@@ -22,6 +22,7 @@
#include <ydb/core/base/hive.h>
#include <ydb/core/base/storage_pools.h>
#include <ydb/core/base/subdomain.h>
+#include <ydb/core/base/channel_profiles.h>
#include <ydb/core/base/tx_processing.h>
#include <ydb/core/cms/console/configs_dispatcher.h>
#include <ydb/core/cms/console/console.h>
diff --git a/ydb/core/tx/schemeshard/schemeshard_info_types.cpp b/ydb/core/tx/schemeshard/schemeshard_info_types.cpp
index 5df8ef8838..56dfe9eee4 100644
--- a/ydb/core/tx/schemeshard/schemeshard_info_types.cpp
+++ b/ydb/core/tx/schemeshard/schemeshard_info_types.cpp
@@ -6,12 +6,14 @@
#include <ydb/core/base/appdata.h>
#include <ydb/core/base/compile_time_flags.h>
#include <ydb/core/base/tx_processing.h>
+#include <ydb/core/base/channel_profiles.h>
#include <ydb/core/engine/minikql/flat_local_tx_factory.h>
#include <ydb/core/engine/mkql_proto.h>
#include <ydb/core/scheme/scheme_types_proto.h>
#include <ydb/core/tablet/tablet_counters_aggregator.h>
#include <ydb/core/tablet/tablet_counters_protobuf.h>
#include <ydb/core/util/pb.h>
+#include <ydb/core/protos/config.pb.h>
#include <ydb/library/yql/minikql/mkql_type_ops.h>
diff --git a/ydb/core/tx/schemeshard/schemeshard_info_types.h b/ydb/core/tx/schemeshard/schemeshard_info_types.h
index 44c59e4c14..0f746ccf06 100644
--- a/ydb/core/tx/schemeshard/schemeshard_info_types.h
+++ b/ydb/core/tx/schemeshard/schemeshard_info_types.h
@@ -33,6 +33,7 @@
#include <util/generic/ptr.h>
#include <util/generic/queue.h>
#include <util/generic/vector.h>
+#include <util/generic/guid.h>
namespace NKikimr {
namespace NSchemeShard {
diff --git a/ydb/core/tx/time_cast/time_cast.cpp b/ydb/core/tx/time_cast/time_cast.cpp
index 94d51f61a7..907436ef42 100644
--- a/ydb/core/tx/time_cast/time_cast.cpp
+++ b/ydb/core/tx/time_cast/time_cast.cpp
@@ -2,6 +2,7 @@
#include <library/cpp/actors/core/hfunc.h>
#include <library/cpp/actors/core/log.h>
+#include <library/cpp/random_provider/random_provider.h>
#include <ydb/core/base/tablet_pipecache.h>
#include <ydb/core/base/tx_processing.h>
#include <ydb/core/protos/subdomains.pb.h>
diff --git a/ydb/core/tx/tx_proxy/datareq.cpp b/ydb/core/tx/tx_proxy/datareq.cpp
index fedecfb43e..c5b49e633c 100644
--- a/ydb/core/tx/tx_proxy/datareq.cpp
+++ b/ydb/core/tx/tx_proxy/datareq.cpp
@@ -13,6 +13,7 @@
#include <ydb/core/base/tablet_pipecache.h>
#include <ydb/core/base/tx_processing.h>
#include <ydb/core/base/path.h>
+#include <ydb/core/protos/stream.pb.h>
#include <ydb/library/ydb_issue/issue_helpers.h>
#include <ydb/core/base/tx_processing.h>
#include <ydb/library/mkql_proto/protos/minikql.pb.h>
diff --git a/ydb/core/tx/tx_proxy/describe.cpp b/ydb/core/tx/tx_proxy/describe.cpp
index 184a3b235b..ac540f90c9 100644
--- a/ydb/core/tx/tx_proxy/describe.cpp
+++ b/ydb/core/tx/tx_proxy/describe.cpp
@@ -6,6 +6,7 @@
#include <ydb/core/scheme/scheme_types_proto.h>
#include <ydb/core/base/tablet_pipecache.h>
#include <ydb/core/base/appdata.h>
+#include <ydb/core/base/feature_flags.h>
#include <ydb/core/sys_view/common/schema.h>
#include <ydb/library/aclib/aclib.h>
diff --git a/ydb/core/tx/tx_proxy/read_table_impl.cpp b/ydb/core/tx/tx_proxy/read_table_impl.cpp
index 569154524b..6645208e76 100644
--- a/ydb/core/tx/tx_proxy/read_table_impl.cpp
+++ b/ydb/core/tx/tx_proxy/read_table_impl.cpp
@@ -5,6 +5,7 @@
#include <ydb/core/tx/tx_processing.h>
#include <ydb/core/actorlib_impl/long_timer.h>
+#include <ydb/core/protos/stream.pb.h>
#include <ydb/core/base/path.h>
#include <ydb/core/base/tablet_pipecache.h>
#include <ydb/core/scheme/scheme_borders.h>
diff --git a/ydb/core/tx/tx_proxy/upload_rows_common_impl.h b/ydb/core/tx/tx_proxy/upload_rows_common_impl.h
index e298109bb4..efc6023c9a 100644
--- a/ydb/core/tx/tx_proxy/upload_rows_common_impl.h
+++ b/ydb/core/tx/tx_proxy/upload_rows_common_impl.h
@@ -11,6 +11,7 @@
#include <ydb/core/base/tablet_pipecache.h>
#include <ydb/library/ydb_issue/issue_helpers.h>
#include <ydb/core/base/path.h>
+#include <ydb/core/base/feature_flags.h>
#include <ydb/core/scheme/scheme_tablecell.h>
#include <ydb/core/scheme/scheme_type_info.h>
#include <ydb/core/tx/datashard/datashard.h>
diff --git a/ydb/core/util/failure_injection.cpp b/ydb/core/util/failure_injection.cpp
index 610bcab37a..a752b45743 100644
--- a/ydb/core/util/failure_injection.cpp
+++ b/ydb/core/util/failure_injection.cpp
@@ -2,6 +2,7 @@
#include <ydb/core/base/appdata.h>
#include <ydb/core/protos/config.pb.h>
+#include <ydb/core/base/feature_flags.h>
#include <ydb/library/services/services.pb.h>
#include <library/cpp/monlib/service/pages/templates.h>
diff --git a/ydb/core/util/memory_tracker.cpp b/ydb/core/util/memory_tracker.cpp
index 6c9f192af5..8ee4746ae2 100644
--- a/ydb/core/util/memory_tracker.cpp
+++ b/ydb/core/util/memory_tracker.cpp
@@ -3,6 +3,7 @@
#include <ydb/core/base/appdata.h>
#include <ydb/core/base/counters.h>
#include <ydb/core/mon/mon.h>
+#include <ydb/library/services/services.pb.h>
#include <library/cpp/actors/core/actor_bootstrapped.h>
#include <library/cpp/actors/util/memory_tracker.h>
diff --git a/ydb/core/util/single_thread_ic_mock.cpp b/ydb/core/util/single_thread_ic_mock.cpp
index d2dd1382e0..662e2fab09 100644
--- a/ydb/core/util/single_thread_ic_mock.cpp
+++ b/ydb/core/util/single_thread_ic_mock.cpp
@@ -1,6 +1,12 @@
#include "single_thread_ic_mock.h"
#include "testactorsys.h"
#include "stlog.h"
+#include <ydb/core/control/immediate_control_board_impl.h>
+#include <ydb/core/grpc_services/grpc_helper.h>
+#include <ydb/core/base/feature_flags.h>
+#include <ydb/core/base/nameservice.h>
+#include <ydb/core/base/channel_profiles.h>
+#include <ydb/core/base/domain.h>
using namespace NActors;
using namespace NKikimr;
diff --git a/ydb/core/util/testactorsys.cpp b/ydb/core/util/testactorsys.cpp
index 44efa9d0ad..1a599b30ba 100644
--- a/ydb/core/util/testactorsys.cpp
+++ b/ydb/core/util/testactorsys.cpp
@@ -5,6 +5,13 @@
#include <ydb/core/base/statestorage_impl.h>
#include <ydb/core/base/tablet_resolver.h>
#include <library/cpp/actors/interconnect/interconnect.h>
+#include <library/cpp/time_provider/time_provider.h>
+#include <ydb/core/control/immediate_control_board_impl.h>
+#include <ydb/core/grpc_services/grpc_helper.h>
+#include <ydb/core/base/feature_flags.h>
+#include <ydb/core/base/nameservice.h>
+#include <ydb/core/base/channel_profiles.h>
+#include <ydb/core/base/domain.h>
#include <util/generic/singleton.h>
diff --git a/ydb/core/util/testactorsys.h b/ydb/core/util/testactorsys.h
index a6be3756a6..d7ac66972a 100644
--- a/ydb/core/util/testactorsys.h
+++ b/ydb/core/util/testactorsys.h
@@ -8,10 +8,13 @@
#include <library/cpp/actors/core/mailbox.h>
#include <library/cpp/actors/core/scheduler_queue.h>
#include <library/cpp/actors/interconnect/interconnect_common.h>
+#include <library/cpp/actors/util/should_continue.h>
+#include <library/cpp/actors/core/monotonic_provider.h>
#include <ydb/core/base/appdata.h>
#include <ydb/core/base/tablet.h>
#include <ydb/core/base/tablet_pipe.h>
#include <util/system/env.h>
+#include <ydb/core/protos/config.pb.h>
#include "single_thread_ic_mock.h"
diff --git a/ydb/core/viewer/counters_hosts.h b/ydb/core/viewer/counters_hosts.h
index 916352094a..d805673ff4 100644
--- a/ydb/core/viewer/counters_hosts.h
+++ b/ydb/core/viewer/counters_hosts.h
@@ -4,6 +4,7 @@
#include <library/cpp/actors/core/mon.h>
#include <library/cpp/actors/interconnect/interconnect.h>
#include <library/cpp/json/json_writer.h>
+#include <ydb/core/base/nameservice.h>
#include <ydb/library/services/services.pb.h>
#include <ydb/core/node_whiteboard/node_whiteboard.h>
#include "viewer.h"
diff --git a/ydb/core/viewer/wb_req.h b/ydb/core/viewer/wb_req.h
index 64445b0d93..535944053a 100644
--- a/ydb/core/viewer/wb_req.h
+++ b/ydb/core/viewer/wb_req.h
@@ -4,10 +4,13 @@
#include <library/cpp/actors/core/actor_bootstrapped.h>
#include <library/cpp/actors/core/interconnect.h>
#include <library/cpp/actors/core/mon.h>
+
#include <ydb/library/services/services.pb.h>
#include <ydb/core/node_whiteboard/node_whiteboard.h>
#include <ydb/core/viewer/json/json.h>
+#include <ydb/core/base/nameservice.h>
#include <library/cpp/actors/interconnect/interconnect.h>
+#include <library/cpp/time_provider/time_provider.h>
#include "viewer.h"
#include "json_pipe_req.h"
#include "wb_merge.h"
diff --git a/ydb/core/ydb_convert/column_families.h b/ydb/core/ydb_convert/column_families.h
index 152e0561bc..d6be042599 100644
--- a/ydb/core/ydb_convert/column_families.h
+++ b/ydb/core/ydb_convert/column_families.h
@@ -1,6 +1,7 @@
#pragma once
#include <ydb/core/base/appdata.h>
+#include <ydb/core/base/feature_flags.h>
#include <ydb/core/protos/flat_scheme_op.pb.h>
#include <ydb/public/api/protos/ydb_table.pb.h>
diff --git a/ydb/core/ydb_convert/table_profiles.cpp b/ydb/core/ydb_convert/table_profiles.cpp
index 1129888f3a..e9ca019196 100644
--- a/ydb/core/ydb_convert/table_profiles.cpp
+++ b/ydb/core/ydb_convert/table_profiles.cpp
@@ -2,6 +2,8 @@
#include "table_description.h"
#include <ydb/core/protos/flat_scheme_op.pb.h>
+#include <ydb/core/base/feature_flags.h>
+#include <ydb/core/base/domain.h>
#include <util/string/printf.h>
diff --git a/ydb/core/ymq/actor/auth_factory.cpp b/ydb/core/ymq/actor/auth_factory.cpp
index 3325762b1e..5b94fd6906 100644
--- a/ydb/core/ymq/actor/auth_factory.cpp
+++ b/ydb/core/ymq/actor/auth_factory.cpp
@@ -1,5 +1,7 @@
#include "auth_factory.h"
+#include <util/stream/file.h>
+
namespace NKikimr::NSQS {
void TAuthFactory::RegisterAuthActor(TActorSystem& system, TAuthActorData&& data)
diff --git a/ydb/core/ymq/actor/fifo_cleanup.cpp b/ydb/core/ymq/actor/fifo_cleanup.cpp
index ff9a887a67..4d1ef2c8c8 100644
--- a/ydb/core/ymq/actor/fifo_cleanup.cpp
+++ b/ydb/core/ymq/actor/fifo_cleanup.cpp
@@ -10,6 +10,7 @@
#include <library/cpp/actors/core/hfunc.h>
#include <util/random/random.h>
+#include <util/generic/guid.h>
namespace NKikimr::NSQS {
diff --git a/ydb/core/ymq/actor/purge.cpp b/ydb/core/ymq/actor/purge.cpp
index a0c0c121ea..47d9d50173 100644
--- a/ydb/core/ymq/actor/purge.cpp
+++ b/ydb/core/ymq/actor/purge.cpp
@@ -9,6 +9,9 @@
#include <ydb/core/ymq/base/query_id.h>
#include <ydb/core/ymq/queues/common/key_hashes.h>
+#include <util/generic/guid.h>
+
+
using NKikimr::NClient::TValue;
namespace NKikimr::NSQS {
diff --git a/ydb/core/ymq/actor/queue_schema.cpp b/ydb/core/ymq/actor/queue_schema.cpp
index 6d23b797f1..f821f090e4 100644
--- a/ydb/core/ymq/actor/queue_schema.cpp
+++ b/ydb/core/ymq/actor/queue_schema.cpp
@@ -12,6 +12,8 @@
#include <ydb/core/ymq/queues/std/schema.h>
#include <util/generic/utility.h>
+#include <util/generic/guid.h>
+
using NKikimr::NClient::TValue;
diff --git a/ydb/core/ymq/actor/retention.cpp b/ydb/core/ymq/actor/retention.cpp
index b73fa0d904..31d3b0f736 100644
--- a/ydb/core/ymq/actor/retention.cpp
+++ b/ydb/core/ymq/actor/retention.cpp
@@ -9,6 +9,7 @@
#include <library/cpp/actors/core/hfunc.h>
#include <util/random/random.h>
+#include <util/generic/guid.h>
namespace NKikimr::NSQS {
diff --git a/ydb/library/persqueue/topic_parser/topic_parser.cpp b/ydb/library/persqueue/topic_parser/topic_parser.cpp
index 4ebf751222..680ea2b871 100644
--- a/ydb/library/persqueue/topic_parser/topic_parser.cpp
+++ b/ydb/library/persqueue/topic_parser/topic_parser.cpp
@@ -1,6 +1,7 @@
#include "topic_parser.h"
#include <ydb/core/base/appdata.h>
+#include <ydb/library/yverify_stream/yverify_stream.h>
#include <util/folder/path.h>
diff --git a/ydb/services/bg_tasks/abstract/task.h b/ydb/services/bg_tasks/abstract/task.h
index e13eb90ddd..416d27f673 100644
--- a/ydb/services/bg_tasks/abstract/task.h
+++ b/ydb/services/bg_tasks/abstract/task.h
@@ -8,6 +8,7 @@
#include <ydb/library/accessor/accessor.h>
#include <ydb/services/metadata/abstract/decoder.h>
+#include <library/cpp/time_provider/time_provider.h>
#include <library/cpp/actors/core/events.h>
#include <library/cpp/object_factory/object_factory.h>
#include <util/generic/guid.h>
diff --git a/ydb/services/deprecated/persqueue_v0/persqueue.cpp b/ydb/services/deprecated/persqueue_v0/persqueue.cpp
index 67b796e6c4..3ad43c4aca 100644
--- a/ydb/services/deprecated/persqueue_v0/persqueue.cpp
+++ b/ydb/services/deprecated/persqueue_v0/persqueue.cpp
@@ -4,6 +4,7 @@
#include <ydb/core/base/appdata.h>
#include <ydb/core/base/counters.h>
+#include <ydb/core/grpc_services/grpc_helper.h>
#include "move_topic_actor.h"
namespace NKikimr {
diff --git a/ydb/services/ext_index/service/executor.h b/ydb/services/ext_index/service/executor.h
index 9084da4f8a..1abdd363fd 100644
--- a/ydb/services/ext_index/service/executor.h
+++ b/ydb/services/ext_index/service/executor.h
@@ -6,6 +6,7 @@
#include <ydb/services/metadata/service.h>
#include <ydb/services/ext_index/metadata/snapshot.h>
#include <ydb/services/ext_index/common/service.h>
+#include <util/generic/guid.h>
namespace NKikimr::NCSIndex {
diff --git a/ydb/services/lib/actors/pq_schema_actor.cpp b/ydb/services/lib/actors/pq_schema_actor.cpp
index 6e4e25d23e..f50e1a8653 100644
--- a/ydb/services/lib/actors/pq_schema_actor.cpp
+++ b/ydb/services/lib/actors/pq_schema_actor.cpp
@@ -2,6 +2,7 @@
#include <ydb/library/persqueue/obfuscate/obfuscate.h>
#include <ydb/library/persqueue/topic_parser/topic_parser.h>
+#include <ydb/core/base/feature_flags.h>
#include <ydb/public/lib/jwt/jwt.h>
diff --git a/ydb/services/metadata/common/timeout.h b/ydb/services/metadata/common/timeout.h
index d696b8135d..76d7df6519 100644
--- a/ydb/services/metadata/common/timeout.h
+++ b/ydb/services/metadata/common/timeout.h
@@ -5,6 +5,7 @@
#include <library/cpp/actors/core/actor_bootstrapped.h>
#include <library/cpp/actors/core/events.h>
+#include <library/cpp/time_provider/time_provider.h>
namespace NKikimr::NMetadata::NInternal {
diff --git a/ydb/services/metadata/initializer/object.h b/ydb/services/metadata/initializer/object.h
index e541fb1f53..ba3539aa03 100644
--- a/ydb/services/metadata/initializer/object.h
+++ b/ydb/services/metadata/initializer/object.h
@@ -5,6 +5,8 @@
#include <ydb/services/metadata/abstract/decoder.h>
#include <ydb/services/metadata/manager/object.h>
#include <ydb/services/metadata/manager/preparation_controller.h>
+#include <library/cpp/time_provider/time_provider.h>
+
namespace NKikimr::NMetadata::NInitializer {
diff --git a/ydb/services/persqueue_v1/actors/read_session_actor.ipp b/ydb/services/persqueue_v1/actors/read_session_actor.ipp
index 80aa1cc4c3..5fb6a4a3b3 100644
--- a/ydb/services/persqueue_v1/actors/read_session_actor.ipp
+++ b/ydb/services/persqueue_v1/actors/read_session_actor.ipp
@@ -9,6 +9,7 @@
#include <ydb/core/persqueue/user_info.h>
#include <library/cpp/protobuf/util/repeated_field_utils.h>
+#include <library/cpp/random_provider/random_provider.h>
#include <google/protobuf/util/time_util.h>
diff --git a/ydb/services/persqueue_v1/actors/update_offsets_in_transaction_actor.cpp b/ydb/services/persqueue_v1/actors/update_offsets_in_transaction_actor.cpp
index ad74fe801b..3ef071bdcd 100644
--- a/ydb/services/persqueue_v1/actors/update_offsets_in_transaction_actor.cpp
+++ b/ydb/services/persqueue_v1/actors/update_offsets_in_transaction_actor.cpp
@@ -1,4 +1,6 @@
#include "update_offsets_in_transaction_actor.h"
+#include <ydb/core/base/feature_flags.h>
+
namespace NKikimr::NGRpcService {
diff --git a/ydb/services/persqueue_v1/actors/write_session_actor.ipp b/ydb/services/persqueue_v1/actors/write_session_actor.ipp
index f9a39eeb93..62c4f2bd15 100644
--- a/ydb/services/persqueue_v1/actors/write_session_actor.ipp
+++ b/ydb/services/persqueue_v1/actors/write_session_actor.ipp
@@ -11,6 +11,7 @@
#include <ydb/library/persqueue/topic_parser/counters.h>
#include <ydb/core/persqueue/pq_database.h>
#include <ydb/core/persqueue/write_meta.h>
+#include <ydb/core/base/feature_flags.h>
#include <ydb/library/services/services.pb.h>
#include <ydb/public/lib/deprecated/kicli/kicli.h>
#include <ydb/public/sdk/cpp/client/ydb_proto/accessor.h>