Skip to content

Commit f8a2683

Browse files
authored
Make ShardsResolver separate kqp library (#9098)
1 parent 159be17 commit f8a2683

File tree

13 files changed

+57
-36
lines changed

13 files changed

+57
-36
lines changed

ydb/core/kqp/common/simple/kqp_event_ids.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
#pragma once
22

33
#include <ydb/core/base/events.h>
4-
#include <ydb/library/yql/dq/actors/dq_events_ids.h>
54

65
namespace NKikimr {
76
namespace NKqp {

ydb/core/kqp/executer_actor/kqp_data_executer.cpp

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@
55
#include "kqp_planner.h"
66
#include "kqp_table_resolver.h"
77
#include "kqp_tasks_validate.h"
8-
#include "kqp_shards_resolver.h"
98

109
#include <ydb/core/base/appdata.h>
1110
#include <ydb/core/base/tablet_pipecache.h>
@@ -299,7 +298,7 @@ class TKqpDataExecuter : public TKqpExecuterBase<TKqpDataExecuter, EExecType::Da
299298
try {
300299
switch (ev->GetTypeRewrite()) {
301300
hFunc(TEvKqpExecuter::TEvTableResolveStatus, HandleResolve);
302-
hFunc(TEvKqpExecuter::TEvShardsResolveStatus, HandleResolve);
301+
hFunc(NShardResolver::TEvShardsResolveStatus, HandleResolve);
303302
hFunc(TEvPrivate::TEvResourcesSnapshot, HandleResolve);
304303
hFunc(TEvSaveScriptExternalEffectResponse, HandleResolve);
305304
hFunc(TEvDescribeSecretsResponse, HandleResolve);
@@ -2151,7 +2150,7 @@ class TKqpDataExecuter : public TKqpExecuterBase<TKqpDataExecuter, EExecType::Da
21512150
DoExecute();
21522151
}
21532152

2154-
void HandleResolve(TEvKqpExecuter::TEvShardsResolveStatus::TPtr& ev) {
2153+
void HandleResolve(NShardResolver::TEvShardsResolveStatus::TPtr& ev) {
21552154
if (!TBase::HandleResolve(ev)) {
21562155
return;
21572156
}

ydb/core/kqp/executer_actor/kqp_executer.h

Lines changed: 1 addition & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
#include <ydb/core/kqp/common/kqp_tx.h>
55
#include <ydb/core/kqp/common/kqp_event_ids.h>
66
#include <ydb/core/kqp/common/kqp_user_request_context.h>
7+
#include <ydb/core/kqp/executer_actor/shards_resolver/kqp_shards_resolver_events.h>
78
#include <ydb/core/kqp/query_data/kqp_query_data.h>
89
#include <ydb/core/kqp/gateway/kqp_gateway.h>
910
#include <ydb/core/kqp/counters/kqp_counters.h>
@@ -86,16 +87,6 @@ struct TEvKqpExecuter {
8687
NYql::TIssues Issues;
8788
TDuration CpuTime;
8889
};
89-
90-
struct TEvShardsResolveStatus : public TEventLocal<TEvShardsResolveStatus,
91-
TKqpExecuterEvents::EvShardsResolveStatus>
92-
{
93-
Ydb::StatusIds::StatusCode Status = Ydb::StatusIds::SUCCESS;
94-
NYql::TIssues Issues;
95-
96-
TMap<ui64, ui64> ShardNodes;
97-
ui32 Unresolved = 0;
98-
};
9990
};
10091

10192
struct TKqpFederatedQuerySetup;

ydb/core/kqp/executer_actor/kqp_executer_impl.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@
66
#include "kqp_partition_helper.h"
77
#include "kqp_result_channel.h"
88
#include "kqp_table_resolver.h"
9-
#include "kqp_shards_resolver.h"
109

1110
#include <ydb/core/kqp/common/kqp_ru_calc.h>
1211
#include <ydb/core/kqp/common/kqp_lwtrace_probes.h>
@@ -19,6 +18,7 @@
1918
#include <ydb/library/wilson_ids/wilson.h>
2019
#include <ydb/library/ydb_issue/issue_helpers.h>
2120
#include <ydb/core/kqp/executer_actor/kqp_tasks_graph.h>
21+
#include <ydb/core/kqp/executer_actor/shards_resolver/kqp_shards_resolver.h>
2222
#include <ydb/core/kqp/node_service/kqp_node_service.h>
2323
#include <ydb/core/kqp/common/kqp.h>
2424
#include <ydb/core/kqp/common/kqp_yql.h>
@@ -210,7 +210,7 @@ class TKqpExecuterBase : public TActorBootstrapped<TDerived> {
210210
}
211211

212212
[[nodiscard]]
213-
bool HandleResolve(TEvKqpExecuter::TEvShardsResolveStatus::TPtr& ev) {
213+
bool HandleResolve(NShardResolver::TEvShardsResolveStatus::TPtr& ev) {
214214
auto& reply = *ev->Get();
215215

216216
KqpShardsResolverId = {};

ydb/core/kqp/executer_actor/kqp_planner.cpp

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
#include "kqp_executer_stats.h"
22
#include "kqp_planner.h"
33
#include "kqp_planner_strategy.h"
4-
#include "kqp_shards_resolver.h"
54

65
#include <ydb/core/kqp/common/kqp_yql.h>
76
#include <ydb/core/base/appdata.h>

ydb/core/kqp/executer_actor/kqp_scan_executer.cpp

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
#include "kqp_partition_helper.h"
44
#include "kqp_tasks_graph.h"
55
#include "kqp_tasks_validate.h"
6-
#include "kqp_shards_resolver.h"
76

87
#include <ydb/core/base/appdata.h>
98
#include <ydb/core/base/tablet_pipecache.h>
@@ -80,7 +79,7 @@ class TKqpScanExecuter : public TKqpExecuterBase<TKqpScanExecuter, EExecType::Sc
8079
try {
8180
switch (ev->GetTypeRewrite()) {
8281
hFunc(TEvKqpExecuter::TEvTableResolveStatus, HandleResolve);
83-
hFunc(TEvKqpExecuter::TEvShardsResolveStatus, HandleResolve);
82+
hFunc(NShardResolver::TEvShardsResolveStatus, HandleResolve);
8483
hFunc(TEvPrivate::TEvResourcesSnapshot, HandleResolve);
8584
hFunc(TEvKqp::TEvAbortExecution, HandleAbortExecution);
8685
default:
@@ -153,7 +152,7 @@ class TKqpScanExecuter : public TKqpExecuterBase<TKqpScanExecuter, EExecType::Sc
153152
}
154153
}
155154

156-
void HandleResolve(TEvKqpExecuter::TEvShardsResolveStatus::TPtr& ev) {
155+
void HandleResolve(NShardResolver::TEvShardsResolveStatus::TPtr& ev) {
157156
if (!TBase::HandleResolve(ev)) return;
158157
GetResourcesSnapshot();
159158
}

ydb/core/kqp/executer_actor/kqp_shards_resolver.cpp renamed to ydb/core/kqp/executer_actor/shards_resolver/kqp_shards_resolver.cpp

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
11
#include "kqp_shards_resolver.h"
2+
#include "kqp_shards_resolver_events.h"
23

34
#include <ydb/core/base/tablet_pipecache.h>
4-
#include <ydb/core/kqp/executer_actor/kqp_executer.h>
5-
#include <ydb/core/tx/scheme_cache/scheme_cache.h>
65

76
#include <ydb/library/actors/core/actor_bootstrapped.h>
87
#include <ydb/library/actors/core/hfunc.h>
@@ -87,23 +86,22 @@ class TKqpShardsResolver : public TActorBootstrapped<TKqpShardsResolver> {
8786
LOG_W(reply);
8887
ReplyErrorAndDie(Ydb::StatusIds::UNAVAILABLE, std::move(reply));
8988
return;
90-
9189
}
9290

9391
++retryCount;
9492
Send(TabletResolver, new TEvPipeCache::TEvGetTabletNode(msg->TabletId));
9593
}
9694

9795
void ReplyErrorAndDie(Ydb::StatusIds::StatusCode status, TString&& message) {
98-
auto replyEv = std::make_unique<TEvKqpExecuter::TEvShardsResolveStatus>();
96+
auto replyEv = std::make_unique<NShardResolver::TEvShardsResolveStatus>();
9997
replyEv->Status = status;
10098
replyEv->Issues.AddIssue(TIssue(message));
10199
Send(Owner, replyEv.release());
102100
PassAway();
103101
}
104102

105103
void ReplyAndDie() {
106-
auto replyEv = std::make_unique<TEvKqpExecuter::TEvShardsResolveStatus>();
104+
auto replyEv = std::make_unique<NShardResolver::TEvShardsResolveStatus>();
107105
replyEv->ShardNodes = std::move(Result);
108106
Send(Owner, replyEv.release());
109107
PassAway();
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
#pragma once
2+
3+
#include <ydb/library/yql/public/issue/yql_issue.h>
4+
#include <ydb/public/api/protos/ydb_status_codes.pb.h>
5+
#include <ydb/core/kqp/common/simple/kqp_event_ids.h>
6+
7+
namespace NKikimr::NKqp {
8+
9+
namespace NShardResolver {
10+
struct TEvShardsResolveStatus : public TEventLocal<TEvShardsResolveStatus,
11+
TKqpExecuterEvents::EvShardsResolveStatus>
12+
{
13+
Ydb::StatusIds::StatusCode Status = Ydb::StatusIds::SUCCESS;
14+
NYql::TIssues Issues;
15+
16+
TMap<ui64, ui64> ShardNodes;
17+
ui32 Unresolved = 0;
18+
};
19+
};
20+
21+
}
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
LIBRARY()
2+
3+
SRCS(
4+
kqp_shards_resolver.cpp
5+
)
6+
7+
PEERDIR(
8+
ydb/library/actors/core
9+
ydb/core/actorlib_impl
10+
ydb/core/base
11+
)
12+
13+
YQL_LAST_ABI_VERSION()
14+
15+
END()

0 commit comments

Comments
 (0)