diff options
author | aneporada <aneporada@ydb.tech> | 2023-08-29 07:19:56 +0300 |
---|---|---|
committer | aneporada <aneporada@ydb.tech> | 2023-08-29 07:37:16 +0300 |
commit | 8e73d5ba767d74ad34e4558173addee316054be4 (patch) | |
tree | 096818c3a286b5611ba2931cc00c010f64552a06 | |
parent | 83bf33d776ac03c37162fa324f659ce191776308 (diff) | |
download | ydb-8e73d5ba767d74ad34e4558173addee316054be4.tar.gz |
Fix dq.UseWideChannles optimizer and enable wide channels in tests
-rw-r--r-- | ydb/library/yql/dq/opt/dq_opt_build.cpp | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/ydb/library/yql/dq/opt/dq_opt_build.cpp b/ydb/library/yql/dq/opt/dq_opt_build.cpp index 9caff49017c..5d49d3c67d0 100644 --- a/ydb/library/yql/dq/opt/dq_opt_build.cpp +++ b/ydb/library/yql/dq/opt/dq_opt_build.cpp @@ -524,12 +524,14 @@ TDqPhyStage RebuildStageInputsAsWide(const TDqPhyStage& stage, bool useChannelBl TDqPhyStage RebuildStageOutputAsWide(const TDqPhyStage& stage, const TStructExprType& outputItemType, bool useChannelBlocks, TExprContext& ctx, TTypeAnnotationContext& typesCtx) { + TCoLambda program(ctx.DeepCopyLambda(stage.Program().Ref())); + // convert stream to wide stream - auto resultStream = ctx.Builder(stage.Program().Body().Pos()) + auto resultStream = ctx.Builder(program.Body().Pos()) .Callable("FromFlow") .Callable(0, "ExpandMap") .Callable(0, "ToFlow") - .Add(0, stage.Program().Body().Ptr()) + .Add(0, program.Body().Ptr()) .Seal() .Lambda(1) .Param("item") @@ -564,7 +566,7 @@ TDqPhyStage RebuildStageOutputAsWide(const TDqPhyStage& stage, const TStructExpr return Build<TDqPhyStage>(ctx, stage.Pos()) .InitFrom(stage) .Program() - .Args(stage.Program().Args()) + .Args(program.Args()) .Body(resultStream) .Build() .Settings(TDqStageSettings::New(stage).SetWideChannels(outputItemType).BuildNode(ctx, stage.Pos())) |