summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-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 6c865cee462..50ae5e71c0e 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 14d4eae229e..d24448b0bb6 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 c808bb0326c..ab0e56870ae 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 6661a728faf..48f8be4fdb3 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 c830a0a3408..262939d0fc0 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 4ccee3e99cf..1aa715b9473 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 38ee68b4960..50a016384c8 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 a5938d5fdf4..f91d310d548 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 0685921fdcf..af2534a650c 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 35699774c07..adfabaf2728 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 eecad8732c0..a9b78c70243 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 285cee2ad66..188095bf28d 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 7bf0a8d44e7..8a1293dd66e 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 d41c75d6a97..f2e7c7d538d 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 3e6b4028805..69be213e029 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 61a42556efc..e1f937d3206 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 4d3cc940b4d..6e7cdd65caa 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 539ffaf72d9..ab22de26e94 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 0ad1e965ce9..6e3d1e426fe 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 65a29c5853f..c582f91a158 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 5757a3a68ae..e0d9f06371c 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 e38278d33ca..f4d64e2de78 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 2b5de0bc707..f33888e534a 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 0a8380a8fcb..ddae3945c26 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 2e401916dd1..3e054638b5b 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 8ab580a316d..3bdec02cf9e 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 a80c47d078d..befab60296a 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 28e8187288a..c326c4cfd87 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 ce32860c25c..1e8fd6dae44 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 f1bfed4b451..88e00c9b94b 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 ef18d2b9ece..d6a917eb0f0 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 827f635cc20..5d7bd58855a 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 ac87b12bd59..2c6b29c2f94 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 82981f571ad..137193d6d21 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 d14f6de6375..e0cc003e751 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 0834ef50c43..07d94f08743 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 3fbdbdbc4b9..c08418d72de 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 4e7330820a7..51cdf6aeb80 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 88d2f46ebeb..033054bf501 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 6ef0ea8068f..433c4258734 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 0362057258a..3c3e22936d0 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 c4773d36368..d94df23799d 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 e9413850dd5..c5b3e5a8ee5 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 5a8ca7d9b54..47fe3075533 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 a9ab435d8b2..6e5f4f247ca 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 1b519ba80b3..14a6365dbd8 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 586c49c9140..d1c0841ee9d 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 4cc7340239f..06357c1c118 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 5b0b8ce08ba..726086e1f49 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 41e93d3d5dd..52120bd4a15 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 8fd05858620..ce60f2e2a17 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 b1b06bff327..e29d833b416 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 9fb8d73995e..099cb36627a 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 fc3253d94df..da16091acb7 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 6016b88ab81..dd9783f9f89 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 14048daffa9..e6a798101b2 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 60d74dc50bb..5b2a5eb040c 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 e854fd5394d..afd5d6853cb 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 d89d22cd7f7..7013ec943ef 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 dd00f6db720..91406d87cf9 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 b09f2127356..647c5358f16 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 3f735def929..54a63fdab8f 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 bae2891c7db..01bf5ab969e 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 8226503d9a1..014b4049553 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 f3868ca3bda..59048148a9d 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 3358d032cd3..02159ec7584 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 d45e4facc18..f6707d28149 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 7654c0aa983..635891c0e87 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 3e29f7e0127..79691ccb396 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 2370bb0a89b..0d1c2e26824 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 eee9cd5dd9c..ea5004f8325 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 d88999b068b..688ecae0277 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 9a5e0fc5b24..a31df57e3fd 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 04c7af7bd9b..33340ab8ba8 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 350b1c2d5cf..b9c8dc655f5 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 6876641b2ad..71b2ab727ac 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 4c5af6a4578..ee1434dfcf0 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 9814488a719..2fbc48c5cca 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 3d53636a732..01bbc5cd71a 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 9517b24a003..746eaf90a45 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 c070b4df35f..82346fcd939 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 8d9ab4e6e02..b6e3b46444f 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 d5696e3effd..9c0ce87d73e 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 7968fc3be9b..d142ed267f8 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 0be3943a0e8..544159f4361 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 43e7f627b67..719c14594ef 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 00000000000..8b0c8c230cb
--- /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 cf48f3758c9..2ebd837d2b2 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 2fb04c21b91..4c105511eeb 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 5db2f092a47..97e63036ab8 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 75d3f8778d9..b8f8d21337a 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 91e01bac49c..b5ad5af2f4b 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 6e425c2e589..18be4b5011e 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 ddfe4d36aaf..ba177cb4779 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 a9ecad4ce6b..de9b2c20cca 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 46e7fcb8e1d..a4abfb6fe74 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 583f1126dd0..739f515175b 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 428961ffce7..05bad044c11 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 ad05d51bd4d..a6b20848456 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 c85935ea31c..3264926d3d8 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 36bb635c5eb..b70bbb9ad06 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 7a67a918bcc..3b681268358 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 58a4b1f2a45..f37a03c6a0f 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 571ffc74943..7b2b1038590 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 782f7661303..f22f92f2a95 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 cf8753afbf5..894cc259d85 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 2034028f48e..8dcc59015c2 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 a1c3eb3ebbe..ca9ce963e18 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 7eac42428c5..0abc3090890 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 ca2c290b178..ab7e1f3206f 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 6fd6b9a853a..cfcedf4a0e7 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 089e20413f8..53fd20f7c03 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 be45b5baea4..d3aa1a9b279 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 045cefe7388..432de5b930c 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 d3cc74619d5..e54834aff81 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 b32091211e5..052066f2dd9 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 552a32a68ae..f4e6472ac84 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 2cfd9d16d5c..54944cf8dd8 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 61c30437d90..f9f2f2f6e38 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 1b44e31cb21..528dbc18cfb 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 b8f76ed2a43..9d79ec3440c 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 2b76fcb48c0..00b6ac32f89 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 e3c1ee708fb..c7c5229853d 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 d8cd30904df..3cbf5a65b3a 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 462bc4ead5e..e46d4fc5655 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 11ddac07553..dbb48e4f78c 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 8a1df28d68b..6911994eb15 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 f8d248cd23f..62a084526c0 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 020a3a223df..6ae93107db9 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 82d8d85a924..ee12cdb1d66 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 383233683a7..d0e17cf012a 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 15d147575c0..6c8b40f71b8 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 36c8bb9f512..e512d5a7efc 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 6680d87272f..64f00c0ef4f 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 40c44f91638..bde083ae8e0 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 23791e49150..3cf4530fde6 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 e7274201570..d7ddcef5fed 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 f1f55121d19..1af4a0410e5 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 0f0e779e8dc..39227136f87 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 57ea7d6edba..f1146463ab2 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 5eb00aecf03..2988504c09e 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 ca521aa020a..6297b0f0085 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 05980cef08e..d2bd921fbb0 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 e4c290f7cdb..8e67ada3932 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 5de96907810..5afcfb28f72 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 a5c28820598..76f44b55b84 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 8426f477ff5..2a093093874 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 9ed13192b97..9013dda8cd0 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 83cf466784b..79ffd1fc595 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 bc9489a71d7..6547d19d6fa 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 796deca27c9..c712b0b56b7 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 d88fa746c66..652c8f9738e 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 9f03738ca5c..712d6fc6022 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 432e7761c54..b036eccb38c 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 17e75315c1f..8f5f729916c 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 5df8ef88383..56dfe9eee40 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 44c59e4c14f..0f746ccf068 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 94d51f61a77..907436ef429 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 fedecfb43eb..c5b49e633c0 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 184a3b235bf..ac540f90c94 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 569154524bb..6645208e769 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 e298109bb48..efc6023c9a5 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 610bcab37a7..a752b45743f 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 6c9f192af5f..8ee4746ae24 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 d2dd1382e01..662e2fab09b 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 44efa9d0ad3..1a599b30ba0 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 a6be3756a60..d7ac66972ab 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 916352094a1..d805673ff43 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 64445b0d93c..535944053a7 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 152e0561bc3..d6be0425996 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 1129888f3af..e9ca019196a 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 3325762b1e1..5b94fd69068 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 ff9a887a673..4d1ef2c8c81 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 a0c0c121ea6..47d9d50173a 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 6d23b797f1d..f821f090e44 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 b73fa0d904a..31d3b0f7362 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 4ebf751222b..680ea2b871a 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 e13eb90ddd3..416d27f6736 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 67b796e6c47..3ad43c4aca6 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 9084da4f8a0..1abdd363fd1 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 6e4e25d23e6..f50e1a8653f 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 d696b8135d6..76d7df65193 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 e541fb1f538..ba3539aa034 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 80aa1cc4c30..5fb6a4a3b32 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 ad74fe801b0..3ef071bdcd2 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 f9a39eeb93e..62c4f2bd15d 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>