<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ydb/yql/essentials/tests/sql/minirun/part7, branch main</title>
<subtitle>Mirror of YDB github repos</subtitle>
<id>https://code.mastervirt.ru/ydb/atom?h=main</id>
<link rel='self' href='https://code.mastervirt.ru/ydb/atom?h=main'/>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/'/>
<updated>2026-07-03T12:55:10Z</updated>
<entry>
<title>YQL-21365: Fix TLangVerProxyNode::Clone</title>
<updated>2026-07-03T12:55:10Z</updated>
<author>
<name>vitya-smirnov</name>
<email>vitya-smirnov@yandex-team.com</email>
</author>
<published>2026-07-03T12:11:54Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=b3e7e5808868695f4c7b08c37628048bf1fcdb75'/>
<id>urn:sha1:b3e7e5808868695f4c7b08c37628048bf1fcdb75</id>
<content type='text'>
#### Fix TLangVerProxyNode::Clone and add related test cases ✎

- Corrected the `Clone` method implementation to properly handle deep copying of inner nodes using `SafeClone`, ensuring correct node duplication behavior.
- Introduced new test cases and canonical data to validate the functionality of `GROUP BY ROLLUP` with `NULLIF` and `COUNT(DISTINCT)` expressions.
- Added corresponding test configuration and SQL format validation files to support the new test scenario.

&lt;a href="https://nda.ya.ru/t/qa0kX64r7DqvtN"&gt;&lt;font size="2"&gt;Autodescription by Yandex Code Assistant&lt;/font&gt;&lt;/a&gt;
commit_hash:2f81ec1dbc9dd24149f8553a87e915809c800a74
</content>
</entry>
<entry>
<title>YQL-21315: Implement block guess</title>
<updated>2026-06-26T09:00:47Z</updated>
<author>
<name>atarasov5</name>
<email>atarasov5@yandex-team.com</email>
</author>
<published>2026-06-26T08:29:42Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=2db9f0c19f62105ce3a9ea4a4322946c5c19f594'/>
<id>urn:sha1:2db9f0c19f62105ce3a9ea4a4322946c5c19f594</id>
<content type='text'>
#### Implement BlockGuess functionality for variant type extraction ✎

- Introduces BlockGuess functionality to extract specific alternatives from variant types, supporting both tuple and struct variants
- Adds type annotation and runtime implementation for BlockGuess operations with proper validation and error handling
- Implements peephole optimization support for BlockGuess operations to improve query execution plans
- Includes comprehensive unit tests and SQL format validation for various BlockGuess scenarios
- Updates runtime version to 79 to enable new BlockGuess features and ensures backward compatibility

&lt;a href="https://nda.ya.ru/t/qa0kX64r7DqvtN"&gt;&lt;font size="2"&gt;Autodescription by Yandex Code Assistant&lt;/font&gt;&lt;/a&gt;
commit_hash:e8f7fc2859cc1986ee0d5fba8b3e25bbf9ba4c41
</content>
</entry>
<entry>
<title>Check lambda scope in the linear checker</title>
<updated>2026-05-26T09:20:50Z</updated>
<author>
<name>vvvv</name>
<email>vvvv@yandex-team.com</email>
</author>
<published>2026-05-26T08:22:14Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=4e15b5ec956634d8bf9bae68b133def154e55969'/>
<id>urn:sha1:4e15b5ec956634d8bf9bae68b133def154e55969</id>
<content type='text'>
commit_hash:65d1e3053e157375f7a704f1e635467ded5a7ef2
</content>
</entry>
<entry>
<title>YQL-21046: Support RANGE window on YqlSelect</title>
<updated>2026-05-22T15:10:49Z</updated>
<author>
<name>vitya-smirnov</name>
<email>vitya-smirnov@yandex-team.com</email>
</author>
<published>2026-05-22T09:47:55Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=5e63ebfba767f3d002c3dfb7ac9eec72c4f4ea75'/>
<id>urn:sha1:5e63ebfba767f3d002c3dfb7ac9eec72c4f4ea75</id>
<content type='text'>
commit_hash:2cb369cb2091489e28790782fe9e7679d367fbb3
</content>
</entry>
<entry>
<title>Intermediate changes</title>
<updated>2026-05-19T12:16:12Z</updated>
<author>
<name>robot-piglet</name>
<email>robot-piglet@yandex-team.com</email>
</author>
<published>2026-05-19T11:49:39Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=d6e0c3335404fb43982e91a5376c8e5787eaafc6'/>
<id>urn:sha1:d6e0c3335404fb43982e91a5376c8e5787eaafc6</id>
<content type='text'>
commit_hash:5e471728023b5404426daed232c4b00dbba8026c
</content>
</entry>
<entry>
<title>YQL-20234: Support Percentile agg phases</title>
<updated>2026-05-18T14:17:10Z</updated>
<author>
<name>vitya-smirnov</name>
<email>vitya-smirnov@yandex-team.com</email>
</author>
<published>2026-05-18T13:30:51Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=0f925c6e370e1f2b8a1ec5fbd02cbffe9390d356'/>
<id>urn:sha1:0f925c6e370e1f2b8a1ec5fbd02cbffe9390d356</id>
<content type='text'>
commit_hash:617264515b5da826be1327cb91b7fc6f6801a835
</content>
</entry>
<entry>
<title>Enable window new pipeline by default</title>
<updated>2026-05-08T16:50:31Z</updated>
<author>
<name>atarasov5</name>
<email>atarasov5@yandex-team.com</email>
</author>
<published>2026-05-08T16:25:35Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=c1a65b29963c6af1964c376ad1c4873366dd44a0'/>
<id>urn:sha1:c1a65b29963c6af1964c376ad1c4873366dd44a0</id>
<content type='text'>
 Canonize more tests
Canonize -F "*window*" -F "*tpcds*" tests
 Enable window new pipeline by default
commit_hash:6b5900972f1d065c6956e7ee03e734a80e0c6fa5
</content>
</entry>
<entry>
<title>YQL-20928: Fix RIGHT JOIN for YqlSelect</title>
<updated>2026-04-30T19:49:20Z</updated>
<author>
<name>vitya-smirnov</name>
<email>vitya-smirnov@yandex-team.com</email>
</author>
<published>2026-04-30T19:31:09Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=22fef882b14fbf377172984cc9c1aa8a38d0d947'/>
<id>urn:sha1:22fef882b14fbf377172984cc9c1aa8a38d0d947</id>
<content type='text'>
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
</content>
</entry>
<entry>
<title>YQL-21046: Support window functions for YqlSelect</title>
<updated>2026-04-28T11:53:09Z</updated>
<author>
<name>vitya-smirnov</name>
<email>vitya-smirnov@yandex-team.com</email>
</author>
<published>2026-04-28T11:05:28Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=ce09b36bc19e2bdb51861a2afc4d7b2a2af5d01f'/>
<id>urn:sha1:ce09b36bc19e2bdb51861a2afc4d7b2a2af5d01f</id>
<content type='text'>
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
</content>
</entry>
<entry>
<title>YQL-21046: Support window aggregation over YqlSelect</title>
<updated>2026-04-20T08:22:28Z</updated>
<author>
<name>vitya-smirnov</name>
<email>vitya-smirnov@yandex-team.com</email>
</author>
<published>2026-04-20T07:30:00Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=4e3178e1b19fe0b278631dfc888e902c4f8163c8'/>
<id>urn:sha1:4e3178e1b19fe0b278631dfc888e902c4f8163c8</id>
<content type='text'>
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
</content>
</entry>
</feed>
