| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
commit_hash:a234cd10cf3d80de474aa717e317b2a996707eed
|
|
|
|
| |
commit_hash:6dc6b146a933e0037e8facbe36299d2a65384c2f
|
|
|
|
| |
commit_hash:4006eec02296551bc0aaa60ab4d84810af46a1c2
|
|
|
|
| |
commit_hash:0ce22f019b23d4e9d4ab9cc7fd544cb7b473873e
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
| |
commit_hash:c106c0b4122e4493aa70f0007e98dff850405f05
|
|
|
|
| |
commit_hash:cbb6bbe39c72e2322d57a38ded86cda07c68a419
|
|
|
|
| |
commit_hash:c0fc049f490c77f6663fa43931ad6a975922ef85
|
|
|
|
| |
commit_hash:a6b640bc576263b62884a0b4187ba79c893e13d9
|
|
|
|
| |
commit_hash:542a9c3e054146d270700a469d6ba81b5022e539
|
|
|
|
| |
commit_hash:9199da15c695cf5c8a492750a8bcfbb0f31c0b34
|
|
|
|
|
| |
init
commit_hash:2a30a1b920f341e1f9250df382dd951604a0894f
|
|
|
|
| |
commit_hash:90e32586fa204001c09a220f1fd739e0dc16bdbc
|
|
|
|
|
| |
Original errors you can see [here](https://nda.ya.ru/t/OlFnpgnP7L8aiS
commit_hash:54941c5afadf626d30f5a9ab60de7b29ab625926
|
|
|
|
| |
commit_hash:6bf28c5a731c7325efa6bbe915c4a4920673c844
|
|
|
|
| |
commit_hash:b776960a1c683287ff0b5b23d95b2d48b0edccb5
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
pragma
Новая кост-функция для cbo. Под флагом чтобы удобнее сравнивать со старой.
2 изменения:
- Для оценки размера входных таблиц используется поколоночный dataweight (если есть), а не таблица целиком
- В самой кост-функции убран outputSize, чтобы он не учитывался дважды: он неявно учтен в каждом следующем джоине как левый либо правый inputSize, а размер результата последнего джоина не зависит от перестановки джоинов
commit_hash:d130848393114b1b4383035381dba7767aac62fb
|
|
|
|
| |
commit_hash:2026d14a75fbe4bd05e203b0be13d604f519ced3
|
|
|
|
| |
commit_hash:6da8e6f40f78cb66bd622a9111e58b8d60898e5e
|
|
|
|
| |
commit_hash:e96f7390db5fcbe7e9f64f898141a263ad522daa
|
|
|
|
| |
commit_hash:af20c2824301545bbe2783b121ac69332efc2b3e
|
|
|
|
| |
commit_hash:edf72fd8386c41f858f677152612bd58680506a6
|
|
|
|
| |
commit_hash:9e956b00ed2c0891c42c9d432b62bd7a6edc8202
|
|
|
|
| |
commit_hash:39033d97d7639a4749a6955577df43aba47bcef0
|
|
|
|
| |
commit_hash:12dbda4defcaef8dd708a69552fc19eba832ce2f
|
|
|
|
| |
commit_hash:19bbcd26d46a4ca8d18f0dbae605b48ac823c614
|
|
|
|
| |
commit_hash:39978afd806b807ddc0b745f048c16bc98afd9c0
|
|
|
|
| |
commit_hash:dd605e5cde39ff07fdadf62f0c2364a8b12c8405
|
|
|
|
| |
commit_hash:68b0c2e9c2960587af7d57ecedcb38f4d05890b7
|
|
|
|
| |
commit_hash:a675bf6d0296252a9fe2303b8f0a9e88c923087d
|
|
|
|
| |
commit_hash:deac7e37af3e0c34a9d17c765a750685cd5f527b
|
|
|
|
| |
commit_hash:55bc611cdaa0d8a0fc3c4c7708ed9f17cc4976cf
|
|
|
|
| |
commit_hash:ab4976b763ebd56a8961ed2ba5e9f289926a0086
|
|
|
|
|
|
| |
This reverts commit a82011223b480c04eab778fb9d35b140c1120157, reversing
changes made to ee62d973b35319e18d8c8763d6be1ae210b6e9f8.
commit_hash:7497b73299af7ce7443c576ab01fd5be2556f07d
|
|
|
|
|
| |
init
commit_hash:f9e4bd83d745532d51e4440381d9cfb73d8b64d3
|
|
|
|
| |
commit_hash:186928592877a5314065818802435a95221f6346
|
|
|
|
| |
commit_hash:618c69f7a3090bbeb975dea6d222c8bc7f41314d
|
|
|
|
| |
commit_hash:d2cc5bdd92d46a975e2bf20b3b97e2b5db7b1fa1
|
|
|
|
|
| |
init
commit_hash:f9684778bf1ea956965f2360b80b91edb7d4ffbe
|
|
|
|
|
| |
init
commit_hash:54feccd520ebd0ab23612bc0cb830914dff9d0e8
|
|
|
|
|
| |
KIKIMR-24054
commit_hash:b7c840d6f25ec732f818f8760e8ce8819393901e
|
|
|
|
|
|
| |
- Ignored 2 known ambiguities.
- Tested tools.
commit_hash:9e29bb2f876dabc68293b3e5c26a470d373506ae
|
|
|
|
| |
commit_hash:c3c929f4005b33d2fddb492bbc2c553125d9ad40
|
|
|
|
| |
commit_hash:5cbaf5434b1a393755ef2709ed27d22038681a6c
|
|
|
|
|
| |
init
commit_hash:d67bcebcfba4bf3afc216e61e970451609332a93
|
|
|
|
| |
commit_hash:bae4c0693bea21daa09eb9fb12478a5611ae5ffc
|
|
|
|
| |
commit_hash:3cc0ca5c687c7623fb16e77fb3a9043071a2478b
|
|
|
|
| |
commit_hash:a82011223b480c04eab778fb9d35b140c1120157
|
|
|
|
|
| |
init
commit_hash:89d6b4ea7383b4155af171f44b946fc80550d517
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch adds a style check for `yql/essentials/sql/v1`.
To format use `ya style`.
To test use `ya test ya test --test-type clang_format`.
To enable style checking in a module, need to add:
`ENABLE(YQL_STYLE_CPP)`. So in a such way we gradually will
format all YQL modules, expect those, where fluent YQL-builders
are used. Then we will revert activation macro, so switch from
`ENABLE(YQL_STYLE_CPP)` to`ENABLE(YQL_STYLE_CPP_XFAIL)`.
Guide: <https://nda.ya.ru/t/XzkoRIGg7KjXmq>.
commit_hash:fa758a214e094c74821fe896184f30483dd18c55
|