- Sep 27, 2024
-
-
Arseniy Volynets authored
- We didn't traverse output during subtree traversal when calculating hash. Some nodes (Motion, Projection) store non-trivial information, which allows to distinguish different plans. We came across this by collision between two different queries: ``` SELECT w.n FROM t JOIN w ON t.n = w.n LIMIT 3 SELECT id, count(*) FROM t GROUP BY id HAVING id > 2 LIMIT 3 ``` These plan happened to have subtrees that match exactly except for output of projection, that we didn't traverse. - fix this by traversing subtree fully
-
- Sep 26, 2024
-
-
Arseniy Volynets authored
- ValuesRow node have `data` and `output` fields refer to the same stuff in query `values (1)`. For except between global and sharded table we applied special transformation, in which we cloned global subtree. - Subtree cloner didn't respect DAG structure of our plan: there maybe multiple references to the same node. Instead it expected a tree. Fix that
-
Arseniy Volynets authored
-
- Sep 24, 2024
-
-
Вартан Бабаян authored
-
Denis Smirnov authored
-
Arseniy Volynets authored
-
- Sep 23, 2024
-
-
Arseniy Volynets authored
-
Arseniy Volynets authored
-
Arseniy Volynets authored
-
- Sep 20, 2024
-
-
Artur Sabirov authored
-
Artur Sabirov authored
-
-
Previous version was using yaml-rust which is marked as unmaintained. This gets reported by dependency scanner we use for certification. Though worth noting that serde-yaml itself is now archived. There is a promising replacement library but no need to hurry with that just yet. But anyway, we don't need this library in the production build, only for tests. So, moved it to development dependencies. Co-authored-by:
Denis Smirnov <sd@picodata.io>
-
- Sep 18, 2024
-
-
- Sep 17, 2024
-
-
Arseniy Volynets authored
- Support like operator with signature: expr1 LIKE expr2 [ESCAPE expr3] which returns TRUE only if expr1 matches the string specified by expr2 (pattern). '_' in pattern matches any single character, '%' matches any character 0 or more times. All other characters match itself according to case. - Optional escape clause specifies character to use for escaping '_' and '%'
-
EmirVildanov authored
-
EmirVildanov authored
-
Arseniy Volynets authored
- to_params uses subtree iterator to create parameters for cached query. But our plan is a DAG, not a tree. We have multiple nodes referring to the same node, this leads to situation when we traverse the same subquery node multiple times. This in term leads to wrong number of parameters produces by to_params - fix this by keeping track of already traversed parameter nodes in to_params
-
EmirVildanov authored
-
- Sep 16, 2024
-
-
EmirVildanov authored
-
EmirVildanov authored
feat: support additional SubQuery children for any relational operator, interpret SubQuery with single output as expression
-
EmirVildanov authored
-
EmirVildanov authored
-
EmirVildanov authored
-
EmirVildanov authored
-
EmirVildanov authored
-
EmirVildanov authored
-
EmirVildanov authored
-
EmirVildanov authored
-
EmirVildanov authored
-
EmirVildanov authored
-
EmirVildanov authored
-
EmirVildanov authored
-
EmirVildanov authored
-
Denis Smirnov authored
-
Denis Smirnov authored
-
Denis Smirnov authored
Co-authored-by:
Georgy Moshkin <gmoshkin@picodata.io>
-
- Sep 13, 2024
-
-
Previously some public lua functions in core-router.lua failed returning nil instead of an error. As a result in a case of error rust code treated it as success, but failed to pop expected results from lua stack. So, instead of a real error user got lua reading errors. Fixed. Co-authored-by:
Denis Smirnov <sd@picodata.io>
-
godzie44 authored
-
EmirVildanov authored
-