summaryrefslogtreecommitdiffstats
path: root/yql/essentials/core/expr_nodes
Commit message (Collapse)AuthorAgeFilesLines
* YQL-21246: Propagate ExtractMembers over TableSourceimunkin12 days1-0/+5
| | | | commit_hash:048f5c5f1cf2f507a91c2f4cdb24aec0cc71a004
* WATERMARKS: YQL: Introduce WATERMARK = exprvokayndzop2026-05-191-0/+9
| | | | | Introduce `WATERMARK = expr` in arbitrary place in the query commit_hash:3ac51a6e2b9f8e4079d1e3fd2e37fa8217582598
* Pushdown/fuse Filter + CalcOverWindowaneporada2026-04-201-0/+9
| | | | commit_hash:198ce0c7875d77fab8082382d915bf1261775f68
* YQL-20095: Enable modernize-use-usingvitya-smirnov2026-03-041-3/+3
| | | | commit_hash:ea1f0987ec40e3e683c35bffb64b7f5ab35e73ed
* YQL-20095: Enable modernize-pass-by-valuevitya-smirnov2026-03-021-1/+3
| | | | commit_hash:4939dfad654f18bb31e40711ee0c39063889f17b
* YQL-20095: Enable modernize-concat-nested-namespacesvitya-smirnov2026-02-171-4/+2
| | | | commit_hash:2c0e0389bf5eca0c8334d55143674a8acf94a88d
* YQL-20095: Enable google-explicit-constructorvitya-smirnov2026-01-231-2/+8
| | | | commit_hash:4d77ad10fd4db303459ec4e45e139967c7fc8196
* multihopping: add FarFuture statistics and limitsyumkam72025-12-261-8/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ~~TODO:~~ [X] uncomment RuntimeVersion checks [X] rethink interval parsing (switch to ISO/"PT10S") [X] remove debug prints [X] rfc: при задании любого из параметров в HoppingWindow, для неуказанных параметров используются умолчания; возможно, лучше брать из `config.flags`? [X] rfc: вообще, нужны ли `config.flags`? -> дропаем [X] добавить тесты (ut) нового синтаксиса `HoppingWindow()` yql/essentials/sql/v1/sql_ut_common.h Лимиты и политику превышения можно задавать опциональные именованные параметры в HoppingWindow: ``` SELECT ... GROUP BY HoppingWindow(`time`, 'PT1S', 'PT10S', 10 AS SizeLimit, -- также допускается указание специального значения "max" -- лимит при этом выключается "PT1H" AS TimeLimit, -- также допускается указание специального значения "max" -- лимит при этом выключается "adjust" AS LatePolicy -- возможно указывать также "drop" "drop" AS EarlyPolicy) -- возможно указывать также "close" и "adjust" ``` Подробнее см. тикет Изменение contrib/ydb можно тащить отдельно (без него опции не будут работать, но ничего не сломается) commit_hash:fe165d77aa3aa923770accb805177c6b1eba4cb0
* Watermarks: YQL: fix constraintsvokayndzop2025-11-011-1/+2
| | | | commit_hash:f2ada639a636eb38defc0e8ecf61d3e35845538a
* YQL-20436: Translate `SELECT .. FROM VALUES ..` to `YqlSelect`vitya-smirnov2025-10-141-0/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Current `SQLv1` translation produces relatively low level `YQLs` constructions that are hard to match during later optimizations, for example, subqueries unnesting. Also it assumes that expressions are only depend on corresponding source row, which is not true for correlated subqueries. Both limitations blocks currelated subqueries implementation. Although the problem exists for `SQLv1`, it is already solved for `PG` syntax. There PostgreSQL-produced AST is converted to special `YQLs` "bulk select" node called `PgSelect`. It is more declarative and expanded later than translation. This fact helped to support correlated subqueries, which with `PgSelect` are type-checkable and decorrelatable (not generally, but heuristically). This patch is the first step forward to "bulk select" translation for `SQLv1`. As there are a lot of code already written for `PgSelect` and `PG` and `SQLv1` relatively similar, I decided to rebrand `PgSelect` into more general `SqlSelect` node. It seems that for some near future goals `PgSelect` should be enough. There was 2 problems solved: 1. `PgSelect` comes with `OrderedColumns` by default and its implementation tightly coupled with it. 2. `PgSelect` does Pg type casts. This patch contains following changes: - Added pragma `YqlSelect = 'disable' | 'auto' | 'force'` - Added `YqlSelect` (`PgSelect` alias) translation - Changed `PgSelect` wrappers to support `YqlSelect` - Changed `PgSelect` expanders to support `YqlSelect` commit_hash:8a55d63e06c22592b2029dd260bbd259194e92dc
* YQL-20086 invert flagvvvv2025-10-101-2/+0
| | | | commit_hash:a6b640bc576263b62884a0b4187ba79c893e13d9
* YQL-20086 core (part1)vvvv2025-10-082-68/+92
| | | | commit_hash:12dbda4defcaef8dd708a69552fc19eba832ce2f
* SeqMode supportudovichenko-r2025-09-181-0/+8
| | | | commit_hash:3d0e8bfb46470e6ac36b0d198cfa1723c665f643
* New TCoDataCtor nodes: TCoDyNumber and TCoJsonDocumentditimizhev2025-08-211-0/+10
| | | | | | Позволяет матчить литералы типов `DyNumber` и `JsonDocument` на стороне YDB для их конвертации: <https://github.com/ydb-platform/ydb/blob/main/ydb/core/kqp/provider/yql_kikimr_provider.cpp#L756> commit_hash:7d6a0e5eb83284216caa480a67e1ca34150a4fee
* NormalizeDependsOn pipeline stageziganshinmr2025-07-301-1/+12
| | | | commit_hash:a563966e2448de9828c0786f9ba9939b55fc21fd
* Unessential callableziganshinmr2025-07-161-0/+9
| | | | commit_hash:b193bd01ffc8693293f6aea7bc6460033e52654a
* YQL-20086 corevvvv2025-06-181-57/+57
| | | | commit_hash:af5d81d51befa5cee331fbed69e7e5db2014a260
* Introduce NoPush callableziganshinmr2025-05-261-2/+13
| | | | commit_hash:547acaf9e178cac1af5ca406ae434d77d373a56e
* Use modules md5 for operation hashudovichenko-r2025-04-251-1/+2
| | | | commit_hash:479beaff03a33251903e09d1196e18e030d4029c
* Primitives for case insensitive simple pattern matchzverevgeny2025-04-251-0/+21
| | | | commit_hash:5f4bdb090c2f60459073e3e95ccd39ec58b95232
* YT block table content refactorziganshinmr2025-03-311-0/+10
| | | | | | | | | * Migrate YtBlockTableContent node to block struct type * Use ListFromBlock to resolve problems with multipage * Fix problems with Arrow decoder related to multiple files read commit_hash:4a2f5dd57c1359b17a9161ccb5c88754125609cb
* Introduce PruneKeys Callablesmpereskokova2025-03-191-0/+18
| | | | commit_hash:ca25a6ece5ae902c4b93846f69bc33b6336a669c
* Use RUN_PROGRAM in build, but use RUN_PYTHON3 for __main__.py in export ↵dimdim112025-03-131-35/+16
| | | | | | | sem-graph in YQL Use RUN_PROGRAM in build, but use RUN_PYTHON3 for __main__.py in export sem-graph in YQL commit_hash:75768d243546d2a60f8bab57536f5cd35c30d84c
* Optimizers by CheckMissingWorld flagvvvv2025-03-121-0/+9
| | | | commit_hash:0450825a09ea7c8bedf6ed697c198eacef74da6c
* BlockMapJoinCore refactorziganshinmr2025-02-171-6/+25
| | | | | | | * Split storage and index parts from BlockMapJoinCore computation node into separate BlockStorage and BlockIndex nodes in order to allow multiple join nodes to reuse the same block data and index for the right table where possible * Corresponding s-expressions changes commit_hash:40e39fb0b22c2f929c184963b5bd901006122c14
* MR: no ORDER BY in streaming modevokayndzop2025-02-031-4/+4
| | | | commit_hash:120a06d5f684791ad1474522263398dfedf8da22
* YT block map joinziganshinmr2025-01-171-0/+15
| | | | commit_hash:fe68272adcfefced1da829c45212b436aadae5e1
* Moved other yql/essentials libs YQL-19206vvvv2024-11-074-0/+3024
init commit_hash:7d4c435602078407bbf20dd3c32f9c90d2bbcbc0