Commit Graph

32 Commits

Author SHA1 Message Date
Pavel Kruglov
3ec2ab6156 Avoid using expand, fix bugs, add tests and comments 2021-08-09 17:54:49 +03:00
Pavel Kruglov
136e58bc8f Fix style 2021-08-09 17:54:14 +03:00
Pavel Kruglov
62d4f4b25c Small refactoring and adding comments 2021-08-09 17:54:14 +03:00
Pavel Kruglov
0662df8b76 Fix performance with JIT, add arguments to function isSuitableForShortCircuitArgumentsExecution 2021-08-09 17:54:14 +03:00
Pavel Kruglov
dcc30ed404 Resolve conflicts 2021-08-09 17:50:09 +03:00
Pavel Kruglov
e792fa588f Mark all Functions as sutable or not for executing as short circuit arguments 2021-08-09 17:50:09 +03:00
Pavel Kruglov
400cad4d8b Refactor, fix bugs, improve performance 2021-08-09 17:44:04 +03:00
Pavel Kruglov
775d190fb3 Fix tests 2021-08-09 17:43:10 +03:00
Pavel Kruglov
50d4192126 Implement short circuit function evaluation, first attempt 2021-08-09 17:43:10 +03:00
Alexey Milovidov
ff5c433f10 Check for non-deterministic functions in keys, including constant expressions 2021-07-12 08:58:19 +03:00
Alexey Milovidov
e09467fd5a Merge with #26041 2021-07-10 11:29:54 +03:00
Maksim Kita
ef2696bae5 Fixed IFunction then typos 2021-05-24 23:27:32 +03:00
Maksim Kita
7af4d5b86d Fixed tests 2021-05-24 14:25:02 +03:00
Maksim Kita
af233007f6 Fixed code review issues 2021-05-24 12:30:28 +03:00
Maksim Kita
1a725d916b Upated LogicalFunctions 2021-05-24 10:16:12 +03:00
Maksim Kita
72fbb2dd54 Fixed tests 2021-05-24 10:16:12 +03:00
Maksim Kita
ed443c8941 Function constant result with nonconstant arguments 2021-05-24 10:16:12 +03:00
Maksim Kita
5a359a15bc Fixed Arcadia after IFunctionOverloadResolver interface refactoring 2021-05-19 15:57:37 +03:00
Maksim Kita
d923d9e6ef Function move file 2021-05-17 10:30:42 +03:00
Maksim Kita
947f28d430 IFunction refactoring 2021-05-15 20:33:15 +03:00
Maksim Kita
24798ef07c Updated interfaces 2021-05-08 17:39:34 +03:00
Ivan
495c6e03aa
Replace all Context references with std::weak_ptr (#22297)
* Replace all Context references with std::weak_ptr

* Fix shared context captured by value

* Fix build

* Fix Context with named sessions

* Fix copy context

* Fix gcc build

* Merge with master and fix build

* Fix gcc-9 build
2021-04-11 02:33:54 +03:00
Ivan Lezhankin
f897f7c93f Refactor IFunction to execute with const arguments 2020-11-17 16:24:45 +03:00
Nikolai Kochetov
571a5fbff3 Update functions interface. 2020-10-15 19:52:25 +03:00
Nikolai Kochetov
959424f28a Rename block to columns. 2020-10-14 17:04:50 +03:00
Nikolai Kochetov
a7fb2e38a5 Use ColumnWithTypeAndName as function argument instead of Block. 2020-10-09 10:41:28 +03:00
Azat Khuzhin
6a04de61b6 Allow isInjective() with empty block (is function injective with any arguments)
Since most of the time function will ignore it anyway, and creating
arguments just for checking is function injective or not is overkill
2020-07-08 00:28:49 +03:00
alexey-milovidov
b5f8efefa2
Merge pull request #10342 from azat/optimizeGroupBy-isInjective
[RFC] Use isInjective() over manual list of such functions for GROUP BY optimization
2020-04-18 14:28:59 +03:00
Azat Khuzhin
322681eb37 Passthrough isInjective via IFunctionOverloadResolver 2020-04-18 01:50:15 +03:00
Azat Khuzhin
f29e5c60a5 Add const qualifier for IFunction::isInjective() 2020-04-18 01:50:15 +03:00
Ivan Lezhankin
e230632645 Changes required for auto-sync with Arcadia 2020-04-16 15:31:57 +03:00
Ivan Lezhankin
06446b4f08 dbms/ → src/ 2020-04-03 18:14:31 +03:00