Skip to content

[KIKIMR-22738] (=) split ydb/core/control circular dependencies with ydb/core/base #14972

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 3 commits into from
Mar 1, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion ydb/core/base/appdata.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
#include "resource_profile.h"
#include "event_filter.h"

#include <ydb/core/control/immediate_control_board_impl.h>
#include <ydb/core/control/lib/immediate_control_board_impl.h>
#include <ydb/core/grpc_services/grpc_helper.h>
#include <ydb/core/jaeger_tracing/sampling_throttling_configurator.h>
#include <ydb/core/tablet_flat/shared_cache_pages.h>
Expand Down
2 changes: 1 addition & 1 deletion ydb/core/base/appdata.h
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@
#include "resource_profile.h"
#include "event_filter.h"

#include <ydb/core/control/immediate_control_board_impl.h>
#include <ydb/core/control/lib/immediate_control_board_impl.h>
#include <ydb/library/pdisk_io/aio.h>

#include <ydb/core/base/event_filter.h>
Expand Down
2 changes: 1 addition & 1 deletion ydb/core/blobstorage/common/immediate_control_defaults.h
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
#pragma once

#include "defs.h"
#include <ydb/core/control/immediate_control_board_wrapper.h>
#include <ydb/core/control/lib/immediate_control_board_wrapper.h>

namespace NKikimr {

Expand Down
2 changes: 1 addition & 1 deletion ydb/core/blobstorage/dsproxy/ya.make
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ PEERDIR(
ydb/core/blobstorage/groupinfo
ydb/core/blobstorage/storagepoolmon
ydb/core/blobstorage/vdisk/ingress
ydb/core/control
ydb/core/control/lib
ydb/core/util
)

Expand Down
2 changes: 1 addition & 1 deletion ydb/core/blobstorage/nodewarden/ya.make
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ PEERDIR(
ydb/core/blobstorage/crypto
ydb/core/blobstorage/groupinfo
ydb/core/blobstorage/pdisk
ydb/core/control
ydb/core/control/lib
ydb/library/pdisk_io
ydb/library/yaml_config
ydb/core/util/actorsys_test
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
#include <ydb/library/actors/core/executor_pool_basic.h>
#include <ydb/library/actors/core/mon.h>
#include <ydb/library/actors/core/scheduler_basic.h>
#include <ydb/core/control/immediate_control_board_impl.h>
#include <ydb/core/control/lib/immediate_control_board_impl.h>
#include <ydb/core/grpc_services/grpc_helper.h>
#include <ydb/core/protos/config.pb.h>
#include <ydb/core/protos/netclassifier.pb.h>
Expand Down
2 changes: 1 addition & 1 deletion ydb/core/blobstorage/pdisk/blobstorage_pdisk_blockdevice.h
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
#include "blobstorage_pdisk_util_devicemode.h"

#include <ydb/core/base/blobstorage.h>
#include <ydb/core/control/immediate_control_board_wrapper.h>
#include <ydb/core/control/lib/immediate_control_board_wrapper.h>
#include <ydb/library/pdisk_io/aio.h>
#include <ydb/library/pdisk_io/drivedata.h>
#include <ydb/library/pdisk_io/sector_map.h>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
#include "blobstorage_pdisk_ut_defs.h"
#include "blobstorage_pdisk_ut_helpers.h"

#include <ydb/core/control/immediate_control_board_wrapper.h>
#include <ydb/core/control/lib/immediate_control_board_wrapper.h>
#include <ydb/core/util/random.h>

#include <library/cpp/deprecated/atomic/atomic.h>
Expand Down
2 changes: 1 addition & 1 deletion ydb/core/blobstorage/pdisk/blobstorage_pdisk_config.h
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@

#include <ydb/core/base/blobstorage.h>
#include <ydb/core/blobstorage/base/vdisk_priorities.h>
#include <ydb/core/control/immediate_control_board_wrapper.h>
#include <ydb/core/control/lib/immediate_control_board_wrapper.h>
#include <ydb/core/protos/blobstorage_base.pb.h>
#include <ydb/core/protos/blobstorage_config.pb.h>
#include <ydb/core/protos/blobstorage_disk.pb.h>
Expand Down
2 changes: 1 addition & 1 deletion ydb/core/blobstorage/pdisk/blobstorage_pdisk_impl.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +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/control/lib/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>
Expand Down
4 changes: 2 additions & 2 deletions ydb/core/blobstorage/pdisk/blobstorage_pdisk_impl.h
Original file line number Diff line number Diff line change
Expand Up @@ -20,11 +20,11 @@
#include "blobstorage_pdisk_writer.h"
#include "blobstorage_pdisk_impl_metadata.h"

#include <ydb/core/control/immediate_control_board_impl.h>
#include <ydb/core/control/lib/immediate_control_board_impl.h>
#include <ydb/core/control/lib/immediate_control_board_wrapper.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>
#include <ydb/core/driver_lib/version/version.h>
#include <ydb/library/schlab/schine/scheduler.h>
#include <ydb/library/schlab/schine/job_kind.h>
Expand Down
2 changes: 1 addition & 1 deletion ydb/core/blobstorage/pdisk/ya.make
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ PEERDIR(
ydb/core/blobstorage/crypto
ydb/core/blobstorage/groupinfo
ydb/core/blobstorage/lwtrace_probes
ydb/core/control
ydb/core/control/lib
ydb/core/driver_lib/version
ydb/core/protos
ydb/core/util
Expand Down
2 changes: 1 addition & 1 deletion ydb/core/blobstorage/vdisk/common/vdisk_config.h
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
#include <ydb/core/base/blobstorage.h>
#include <ydb/core/protos/blobstorage_vdisk_config.pb.h>
#include <ydb/core/protos/feature_flags.pb.h>
#include <ydb/core/control/immediate_control_board_impl.h>
#include <ydb/core/control/lib/immediate_control_board_impl.h>
#include <ydb/core/base/feature_flags.h>

namespace NKikimr {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
#include "defs.h"

#include <ydb/library/pdisk_io/device_type.h>
#include <ydb/core/control/immediate_control_board_wrapper.h>
#include <ydb/core/control/lib/immediate_control_board_wrapper.h>

namespace NKikimr {

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@
#include <ydb/core/blobstorage/pdisk/blobstorage_pdisk_internal_interface.h>
#include <ydb/core/cms/console/configs_dispatcher.h>
#include <ydb/core/cms/console/console.h>
#include <ydb/core/control/immediate_control_board_impl.h>
#include <ydb/core/control/lib/immediate_control_board_impl.h>
#include <ydb/core/protos/node_whiteboard.pb.h>
#include <ydb/core/node_whiteboard/node_whiteboard.h>
#include <library/cpp/monlib/service/pages/templates.h>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
#include <ydb/core/blobstorage/vdisk/common/vdisk_pdiskctx.h>
#include <ydb/core/blobstorage/vdisk/hulldb/base/blobstorage_hullsatisfactionrank.h>
#include <ydb/core/blobstorage/vdisk/hullop/blobstorage_hull.h>
#include <ydb/core/control/immediate_control_board_impl.h>
#include <ydb/core/control/lib/immediate_control_board_impl.h>
#include <ydb/core/util/queue_inplace.h>
#include <ydb/library/wilson_ids/wilson.h>
#include <ydb/library/actors/wilson/wilson_span.h>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
#include <ydb/core/blobstorage/vdisk/common/vdisk_pdiskctx.h>
#include <ydb/core/blobstorage/vdisk/syncer/blobstorage_syncer_localwriter.h>
#include <ydb/core/blobstorage/vdisk/anubis_osiris/blobstorage_anubis_osiris.h>
#include <ydb/core/control/immediate_control_board_impl.h>
#include <ydb/core/control/lib/immediate_control_board_impl.h>

namespace NKikimr {

Expand Down
2 changes: 1 addition & 1 deletion ydb/core/cms/console/immediate_controls_configurator.h
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
#pragma once
#include "defs.h"

#include <ydb/core/control/immediate_control_board_impl.h>
#include <ydb/core/control/lib/immediate_control_board_impl.h>

#include <util/generic/ptr.h>

Expand Down
2 changes: 1 addition & 1 deletion ydb/core/cms/console/ya.make
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@ PEERDIR(
ydb/core/blobstorage/groupinfo
ydb/core/cms/console/validators
ydb/core/config/init
ydb/core/control
ydb/core/control/lib
ydb/core/engine/minikql
ydb/core/mind
ydb/core/node_whiteboard
Expand Down
3 changes: 2 additions & 1 deletion ydb/core/control/immediate_control_board_actor_ut.cpp
Original file line number Diff line number Diff line change
@@ -1,13 +1,14 @@
#include "defs.h"
#include "immediate_control_board_actor.h"
#include "immediate_control_board_wrapper.h"

#include <ydb/library/actors/interconnect/interconnect.h>
#include <ydb/core/mon/mon.h>
#include <ydb/core/base/appdata.h>
#include <ydb/core/base/counters.h>
#include <ydb/core/node_whiteboard/node_whiteboard.h>
#include <ydb/core/base/tablet.h>
#include <ydb/core/control/lib/immediate_control_board_wrapper.h>

#include <ydb/library/actors/core/executor_pool_basic.h>
#include <ydb/library/actors/core/executor_pool_io.h>
#include <ydb/library/actors/core/hfunc.h>
Expand Down
31 changes: 1 addition & 30 deletions ydb/core/control/immediate_control_board_impl.h
Original file line number Diff line number Diff line change
@@ -1,31 +1,2 @@
#pragma once

#include "defs.h"
#include "immediate_control_board_wrapper.h"

#include <ydb/core/util/concurrent_rw_hash.h>

namespace NKikimr {

class TControlBoard : public TThrRefBase {
private:
TConcurrentRWHashMap<TString, TIntrusivePtr<TControl>, 16> Board;

public:
bool RegisterLocalControl(TControlWrapper control, TString name);

bool RegisterSharedControl(TControlWrapper& control, TString name);

void RestoreDefaults();

void RestoreDefault(TString name);

bool SetValue(TString name, TAtomic value, TAtomic &outPrevValue);

// Only for tests
void GetValue(TString name, TAtomic &outValue, bool &outIsControlExists) const;

TString RenderAsHtml() const;
};

}
#include <ydb/core/control/lib/immediate_control_board_impl.h>
2 changes: 2 additions & 0 deletions ydb/core/control/lib/defs.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
#pragma once
#include <ydb/core/base/defs.h>
31 changes: 31 additions & 0 deletions ydb/core/control/lib/immediate_control_board_impl.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
#pragma once

#include "defs.h"
#include "immediate_control_board_wrapper.h"

#include <ydb/core/util/concurrent_rw_hash.h>

namespace NKikimr {

class TControlBoard : public TThrRefBase {
private:
TConcurrentRWHashMap<TString, TIntrusivePtr<TControl>, 16> Board;

public:
bool RegisterLocalControl(TControlWrapper control, TString name);

bool RegisterSharedControl(TControlWrapper& control, TString name);

void RestoreDefaults();

void RestoreDefault(TString name);

bool SetValue(TString name, TAtomic value, TAtomic &outPrevValue);

// Only for tests
void GetValue(TString name, TAtomic &outValue, bool &outIsControlExists) const;

TString RenderAsHtml() const;
};

}
17 changes: 17 additions & 0 deletions ydb/core/control/lib/ut/ya.make
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
UNITTEST_FOR(ydb/core/control/lib)

FORK_SUBTESTS()

SIZE(MEDIUM)

PEERDIR(
library/cpp/testing/unittest
util
ydb/core/base
)

SRCS(
immediate_control_board_ut.cpp
)

END()
24 changes: 24 additions & 0 deletions ydb/core/control/lib/ya.make
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
LIBRARY()

PEERDIR(
util
ydb/core/base
ydb/core/mon
ydb/core/node_whiteboard
library/cpp/deprecated/atomic
)

SRCS(
defs.h
immediate_control_board_control.cpp
immediate_control_board_control.h
immediate_control_board_impl.cpp
immediate_control_board_impl.h
immediate_control_board_wrapper.h
)

END()

RECURSE_FOR_TESTS(
ut
)
1 change: 0 additions & 1 deletion ydb/core/control/ut/ya.make
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,6 @@ PEERDIR(
)

SRCS(
immediate_control_board_ut.cpp
immediate_control_board_actor_ut.cpp
)

Expand Down
10 changes: 1 addition & 9 deletions ydb/core/control/ya.make
Original file line number Diff line number Diff line change
Expand Up @@ -2,23 +2,15 @@ LIBRARY()

PEERDIR(
ydb/library/actors/core
library/cpp/monlib/dynamic_counters
util
ydb/core/base
ydb/core/mon
ydb/core/node_whiteboard
ydb/core/control/lib
library/cpp/deprecated/atomic
)

SRCS(
defs.h
immediate_control_board_actor.cpp
immediate_control_board_actor.h
immediate_control_board_control.cpp
immediate_control_board_control.h
immediate_control_board_impl.cpp
immediate_control_board_impl.h
immediate_control_board_wrapper.h
)

END()
Expand Down
2 changes: 1 addition & 1 deletion ydb/core/grpc_services/grpc_helper.h
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
#include "defs.h"
#include "grpc_mon.h"

#include <ydb/core/control/immediate_control_board_impl.h>
#include <ydb/core/control/lib/immediate_control_board_impl.h>
#include <ydb/core/grpc_services/counters/counters.h>

#include <ydb/library/grpc/server/grpc_request.h>
Expand Down
2 changes: 1 addition & 1 deletion ydb/core/grpc_services/ya.make
Original file line number Diff line number Diff line change
Expand Up @@ -111,7 +111,7 @@ PEERDIR(
ydb/core/actorlib_impl
ydb/core/audit
ydb/core/base
ydb/core/control
ydb/core/control/lib
ydb/core/discovery
ydb/core/engine
ydb/core/formats
Expand Down
2 changes: 1 addition & 1 deletion ydb/core/kqp/common/control.cpp
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
#include "control.h"

#include <ydb/core/base/appdata_fwd.h>
#include <ydb/core/control/immediate_control_board_impl.h>
#include <ydb/core/control/lib/immediate_control_board_impl.h>

namespace {

Expand Down
2 changes: 1 addition & 1 deletion ydb/core/kqp/common/control.h
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#include <ydb/core/control/immediate_control_board_wrapper.h>
#include <ydb/core/control/lib/immediate_control_board_wrapper.h>

namespace NKikimr::NKqp {

Expand Down
2 changes: 1 addition & 1 deletion ydb/core/kqp/gateway/kqp_gateway.h
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,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/control/lib/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>
Expand Down
2 changes: 1 addition & 1 deletion ydb/core/kqp/session_actor/kqp_session_actor.h
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
#include <ydb/core/protos/table_service_config.pb.h>
#include <ydb/library/yql/dq/actors/compute/dq_compute_actor_async_io_factory.h>

#include <ydb/core/control/immediate_control_board_wrapper.h>
#include <ydb/core/control/lib/immediate_control_board_wrapper.h>
#include <ydb/library/actors/core/actorid.h>

namespace NKikimr::NKqp::NComputeActor {
Expand Down
2 changes: 1 addition & 1 deletion ydb/core/load_test/keyvalue_write.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
#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/control/lib/immediate_control_board_impl.h>
#include <ydb/core/keyvalue/keyvalue_events.h>

#include <library/cpp/histogram/hdr/histogram.h>
Expand Down
Loading
Loading