summaryrefslogtreecommitdiffstats
path: root/yql/essentials/minikql/computation
diff options
context:
space:
mode:
authorvvvv <[email protected]>2025-03-14 17:36:02 +0300
committervvvv <[email protected]>2025-03-14 17:59:26 +0300
commite1e3c0031227e9869524610f96f2f1830d36def0 (patch)
tree3693022dfc0d7430b70bd84fdb6a308db9d4fb71 /yql/essentials/minikql/computation
parent4cbf84cfe6541c740d11ed105da0cc14c69b6d75 (diff)
YQL-19694 ABI logger interface
commit_hash:b673d403e9bfb2ac31eedd8d2231ac018a8f36dd
Diffstat (limited to 'yql/essentials/minikql/computation')
-rw-r--r--yql/essentials/minikql/computation/mkql_computation_node.cpp1
-rw-r--r--yql/essentials/minikql/computation/mkql_computation_node.h21
-rw-r--r--yql/essentials/minikql/computation/mkql_computation_node_graph.cpp3
-rw-r--r--yql/essentials/minikql/computation/mkql_validate_ut.cpp4
4 files changed, 23 insertions, 6 deletions
diff --git a/yql/essentials/minikql/computation/mkql_computation_node.cpp b/yql/essentials/minikql/computation/mkql_computation_node.cpp
index ec47df76345..274618248d7 100644
--- a/yql/essentials/minikql/computation/mkql_computation_node.cpp
+++ b/yql/essentials/minikql/computation/mkql_computation_node.cpp
@@ -59,6 +59,7 @@ TComputationContext::TComputationContext(const THolderFactory& holderFactory,
, TypeInfoHelper(new TTypeInfoHelper)
, CountersProvider(opts.CountersProvider)
, SecureParamsProvider(opts.SecureParamsProvider)
+ , LogProvider(opts.LogProvider)
{
std::fill_n(MutableValues.get(), mutables.CurValueIndex, NUdf::TUnboxedValue(NUdf::TUnboxedValuePod::Invalid()));
diff --git a/yql/essentials/minikql/computation/mkql_computation_node.h b/yql/essentials/minikql/computation/mkql_computation_node.h
index d300b7168f0..78c873b7b2f 100644
--- a/yql/essentials/minikql/computation/mkql_computation_node.h
+++ b/yql/essentials/minikql/computation/mkql_computation_node.h
@@ -45,7 +45,8 @@ struct TComputationOpts {
struct TComputationOptsFull: public TComputationOpts {
TComputationOptsFull(IStatsRegistry* stats, TAllocState& allocState, const TTypeEnvironment& typeEnv, IRandomProvider& randomProvider,
- ITimeProvider& timeProvider, NUdf::EValidatePolicy validatePolicy, const NUdf::ISecureParamsProvider* secureParamsProvider, NUdf::ICountersProvider* countersProvider)
+ ITimeProvider& timeProvider, NUdf::EValidatePolicy validatePolicy, const NUdf::ISecureParamsProvider* secureParamsProvider,
+ NUdf::ICountersProvider* countersProvider, const NUdf::ILogProvider* logProvider)
: TComputationOpts(stats)
, AllocState(allocState)
, TypeEnv(typeEnv)
@@ -54,6 +55,7 @@ struct TComputationOptsFull: public TComputationOpts {
, ValidatePolicy(validatePolicy)
, SecureParamsProvider(secureParamsProvider)
, CountersProvider(countersProvider)
+ , LogProvider(logProvider)
{}
TAllocState& AllocState;
@@ -63,6 +65,7 @@ struct TComputationOptsFull: public TComputationOpts {
NUdf::EValidatePolicy ValidatePolicy;
const NUdf::ISecureParamsProvider *const SecureParamsProvider;
NUdf::ICountersProvider *const CountersProvider;
+ const NUdf::ILogProvider* const LogProvider;
};
struct TWideFieldsInitInfo {
@@ -117,6 +120,7 @@ struct TComputationContext : public TComputationContextLLVM {
const NUdf::ITypeInfoHelper::TPtr TypeInfoHelper;
NUdf::ICountersProvider *const CountersProvider;
const NUdf::ISecureParamsProvider *const SecureParamsProvider;
+ const NUdf::ILogProvider* LogProvider;
TComputationContext(const THolderFactory& holderFactory,
const NUdf::IValueBuilder* builder,
@@ -272,6 +276,7 @@ struct TComputationNodeFactoryContext {
NUdf::ITypeInfoHelper::TPtr TypeInfoHelper;
NUdf::ICountersProvider* CountersProvider;
const NUdf::ISecureParamsProvider* SecureParamsProvider;
+ const NUdf::ILogProvider* LogProvider;
const TNodeFactory& NodeFactory;
const THolderFactory& HolderFactory;
const NUdf::IValueBuilder *const Builder;
@@ -289,6 +294,7 @@ struct TComputationNodeFactoryContext {
NUdf::ITypeInfoHelper::TPtr typeInfoHelper,
NUdf::ICountersProvider* countersProvider,
const NUdf::ISecureParamsProvider* secureParamsProvider,
+ const NUdf::ILogProvider* logProvider,
const TNodeFactory& nodeFactory,
const THolderFactory& holderFactory,
const NUdf::IValueBuilder* builder,
@@ -305,6 +311,7 @@ struct TComputationNodeFactoryContext {
, TypeInfoHelper(typeInfoHelper)
, CountersProvider(countersProvider)
, SecureParamsProvider(secureParamsProvider)
+ , LogProvider(logProvider)
, NodeFactory(nodeFactory)
, HolderFactory(holderFactory)
, Builder(builder)
@@ -339,7 +346,8 @@ struct TComputationPatternOpts {
EGraphPerProcess graphPerProcess,
IStatsRegistry* stats = nullptr,
NUdf::ICountersProvider* countersProvider = nullptr,
- const NUdf::ISecureParamsProvider* secureParamsProvider = nullptr)
+ const NUdf::ISecureParamsProvider* secureParamsProvider = nullptr,
+ const NUdf::ILogProvider* logProvider = nullptr)
: AllocState(allocState)
, Env(env)
, Factory(factory)
@@ -351,13 +359,15 @@ struct TComputationPatternOpts {
, Stats(stats)
, CountersProvider(countersProvider)
, SecureParamsProvider(secureParamsProvider)
+ , LogProvider(logProvider)
{}
void SetOptions(TComputationNodeFactory factory, const IFunctionRegistry* functionRegistry,
NUdf::EValidateMode validateMode, NUdf::EValidatePolicy validatePolicy,
const TString& optLLVM, EGraphPerProcess graphPerProcess, IStatsRegistry* stats = nullptr,
NUdf::ICountersProvider* counters = nullptr,
- const NUdf::ISecureParamsProvider* secureParamsProvider = nullptr) {
+ const NUdf::ISecureParamsProvider* secureParamsProvider = nullptr,
+ const NUdf::ILogProvider* logProvider = nullptr) {
Factory = factory;
FunctionRegistry = functionRegistry;
ValidateMode = validateMode;
@@ -367,6 +377,7 @@ struct TComputationPatternOpts {
Stats = stats;
CountersProvider = counters;
SecureParamsProvider = secureParamsProvider;
+ LogProvider = logProvider;
}
void SetPatternEnv(std::shared_ptr<TPatternCacheEntry> cacheEnv) {
@@ -386,9 +397,11 @@ struct TComputationPatternOpts {
IStatsRegistry* Stats = nullptr;
NUdf::ICountersProvider* CountersProvider = nullptr;
const NUdf::ISecureParamsProvider* SecureParamsProvider = nullptr;
+ const NUdf::ILogProvider* LogProvider = nullptr;
TComputationOptsFull ToComputationOptions(IRandomProvider& randomProvider, ITimeProvider& timeProvider, TAllocState* allocStatePtr = nullptr) const {
- return TComputationOptsFull(Stats, allocStatePtr ? *allocStatePtr : AllocState, Env, randomProvider, timeProvider, ValidatePolicy, SecureParamsProvider, CountersProvider);
+ return TComputationOptsFull(Stats, allocStatePtr ? *allocStatePtr : AllocState, Env, randomProvider, timeProvider,
+ ValidatePolicy, SecureParamsProvider, CountersProvider, LogProvider);
}
};
diff --git a/yql/essentials/minikql/computation/mkql_computation_node_graph.cpp b/yql/essentials/minikql/computation/mkql_computation_node_graph.cpp
index 75bcc4ce5cf..9f2e182acc8 100644
--- a/yql/essentials/minikql/computation/mkql_computation_node_graph.cpp
+++ b/yql/essentials/minikql/computation/mkql_computation_node_graph.cpp
@@ -238,6 +238,7 @@ public:
, TypeInfoHelper(new TTypeInfoHelper())
, CountersProvider(opts.CountersProvider)
, SecureParamsProvider(opts.SecureParamsProvider)
+ , LogProvider(opts.LogProvider)
, Factory(opts.Factory)
, FunctionRegistry(*opts.FunctionRegistry)
, ValidateMode(opts.ValidateMode)
@@ -463,6 +464,7 @@ private:
TypeInfoHelper,
CountersProvider,
SecureParamsProvider,
+ LogProvider,
*NodeFactory,
*PatternNodes->HolderFactory,
PatternNodes->ValueBuilder.Get(),
@@ -559,6 +561,7 @@ private:
NUdf::ITypeInfoHelper::TPtr TypeInfoHelper;
NUdf::ICountersProvider* CountersProvider;
const NUdf::ISecureParamsProvider* SecureParamsProvider;
+ const NUdf::ILogProvider* LogProvider;
const TComputationNodeFactory Factory;
const IFunctionRegistry& FunctionRegistry;
TIntrusivePtr<TMemoryUsageInfo> MemInfo;
diff --git a/yql/essentials/minikql/computation/mkql_validate_ut.cpp b/yql/essentials/minikql/computation/mkql_validate_ut.cpp
index 8b641958938..3a1d0588ff6 100644
--- a/yql/essentials/minikql/computation/mkql_validate_ut.cpp
+++ b/yql/essentials/minikql/computation/mkql_validate_ut.cpp
@@ -683,7 +683,7 @@ Y_UNIT_TEST_SUITE(TMiniKQLValidateTest) {
TFunctionTypeInfo funcInfo;
TType* userType = nullptr;
TStringBuf typeConfig;
- TStatus status = functionRegistry->FindFunctionTypeInfo(env, typeInfoHelper, nullptr, udfFuncName, userType, typeConfig, flags, {}, nullptr, &funcInfo);
+ TStatus status = functionRegistry->FindFunctionTypeInfo(env, typeInfoHelper, nullptr, udfFuncName, userType, typeConfig, flags, {}, nullptr, nullptr, &funcInfo);
MKQL_ENSURE(status.IsOk(), status.GetError());
auto type = funcInfo.FunctionType->GetReturnType();
fullValidateFunc(value, builder, type);
@@ -734,7 +734,7 @@ Y_UNIT_TEST_SUITE(TMiniKQLValidateTest) {
TStringBuf typeConfig;
NUdf::ITypeInfoHelper::TPtr typeInfoHelper(new TTypeInfoHelper);
TStatus status = functionRegistry.FindFunctionTypeInfo(pgmBuilder.GetTypeEnvironment(), typeInfoHelper, nullptr,
- udfFuncName, userType, typeConfig, flags, {}, nullptr, &funcInfo);
+ udfFuncName, userType, typeConfig, flags, {}, nullptr, nullptr, &funcInfo);
MKQL_ENSURE(status.IsOk(), status.GetError());
auto callable = pgmBuilder.Udf(udfFuncName);
return std::vector<TRuntimeNode>{callable, pgmBuilder.NewDataLiteral(testVal)};