aboutsummaryrefslogtreecommitdiffstats
path: root/yt
diff options
context:
space:
mode:
authorrobot-piglet <robot-piglet@yandex-team.com>2023-10-04 12:30:15 +0300
committerrobot-piglet <robot-piglet@yandex-team.com>2023-10-04 13:05:39 +0300
commit9612d0efbc1b15eb7424b03733876d090ec11a21 (patch)
tree81edd581f9ade0dd6c0c3ff2e5a1b08413ab4efd /yt
parentc8a29a449c3b2d07eafe26632ff70f9e4c4445f5 (diff)
downloadydb-9612d0efbc1b15eb7424b03733876d090ec11a21.tar.gz
Intermediate changes
Diffstat (limited to 'yt')
-rw-r--r--yt/yql/plugin/native/plugin.cpp21
1 files changed, 8 insertions, 13 deletions
diff --git a/yt/yql/plugin/native/plugin.cpp b/yt/yql/plugin/native/plugin.cpp
index 0349e4ffda..2051f335e7 100644
--- a/yt/yql/plugin/native/plugin.cpp
+++ b/yt/yql/plugin/native/plugin.cpp
@@ -174,8 +174,14 @@ public:
ProgramFactory_ = std::make_unique<NYql::TProgramFactory>(
false, FuncRegistry_.Get(), ExprContext_.NextUniqueId, dataProvidersInit, "embedded");
- YTTokenPath_ = options.YTTokenPath;
+ auto credentials = MakeIntrusive<NYql::TCredentials>();
+ if (options.YTTokenPath) {
+ TFsPath path(options.YTTokenPath);
+ auto token = TIFStream(path).ReadAll();
+ credentials->AddCredential("default_yt", NYql::TCredential("yt", "", token));
+ }
ProgramFactory_->AddUserDataTable(userDataTable);
+ ProgramFactory_->SetCredentials(credentials);
ProgramFactory_->SetModules(ModuleResolver_);
ProgramFactory_->SetUdfResolver(NYql::NCommon::CreateSimpleUdfResolver(FuncRegistry_.Get(), FileStorage_));
ProgramFactory_->SetGatewaysConfig(&GatewaysConfig_);
@@ -190,18 +196,8 @@ public:
TQueryResult GuardedRun(TQueryId queryId, TString impersonationUser, TString queryText, TYsonString settings, std::vector<TQueryFile> files)
{
- auto credentials = MakeIntrusive<NYql::TCredentials>();
- if (YTTokenPath_) {
- TFsPath path(YTTokenPath_);
- auto token = TIFStream(path).ReadAll();
-
- credentials->AddCredential("default_yt", NYql::TCredential("yt", "", token));
- }
-
- credentials->AddCredential("impersonation_user_yt", NYql::TCredential("yt", "", impersonationUser));
- ProgramFactory_->SetCredentials(credentials);
-
auto program = ProgramFactory_->Create("-memory-", queryText);
+ program->AddCredentials({{"impersonation_user_yt", NYql::TCredential("yt", "", impersonationUser)}});
program->SetOperationAttrsYson(PatchQueryAttributes(OperationAttributes_, settings));
auto userDataTable = FilesToUserTable(files);
@@ -317,7 +313,6 @@ private:
NYql::IModuleResolver::TPtr ModuleResolver_;
NYql::TGatewaysConfig GatewaysConfig_;
std::unique_ptr<NYql::TProgramFactory> ProgramFactory_;
- TString YTTokenPath_;
THashMap<TString, TString> Clusters_;
std::optional<TString> DefaultCluster_;
THashMap<TString, TString> Modules_;