File tree Expand file tree Collapse file tree 7 files changed +89
-14
lines changed
hybrid_file/part3/canondata
part7/canondata/test.test_match_recognize-without_order_by--Results_ Expand file tree Collapse file tree 7 files changed +89
-14
lines changed Original file line number Diff line number Diff line change @@ -8935,10 +8935,7 @@ template <NKikimr::NUdf::EDataSlot DataSlot>
8935
8935
TExprNode::TListType applyChildren = input->ChildrenList();
8936
8936
applyChildren.pop_back(); // Remove position of list argument
8937
8937
8938
- if (input->Head().Type() != TExprNode::Lambda) {
8939
- if (!EnsureCallableType(input->Head(), ctx.Expr)) {
8940
- return IGraphTransformer::TStatus::Error;
8941
- }
8938
+ if (input->Head().GetTypeAnn() && input->Head().GetTypeAnn()->GetKind() == ETypeAnnotationKind::Callable) {
8942
8939
const TCallableExprType* callableType = input->Head().GetTypeAnn()->Cast<TCallableExprType>();
8943
8940
8944
8941
if (applyChildren.size() < callableType->GetArgumentsSize() + 1 - callableType->GetOptionalArgumentsCount()) {
@@ -8992,11 +8989,9 @@ template <NKikimr::NUdf::EDataSlot DataSlot>
8992
8989
}
8993
8990
else {
8994
8991
auto lambda = input->HeadPtr();
8995
- const auto args = lambda->Child(0);
8996
- if (input->ChildrenSize() - 2 != args->ChildrenSize()) {
8997
- ctx.Expr.AddError(TIssue(ctx.Expr.GetPosition(input->Pos()), TStringBuilder() << "Different arguments count, lambda has "
8998
- << args->ChildrenSize() << " arguments, but provided " << (input->ChildrenSize() - 2)));
8999
- return IGraphTransformer::TStatus::Error;
8992
+ auto status = ConvertToLambda(lambda, ctx.Expr, input->ChildrenSize() - 2);
8993
+ if (status == IGraphTransformer::TStatus::Error) {
8994
+ return status;
9000
8995
}
9001
8996
9002
8997
output = ctx.Expr.Builder(input->Pos())
Original file line number Diff line number Diff line change 2367
2367
}
2368
2368
],
2369
2369
"test.test[pragma-config_exec--Results]" : [],
2370
+ "test.test[produce-process_lambda_opt_args-default.txt-Analyze]" : [
2371
+ {
2372
+ "checksum" : " db71f16db01fe45fcaff58e8f061b470" ,
2373
+ "size" : 6828 ,
2374
+ "uri" : " https://{canondata_backend}/1942100/d22a096de8f9cd6961c70a84e39de8dcd39ce45e/resource.tar.gz#test.test_produce-process_lambda_opt_args-default.txt-Analyze_/plan.txt"
2375
+ }
2376
+ ],
2377
+ "test.test[produce-process_lambda_opt_args-default.txt-Debug]" : [
2378
+ {
2379
+ "checksum" : " 901165ba1200caf03bc5f29c9348ad8d" ,
2380
+ "size" : 2061 ,
2381
+ "uri" : " https://{canondata_backend}/1942100/d22a096de8f9cd6961c70a84e39de8dcd39ce45e/resource.tar.gz#test.test_produce-process_lambda_opt_args-default.txt-Debug_/opt.yql_patched"
2382
+ }
2383
+ ],
2384
+ "test.test[produce-process_lambda_opt_args-default.txt-Plan]" : [
2385
+ {
2386
+ "checksum" : " db71f16db01fe45fcaff58e8f061b470" ,
2387
+ "size" : 6828 ,
2388
+ "uri" : " https://{canondata_backend}/1942100/d22a096de8f9cd6961c70a84e39de8dcd39ce45e/resource.tar.gz#test.test_produce-process_lambda_opt_args-default.txt-Plan_/plan.txt"
2389
+ }
2390
+ ],
2391
+ "test.test[produce-process_lambda_opt_args-default.txt-Results]" : [],
2370
2392
"test.test[produce-process_with_udf_validate-default.txt-Analyze]" : [
2371
2393
{
2372
2394
"checksum" : " be0f13fdf2aa4cfcc736815caa5d992e" ,
Original file line number Diff line number Diff line change 2603
2603
"uri" : " https://{canondata_backend}/1920236/56560fc4eb0991ee6681b0a1b288f62576ec0df7/resource.tar.gz#test.test_pg_duplicated-star_from_crossjoin-default.txt-Plan_/plan.txt"
2604
2604
}
2605
2605
],
2606
+ "test.test[produce-process_lambda_opt_args-default.txt-Debug]" : [
2607
+ {
2608
+ "checksum" : " e2259aa77ae943bcfe8fc9caedb98d00" ,
2609
+ "size" : 2669 ,
2610
+ "uri" : " https://{canondata_backend}/1814674/0e62762049861bcf9f9d67d9b14ebdbaab665fa3/resource.tar.gz#test.test_produce-process_lambda_opt_args-default.txt-Debug_/opt.yql_patched"
2611
+ }
2612
+ ],
2613
+ "test.test[produce-process_lambda_opt_args-default.txt-Plan]" : [
2614
+ {
2615
+ "checksum" : " a501aca13d0cdb216b2b1e3875ab929e" ,
2616
+ "size" : 8249 ,
2617
+ "uri" : " https://{canondata_backend}/1814674/0e62762049861bcf9f9d67d9b14ebdbaab665fa3/resource.tar.gz#test.test_produce-process_lambda_opt_args-default.txt-Plan_/plan.txt"
2618
+ }
2619
+ ],
2606
2620
"test.test[produce-process_with_udf_validate-default.txt-Debug]" : [
2607
2621
{
2608
2622
"checksum" : " d38c739bd48daee1bc9164fd494c78df" ,
Original file line number Diff line number Diff line change 15322
15322
"uri": "https://{canondata_backend}/1784117/d56ae82ad9d30397a41490647be1bd2124718f98/resource.tar.gz#test_sql2yql.test_produce-process_and_filter_/sql.yql"
15323
15323
}
15324
15324
],
15325
+ "test_sql2yql.test[produce-process_lambda_opt_args]": [
15326
+ {
15327
+ "checksum": "4b75cc3c37fedf0e63bdd5e43ea06d68",
15328
+ "size": 3814,
15329
+ "uri": "https://{canondata_backend}/1936273/ff4f0a6d173adeb50438b8fd581dd8a952c141bd/resource.tar.gz#test_sql2yql.test_produce-process_lambda_opt_args_/sql.yql"
15330
+ }
15331
+ ],
15325
15332
"test_sql2yql.test[produce-process_multi_in]": [
15326
15333
{
15327
15334
"checksum": "781a42dd763a6735bc4078a7a36e144f",
31639
31646
"uri": "https://{canondata_backend}/1880306/64654158d6bfb1289c66c626a8162239289559d0/resource.tar.gz#test_sql_format.test_produce-process_and_filter_/formatted.sql"
31640
31647
}
31641
31648
],
31649
+ "test_sql_format.test[produce-process_lambda_opt_args]": [
31650
+ {
31651
+ "checksum": "52fc6dc9253a2fe48d8ad637e655203b",
31652
+ "size": 267,
31653
+ "uri": "https://{canondata_backend}/1936273/ff4f0a6d173adeb50438b8fd581dd8a952c141bd/resource.tar.gz#test_sql_format.test_produce-process_lambda_opt_args_/formatted.sql"
31654
+ }
31655
+ ],
31642
31656
"test_sql_format.test[produce-process_multi_in]": [
31643
31657
{
31644
31658
"checksum": "4a33f40cf13fca883c7f2662b5a83c1c",
Original file line number Diff line number Diff line change
1
+ USE plato;
2
+
3
+ $f = ($x, $optArg?)- > {
4
+ return Ensure($x, $optArg is null or len($optArg)> 0 );
5
+ };
6
+
7
+ PROCESS Input0 USING $f(TableRow());
8
+
9
+ PROCESS Input0 USING $f(TableRow(),' foo' );
10
+
11
+ PROCESS Input0 USING $f(TableRows());
12
+
13
+ PROCESS Input0 USING $f(TableRows(),' foo' );
14
+
Original file line number Diff line number Diff line change 2300
2300
"uri" : " https://{canondata_backend}/937458/4ef5c22fa3a7e5fd4e0ef2192cee531d67d22319/resource.tar.gz#test.test_pragma-release_temp_data_chain_pull--Results_/results.txt"
2301
2301
}
2302
2302
],
2303
+ "test.test[produce-process_lambda_opt_args-default.txt-Debug]" : [
2304
+ {
2305
+ "checksum" : " e0f2a60056375db797d93f91152a4429" ,
2306
+ "size" : 2064 ,
2307
+ "uri" : " https://{canondata_backend}/1031349/58ce630c12e9fbb5d612967cd2d5c6e30429d817/resource.tar.gz#test.test_produce-process_lambda_opt_args-default.txt-Debug_/opt.yql"
2308
+ }
2309
+ ],
2310
+ "test.test[produce-process_lambda_opt_args-default.txt-Plan]" : [
2311
+ {
2312
+ "checksum" : " 9816950a9f9605af40ab6cfaad4af11f" ,
2313
+ "size" : 7680 ,
2314
+ "uri" : " https://{canondata_backend}/1031349/58ce630c12e9fbb5d612967cd2d5c6e30429d817/resource.tar.gz#test.test_produce-process_lambda_opt_args-default.txt-Plan_/plan.txt"
2315
+ }
2316
+ ],
2317
+ "test.test[produce-process_lambda_opt_args-default.txt-Results]" : [
2318
+ {
2319
+ "checksum" : " fe42b877468bdc4f554baebbe16b029e" ,
2320
+ "size" : 6730 ,
2321
+ "uri" : " https://{canondata_backend}/1031349/58ce630c12e9fbb5d612967cd2d5c6e30429d817/resource.tar.gz#test.test_produce-process_lambda_opt_args-default.txt-Results_/results.txt"
2322
+ }
2323
+ ],
2303
2324
"test.test[produce-process_multi_in_single_out--Debug]" : [
2304
2325
{
2305
2326
"checksum" : " f565d7aff1e516d638a9f39059b6d9af" ,
Load Diff This file was deleted.
You can’t perform that action at this time.
0 commit comments