summaryrefslogtreecommitdiffstats
path: root/yql/essentials/tests/sql/minirun
Commit message (Collapse)AuthorAgeFilesLines
* YQL-20631: Support WITH CTE columns and fix UNION column order for YqlSelectvitya-smirnov3 days2-0/+28
| | | | | | | | | | | Implemented a column names specification for a WITH CTE. It requires a column order derivation. It was not working on `YqlSelect` until PR https://nda.ya.ru/t/qOC3TNqn7gAcy6 was merged. Also there was a bug with `UNION` column order inference, which is essential for RECURSIVE queries. There was compatibility problems with `PgSelect` `UNION` positional column order semantics, so it was tweaked in `YqlSelect` mode. commit_hash:c96192270ca6d51eaa0cb39cf59b65c3951ce3fe
* Preserve AssumeColumnOrder on DeriveColumnOrdervitya-smirnov4 days4-12/+12
| | | | commit_hash:c978cba70a9b24aa2e202caa54dc44f419e19468
* YQL-21048: Fix GROUPING SETS aggregation optionality on YqlSelectvitya-smirnov4 days3-0/+42
| | | | | | | | | | | | This patch fixes the query <https://nda.ya.ru/t/pYH4zpRH7fw6U4>. If you remove `PRAGMA YqlSelect`, you'll see that it works on a legacy translation. It is also required to fix PR <https://nda.ya.ru/t/IZFPoRjS7fw6j8>, because saving a column order makes the bug visible. The `nokey` flag of `YqlAgg` callable was renamed to `as_optional` and also an expansion was fixed by rewriting `MatchType` on `Optional` to `AsOptionalType` to handle `Null` and `pg` types properly. commit_hash:dc435437e87006c79bb93984d65931aaf5901af4
* YQL-20631: Support RECURSIVE WITH CTE on YqlSelectvitya-smirnov7 days4-0/+56
| | | | | | | | | | Implemented a RECURSIVE WITH CTE translation for YqlSelect. It relies on YqlSelf callable. As this callable binds to enclosing YqlSelect, the diagnostic that subquery can't reference an enclosing RECURSIVE WITH CTE was added, it is better, that an existing for pgSQL, where just "table not found" is emitted. The core idea under RECURSIVE handling is that a "not ready" CTE entry is added to a namespace (with a `nullptr` node), so it can be recognized. Checked some interesting test cases and wrote TODOs. commit_hash:65b8646e0615ae070b04822ce7af24245c203bbe
* YQL-20631: Support simple CTEs on YqlSelectvitya-smirnov8 days3-0/+36
| | | | | | | | | | | | | | | | | | | | | | | The first iteration on WITH CTE support. Only simple CTEs are supported. Properties: 1. Redefinition is forbidden. 2. Shadowing is supported. 3. Nested WITH CTEs are supported. Following features are not yet implemented: 1. Column names specification. There is an assertion failure at core because of an absent column order when translating it like for the `PgSelect`. 2. `RECURSIVE` is postponed. There a more sophisticated translation with `YqlSelf` callable is required. Also there was a potential defect because of an empty `Id` result not expected. commit_hash:759676d8a9d369f7eedd9b87f79455b2f8a9fcff
* YQL-21321 don't check for persistable in agg traits typecheckvvvv9 days1-0/+14
| | | | | | | | | | | #### `YQL-21321`: Adjust type checking for aggregate traits ✎ - Replaced persistable type check with computable type check during aggregate trait validation to allow more flexible type handling - Added new test cases to verify the behavior of unused aggregate types and ensure proper error reporting - Updated canonical data and test artifacts to reflect the changes in type checking logic and error messages <a href="https://nda.ya.ru/t/qa0kX64r7DqvtN"><font size="2">Autodescription by Yandex Code Assistant</font></a> commit_hash:e14b06e4a135d9aef8ae78a75c3fb23d983365a6
* Fix PayloadRenameOverWindow in overwrite caseaneporada2026-06-111-0/+14
| | | | commit_hash:867eb4209058a877aa60f86931daddf1e25ac600
* YQL-21297: Handle Interval64 in aggregate/windowvitya-smirnov2026-06-104-0/+84
| | | | commit_hash:10c8d54083c7064e63989ad9c341711fe84409b4
* YQL-20234: Fix agg phases over Null and disallow DISTINCTvitya-smirnov2026-06-086-3/+115
| | | | | | | - Fixed histogram, (bottom/top)(by)?, topfreq, random_(value/sample) over Null - Disabled DISTINCT with agg phases - Refactored code by phase predicates extraction commit_hash:c82f790224e84e542572d5cd270766e3244b4178
* YQL-21292 fixed switching of cycle detector & better diagsvvvv2026-06-051-0/+14
| | | | commit_hash:1a546dc230518eb6846155c77db762e4d83281d5
* YQL-21246: Propagate ExtractMembers over TableSourceimunkin2026-05-272-6/+27
| | | | commit_hash:048f5c5f1cf2f507a91c2f4cdb24aec0cc71a004
* YQL-20855: Support NULL as a type namevitya-smirnov2026-05-271-6/+6
| | | | commit_hash:e420d2d62e3a77af79abbec946f1008c1fa359c6
* YQL-21152: Support implicit USING at YqlSelectvitya-smirnov2026-05-277-0/+98
| | | | commit_hash:958a606c2956a1155a487070452acc770455bf66
* Check lambda scope in the linear checkervvvv2026-05-266-24/+38
| | | | commit_hash:65d1e3053e157375f7a704f1e635467ded5a7ef2
* YQL-21046: Support RANGE window on YqlSelectvitya-smirnov2026-05-2214-89/+103
| | | | commit_hash:2cb369cb2091489e28790782fe9e7679d367fbb3
* Intermediate changesrobot-piglet2026-05-1965-14886/+14987
| | | | commit_hash:5e471728023b5404426daed232c4b00dbba8026c
* YQL-20234: Support Percentile agg phasesvitya-smirnov2026-05-189-24/+192
| | | | commit_hash:617264515b5da826be1327cb91b7fc6f6801a835
* YQL-20234: Support RandomValue agg phasesvitya-smirnov2026-05-134-0/+56
| | | | commit_hash:934d9bd00af5903f26796cf610789aaa4a7bf39c
* YQL-21228 fix nulled == over variantsvvvv2026-05-121-0/+14
| | | | commit_hash:72d0f5c9f96875682a71eb11e67783a723112cce
* Enable window new pipeline by defaultatarasov52026-05-0810-660/+660
| | | | | | | Canonize more tests Canonize -F "*window*" -F "*tpcds*" tests Enable window new pipeline by default commit_hash:6b5900972f1d065c6956e7ee03e734a80e0c6fa5
* YQL-19813: Udf implementationatarasov52026-05-071-4/+4
| | | | commit_hash:183e3a952a021c4701c20d6677800f245239d822
* YQL-21136: Fix AvgIf(Interval64) result typevitya-smirnov2026-05-061-0/+28
| | | | commit_hash:13889e43b6156f11945dcee2ab2b59cdb056ce49
* YQL-20234: Support Corr and Cov agg phasesvitya-smirnov2026-05-064-0/+56
| | | | commit_hash:cb540d095291ddee3bb60c2d3addee54d23daa1c
* YQL-20928: Fix RIGHT JOIN for YqlSelectvitya-smirnov2026-04-305-0/+70
| | | | | | | | | | Support `FULL JOIN` and fix `RIGHT JOIN` for `YqlSelect`. The problem with `RIGHT JOIN` is that in a situation, when we have `[a, b, c, d, e]` on a stack and are going to "perform" `right`, all of `[a, b, c, d, e]` are marked optional, because the `inputIndex` is equal to stack size. But we must mark only `[a, b, c, d]` as optionals. commit_hash:b78c5bcecba4b736475d3428918c2a3c377373bb
* YQL-21128: create AsOptionalmariibykova2026-04-301-0/+14
| | | | commit_hash:c998ba15db7c4e5137f44904de85755aa7322e8e
* YQL-20928: Support SELECT DISTINCT for YqlSelectvitya-smirnov2026-04-302-5/+19
| | | | commit_hash:af4c180548bf1699ec6afb335167a4220418386c
* YQL-19813: Pass runtime settings to minikql + YT + minirunatarasov52026-04-292-3/+21
| | | | commit_hash:054395f57e37951159c1184eae2e6d4bc81245f8
* YQL-21048: Support Grouping function at YqlSelectvitya-smirnov2026-04-281-0/+14
| | | | | | Now `Grouping` function kindly works, but with some known bug, that will be fixed in the next PR. It gives 4 TPC-DS queries. commit_hash:e891401453cbd9d9d964f673053b856e55ea8b56
* YQL-21046: Support window functions for YqlSelectvitya-smirnov2026-04-2810-0/+308
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds support for `RowNumber`, `CumeDist`, `NTile`, `Rank`, `DenseRank`, `PercentRank`, `Lead`, `Lag`, `FirstValue`, `LastValue` and `NthValue`. It gives +3 TPC-DS queries and +5 TPC-DS bugs unlocked. The callable `YqlWin` was introduces, having the following form: ```yqls (YqlWin 'function_name 'window_name '() # options (Void) # type slot ...) # args ``` During the callable type annotation and expansion the same code for implementation functions substitution is used and shared even with a pgSQL. There was an issue with a `listType` for `YqlAgg`, `YqlAggWin` and `YqlWin`, because it was built incorrectly by referencing an atom "row" instead of _that_ argument row. It is fixed with a new "type slot". Now it has 3 states: `(Void)`, which is set by translator just as a stub, `row` that is set by `YqlSetItemWrapper` during the `RebuildLambdaColumns`, so then on the `YqlWin` type annotation it can take this `row` and wrap it to the `listType`, pass to the function and call for a repetition, so in a next stage the `resultType` will be ready. commit_hash:256fc2cb359714a646a308359b340b1715919f5d
* YQL-16594 hide warnings in some casesvvvv2026-04-2310-76/+14
| | | | commit_hash:a201cbc3a08b7bad471d4d6a15f3dfc3f63d989b
* Enable ExpandLMapOrShuffleByKeysViaBlock by defaultimunkin2026-04-218-39/+39
| | | | commit_hash:3eed51d012b7cde52449ebd225789e18b8ebd678
* YQL-21034: Convert integers to Uint64 at ListSampleNmariibykova2026-04-202-31/+31
| | | | commit_hash:f508795113ebbfadfb1bc05529f4af46ae7837d2
* Pushdown/fuse Filter + CalcOverWindowaneporada2026-04-206-0/+84
| | | | commit_hash:198ce0c7875d77fab8082382d915bf1261775f68
* YQL-21046: Support window aggregation over YqlSelectvitya-smirnov2026-04-207-0/+182
| | | | | | | | | Introduce `YqlAggWin` callable and adapt `PgWindow` as `YqlWindow`. The `YqlAggWin` is similar to `YqlAgg`, but with window reference (name) included. Moved `PgWindowWrapper` to `SqlWindowWrapper`. It gives +6 TPC-DS test cases. Window functions are not yet supported, because they have separate callables and an extra design is required. commit_hash:ccef4463fd994779da21514dc9f6f596c511bbfe
* YQL-21168: Fix protobuf type config file parsingatarasov52026-04-171-0/+14
| | | | commit_hash:820e0aec8856d51711fb71caa225cd7d6d89e7a0
* YQL-21165 fixvvvv2026-04-151-6/+6
| | | | commit_hash:ea278625098c2a9c0ad3bfbab7b981d3cc556020
* Intermediate changesrobot-piglet2026-04-1511-145/+145
| | | | commit_hash:9bdeca950e4ca97e07b2da163f014c101189c60b
* YQL-21031: Range decimalatarasov52026-04-145-0/+84
| | | | commit_hash:836406699a568f3d53cbd91256d586d37bf8f4a9
* YQL-21027: Fix pg value serializationatarasov52026-04-132-0/+28
| | | | commit_hash:9ee085f14c8ce1d9c66c3b1008f71570ea975bf8
* YQL-20873: Range PG supportatarasov52026-04-1310-2/+674
| | | | commit_hash:9e799ea42a2692eb96ebc792b48e46dd060c182b
* Secure tmp foldersziganshinmr2026-04-081-6/+6
| | | | | Add support for automated allocation of secure TmpFolder on YT clusters for each user commit_hash:2d06fc7616f65d9814c7a5ca33a4da582fb5b016
* YQL-20773 PositionOf & WithIssuevvvv2026-04-012-0/+28
| | | | commit_hash:fd9981b64488aca88d19a45aa956d80eab220cb8
* YQL-21026: Fix IS DISTINCT from pg and nullatarasov52026-04-013-0/+42
| | | | commit_hash:fb14ee5b8cca07451478bfbffcc9a2f0b3d751f5
* YQL-20234: Fix partial aggregation for Histogram and TopFreqvitya-smirnov2026-03-314-0/+56
| | | | | | `Null` are not yet implemented, because it was hard to fix, will do it later. commit_hash:879a892d511a0a2dd7110a728f01f80c260dedbf
* YQL-21048: Support GROUPING SETS for YqlSelectvitya-smirnov2026-03-308-0/+182
| | | | | | | | | | | | | | | | | | This patch unlocks a subset of `GROUPING SETS`, `ROLLUP` and `CUBE` syntax for `YqlSelect`. The `sql` was easy, but I faced problems at the `core` level. An existing expansion was OK, but type annotation was changed to correctly annotate `GROUP BY` keys as `Optional`. ```haskell notNullKeys groupBy = union [ ( intersection [ groupingSet | groupingSet in groupingSets ] ) | groupingSets in groupBy ] ``` It gives 60/100 (+9) TPC-DS queries. commit_hash:defda3152f10bf16b9e6300294bc23cccfa1329c
* YQL-20234: Fix partial aggregation for Top/Bottomvitya-smirnov2026-03-307-0/+112
| | | | | | | | | | | | Fixed agg phases for `Top`, `Bottom`, `TopBy` and `BottomBy`. The `SerializedState` for `Top` and `Bottom` is contains `MaxSize`, so only the `state` argument is required when it `IsOverState`. `Null` are not yet implemented, because it was hard to fix, will do it later. The code is not clean, but to fix it a huge refactoring is needed, including `aggregate.yqls` and `aggregation.cpp`. Also YQLs minirun launch target was introduced, because it is easier to experiment with YQLs directly, rather than tweaking the SQL translator. commit_hash:47af002f70d9be6db61316e64aa866d4bff34cf4
* Intermediate changesrobot-piglet2026-03-239-0/+336
| | | | commit_hash:52386c60ce66e769fe972c72eed82ace0d34242b
* YQL-20793 Sql tests, final partvvvv2026-03-231-1/+1
| | | | commit_hash:1b894cda0775421321d11382600be79c3b5bef3d
* YQL-21068: Fix duplicated preaggregate exprvitya-smirnov2026-03-201-0/+14
| | | | | | | | | | | | Here was 2 issues: 1. `Init` return status was ignored and so error suppressed. 2. `PreaggregateExpr` was collected twice. On the first attempt it was replaced with a synthetic column that will be "registered" in a source later, and on a second attempt it was already that synthetic, but not yet registered column and so it's init was failing. commit_hash:4398a075d53d99cbb9b172ebae0a05aff5e2d5a7
* YQL-20793 Sql tests, part 1vvvv2026-03-201-1/+1
| | | | commit_hash:63ea284bd7ade74203421fe2a12318f658f058eb