<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ydb/yql/essentials/tests/sql/minirun, 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-17T15:57:11Z</updated>
<entry>
<title>YQL-21315: Block variant item implementation</title>
<updated>2026-07-17T15:57:11Z</updated>
<author>
<name>atarasov5</name>
<email>atarasov5@yandex-team.com</email>
</author>
<published>2026-07-17T08:28:08Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=0e52f04caa16030b7e49090548b32fb50be2ef81'/>
<id>urn:sha1:0e52f04caa16030b7e49090548b32fb50be2ef81</id>
<content type='text'>
BlockVariantItem implementation
commit_hash:f35a597dee3dc67ebc5be599ed9d379d7ad57802
</content>
</entry>
<entry>
<title>YQL-20804: Fix Decimal type conversion</title>
<updated>2026-07-15T11:10:17Z</updated>
<author>
<name>atarasov5</name>
<email>atarasov5@yandex-team.com</email>
</author>
<published>2026-07-15T10:28:32Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=c8d98f95fc8e8877300045ca3f6b639e02833509'/>
<id>urn:sha1:c8d98f95fc8e8877300045ca3f6b639e02833509</id>
<content type='text'>
#### `YQL-20804`: Fix Decimal type conversion ✎

- Enhanced type annotation system to properly handle Decimal type conversions by introducing a new `EDecimalConversionMode` configuration option that allows controlling how common types are computed for Decimal values
- Modified core type annotation functions to accept and utilize a `TTypeAnnotationContext` parameter, ensuring consistent type resolution across join operations and type conversions
- Updated join-related functions and peephole optimizations to pass type context information, fixing issues with Decimal type compatibility during join key processing
- Added comprehensive unit tests to verify Decimal type conversion behavior and ensure proper casting between different Decimal precisions and scales
- Extended type annotation infrastructure to support both strict and lenient Decimal conversion modes, improving error handling and type inference for edge cases

&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:f4ec01ad79cb2f3219b529118380747828075e6b
</content>
</entry>
<entry>
<title>YQL-16277: Expand SqlCombine via LPartitionsByKeys</title>
<updated>2026-07-15T08:59:35Z</updated>
<author>
<name>imunkin</name>
<email>imunkin@yandex-team.com</email>
</author>
<published>2026-07-15T08:22:32Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=611aed68caf7223b9c0d703c89ec37216059e0a9'/>
<id>urn:sha1:611aed68caf7223b9c0d703c89ec37216059e0a9</id>
<content type='text'>
#### Expand SqlCombine via LPartitionsByKeys ✎

- Replaced `PartitionsByKeys` with `LPartitionsByKeys` to enhance the SqlCombine expansion logic
- Modified the lambda expression structure to directly use `partitionStream` parameter instead of intermediate `partitionList`, simplifying the stream processing pipeline
- Updated the chopper handler to work directly with the stream input, improving efficiency and consistency in data processing
- Adjusted canondata checksum due to structural changes in the generated query plan

&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:2b5dc46308ee7316727feefecffabfed91ebfef6
</content>
</entry>
<entry>
<title>YQL-21404 implemented syscache, table, func call</title>
<updated>2026-07-14T14:57:28Z</updated>
<author>
<name>vvvv</name>
<email>vvvv@yandex-team.com</email>
</author>
<published>2026-07-14T14:17:32Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=4f6a4597ecf74d3d25e8df990b45ee81026c73b0'/>
<id>urn:sha1:4f6a4597ecf74d3d25e8df990b45ee81026c73b0</id>
<content type='text'>
#### `YQL-21404`: Implemented syscache, table, and function call support for collations ✎

- Added support for PostgreSQL collation handling in function calls, enabling explicit collation specification via named arguments
- Implemented syscache and table catalog support for pg_collation system table to provide complete catalog information
- Enhanced type annotation and runtime compilation to properly handle collation OIDs and validate collation names
- Introduced ICU locale collation support with stable OID assignment based on locale position in generated catalog
- Added comprehensive test coverage for collation functionality including standard and ICU locales, collation validation, and error cases
- Extended SQL parsing to support COLLATE clauses and proper collation propagation in function calls

&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:e9a32cc848bef7b68b4f57f71a1f5f69e0de9653
</content>
</entry>
<entry>
<title>YQL-21315: Implement block variant comp node</title>
<updated>2026-07-14T09:17:28Z</updated>
<author>
<name>atarasov5</name>
<email>atarasov5@yandex-team.com</email>
</author>
<published>2026-07-14T08:21:03Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=290e3f02532a30eabcf4a4c6aaa6fa36cb48a887'/>
<id>urn:sha1:290e3f02532a30eabcf4a4c6aaa6fa36cb48a887</id>
<content type='text'>
#### Implement Block Variant Computational Node ✎

- Introduces a new computational node for handling variant types in block operations, supporting both tuple and struct variants
- Adds type annotation and runtime support for the new variant node with proper type checking and validation
- Implements block-level variant operations that can select specific alternatives from variant types based on index or member name
- Includes comprehensive unit tests and integration tests covering both tuple and struct variant scenarios
- Updates runtime version to 81 and integrates the new node into the compilation and execution pipeline
- Provides SQL syntax support for variant operations through the `Variant` function with appropriate type handling

&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:a07c1a365815a271cdd34958369156fd542fd5cc
</content>
</entry>
<entry>
<title>YQL-21242: Support Linear types in If branches</title>
<updated>2026-07-13T11:46:11Z</updated>
<author>
<name>eakozyrev</name>
<email>eakozyrev@yandex-team.com</email>
</author>
<published>2026-07-13T11:16:51Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=8865db458215f8589a2dce50ecf8abb083d2c095'/>
<id>urn:sha1:8865db458215f8589a2dce50ecf8abb083d2c095</id>
<content type='text'>
&lt;section id="quibbler-autodescription"&gt;

#### Поддержка линейных типов в ветках оператора If 📝

- 🔄 Обновлена логика проверки использования линейных значений в ветках оператора `If`, теперь учитывается возможность использования значений в разных ветках и их совместимость по путям выполнения.
- 🛠 Добавлена проверка покрытия всех веток для линейных значений, чтобы избежать ситуаций, когда значение не используется на всех возможных путях выполнения.
- 🧠 Улучшена система отслеживания использования линейных значений, включая обработку вложенных условий и корректную проверку на повторное использование в одной ветке.
- ✅ Внесены изменения в оптимизатор, позволяющие корректно обрабатывать идентичные ветки в операторе `If`, улучшая производительность и корректность работы.
- 🧪 Добавлены новые тесты и обновлены существующие для проверки корректности работы с линейными типами в ветках `If` и `IfStrict`.

&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;
&lt;/section&gt;

Extended TUsageVisitor to track branch execution context.
commit_hash:3ec5339a9d4be05580088060917fc7c2996432b9
</content>
</entry>
<entry>
<title>YQL-21315: Block way implementation</title>
<updated>2026-07-07T13:59:11Z</updated>
<author>
<name>atarasov5</name>
<email>atarasov5@yandex-team.com</email>
</author>
<published>2026-07-07T13:15:20Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=835c5943fbc677ccf1b7e3c1f4df50c3bf5486dd'/>
<id>urn:sha1:835c5943fbc677ccf1b7e3c1f4df50c3bf5486dd</id>
<content type='text'>
#### Block Way Implementation ✎

- Implemented the `BlockWay` function to extract variant type information from block inputs, returning either tuple indices or struct member names
- Added type annotation support for `BlockWay` operations with proper handling of optional variants and different underlying types
- Introduced computation node implementation for `BlockWay` that processes both tuple and struct variants efficiently
- Enhanced runtime version handling to support the new `BlockWay` functionality with version 80
- Added comprehensive unit tests covering various scenarios including tuple variants, struct variants, optional variants, and edge cases
- Integrated `BlockWay` into the SQL parser and program builder with proper type inference and validation
- Added SQL format tests and canonical data for tuple and struct variant scenarios with and without optionality

&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:70a82f5d13a7c1499a9ad88fc5d9b079e352d7ef
</content>
</entry>
<entry>
<title>Push Any in EquiJoin tree</title>
<updated>2026-07-06T16:08:27Z</updated>
<author>
<name>mpereskokova</name>
<email>mpereskokova@yandex-team.com</email>
</author>
<published>2026-07-06T15:23:22Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=4d87973984a719c41b6e7a846d93fc8052208495'/>
<id>urn:sha1:4d87973984a719c41b6e7a846d93fc8052208495</id>
<content type='text'>
#### Push Any in EquiJoin tree ✎

- Introduces logic to push "Any" hints through EquiJoin tree structures to optimize join operations
- Adds support for all join types (Inner, Left, Right, Full, Semi, etc.) when pushing Any hints
- Moves PruneKeys functionality to the leaves of EquiJoin tree and enhances its behavior
- Implements new optimization passes that improve pruning and hint propagation in join operations
- Updates test suite with comprehensive test cases covering various join types and key shapes
- Refactors existing code by moving EquiJoin-related optimizations into a dedicated flow step

&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:fda17ab32277b4da545c8df1393eaeb8a7e5c229
</content>
</entry>
<entry>
<title>YQL-19699: Keep World for AND/OR Absorption</title>
<updated>2026-07-03T14:03:53Z</updated>
<author>
<name>maxkovalev</name>
<email>maxkovalev@yandex-team.com</email>
</author>
<published>2026-07-03T13:31:13Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=5c10539b219fbb0925be48c79d47e3c33d2eda95'/>
<id>urn:sha1:5c10539b219fbb0925be48c79d47e3c33d2eda95</id>
<content type='text'>
#### `YQL-19699`: Keep World for AND/OR Absorption ✎

- Introduces logic to preserve world information during AND/OR absorption optimizations to prevent incorrect side effect handling
- Adds validation to ensure side effects are properly considered when determining if expressions can be safely absorbed
- Updates optimization passes to maintain world context in cases where logical absorption would otherwise alter execution semantics
- Includes comprehensive test coverage for various side effect scenarios in logical absorption cases
- Ensures that optimizations respect the presence of side effects in expressions to maintain correct evaluation order and behavior

&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:5802b1e45ce9c14cafddb9ba5e0356406a6d8fe3
</content>
</entry>
<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>
</feed>
