Maksim Kita
947f28d430
IFunction refactoring
2021-05-15 20:33:15 +03:00
Alexey Milovidov
a5a4e64ba7
Fix a few PVS-Studio warnings
2021-04-27 07:22:32 +03:00
alexey-milovidov
186b1128d0
Merge pull request #23310 from amosbird/fixbugindex
...
Don't relax NOT conditions during partition pruning.
2021-04-27 07:13:18 +03:00
alexey-milovidov
cae5260817
Update KeyCondition.cpp
2021-04-24 05:34:35 +03:00
Amos Bird
32c84f77c3
Resurrect indexHint function.
2021-04-20 19:27:23 +08:00
Amos Bird
d5f606c544
Another fix
2021-04-20 14:15:28 +08:00
Amos Bird
aeff06d67d
Don't relax NOT conditions during partition pruning.
2021-04-19 22:15:53 +08:00
Nikolai Kochetov
4d86f51eff
Merge branch 'master' into add-read-from-mt-step
2021-04-19 10:17:21 +03:00
Nikolai Kochetov
8d8e57615c
A little bit better index description.
2021-04-16 12:42:23 +03:00
Nikolai Kochetov
be52b2889a
Better description for key condition.
2021-04-15 20:30:04 +03:00
Alexey Milovidov
97611faad0
Whitespace
2021-04-13 22:06:24 +03:00
alexey-milovidov
46e1da03fb
Update KeyCondition.cpp
2021-04-13 18:47:11 +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
Amos Bird
f00e108410
Fix scalar subquery index analysis
2021-03-16 14:07:30 +08:00
Alexey Milovidov
4bae04d500
Merge branch 'master' into amosbird/fix-18364
2021-01-15 14:37:35 +03:00
alexey-milovidov
4a71971b43
Update KeyCondition.cpp
2021-01-15 14:36:07 +03:00
Amos Bird
44758935df
correct index analysis of WITH aliases
2021-01-10 17:40:47 +08:00
Amos Bird
f93e30bed6
Fix warning
2020-12-31 11:06:15 +08:00
alexey-milovidov
9bc571eacc
Update KeyCondition.cpp
2020-12-30 17:58:43 +03:00
Amos Bird
8b5714b2ac
Fix 2-arg functions with constant in PK analysis
2020-12-23 12:29:29 +08:00
Maksim Kita
18dc118298
Fixed compile issues
2020-12-14 22:12:15 +03:00
Maksim Kita
0464859cfe
Updated usage of different types during IN query
...
1. Added accurateCast function.
2. Use accurateCast in Set during execute.
3. Added accurateCast tests.
4. Updated select_in_different_types tests.
2020-12-14 22:12:15 +03:00
Maksim Kita
f4b8e8ef99
Allow different types inside IN subquery
2020-12-14 22:12:15 +03:00
Ivan
315ff4f0d9
ANTLR4 Grammar for ClickHouse and new parser ( #11298 )
2020-12-04 05:15:44 +03:00
alexey-milovidov
fabceebbce
Merge pull request #17145 from amosbird/cddt
...
Fix unmatched type comparison in KeyCondition
2020-11-29 14:29:35 +03:00
Amos Bird
022ba2b0a9
Fix unmatched type comparison in KeyCondition
2020-11-26 16:15:50 +08:00
Azat Khuzhin
0b47f4a9e9
Fix optimize_trivial_count_query with partition predicate
...
Consider the following example:
CREATE TABLE test(p DateTime, k int) ENGINE MergeTree PARTITION BY toDate(p) ORDER BY k;
INSERT INTO test VALUES ('2020-09-01 00:01:02', 1), ('2020-09-01 20:01:03', 2), ('2020-09-02 00:01:03', 3);
- SELECT count() FROM test WHERE toDate(p) >= '2020-09-01' AND p <= '2020-09-01 00:00:00'
In this case rpn will be (FUNCTION_IN_RANGE, FUNCTION_UNKNOWN (due to strict), FUNCTION_AND)
and for optimize_trivial_count_query we cannot use index if there is at least one FUNCTION_UNKNOWN.
since there is no post processing and return count() based on only the first predicate is wrong.
Before this patch FUNCTION_UNKNOWN was allowed for optimize_trivial_count_query, and the result was wrong.
And two examples above just to show the difference, the behaviour hadn't been changed with this patch:
- SELECT * FROM test WHERE toDate(p) >= '2020-09-01' AND p <= '2020-09-01 00:00:00'
In this case will be (FUNCTION_IN_RANGE, FUNCTION_IN_RANGE (due to non-strict), FUNCTION_AND)
so it will prune everything out and nothing will be read.
- SELECT * FROM test WHERE toDate(p) >= '2020-09-01' AND toUnixTimestamp(p)%5==0
In this case will be (FUNCTION_IN_RANGE, FUNCTION_UNKNOWN, FUNCTION_AND)
and all, two, partitions will be scanned, but due to filtering later none of rows will be matched.
2020-11-25 23:09:17 +03:00
Amos Bird
172b7e9ed1
global in set index.
2020-11-23 22:05:08 +08:00
Nikolai Kochetov
46f70dd0de
Merge branch 'master' into actions-dag-f14
2020-11-12 11:54:44 +03:00
Nikolai Kochetov
1db8e77371
Add comments. Update ActionsDAG::Index
2020-11-10 17:54:59 +03:00
Alexander Tokmakov
5cdfcfb307
remove other stringstreams
2020-11-09 22:12:44 +03:00
Nikolai Kochetov
e41b1ae52b
Empty commit.
2020-11-09 19:35:43 +03:00
Nikolai Kochetov
8c4db34f9d
Update after merge.
2020-11-09 14:58:11 +03:00
Nikolai Kochetov
6717c7a0af
Merge branch 'master' into actions-dag-f14
2020-11-09 14:57:48 +03:00
alexey-milovidov
0e6ae4aff7
Merge pull request #16253 from amosbird/pf
...
Prune partition in verbatim way.
2020-11-08 18:58:02 +03:00
Alexey Milovidov
fd84d16387
Fix "server failed to start" error
2020-11-07 03:14:53 +03:00
Amos Bird
2b0085c106
Pruning is different from counting
2020-11-06 19:58:03 +08:00
Amos Bird
aa436a3cb1
Transform single point
2020-11-06 14:59:55 +08:00
Nikolai Kochetov
07a7c46b89
Refactor ExpressionActions [Part 3]
2020-11-03 14:28:28 +03:00
alexey-milovidov
adeba6bdd8
Merge pull request #15074 from amosbird/btc
...
Extend trivial count optimization.
2020-10-22 02:50:57 +03:00
Nikolai Kochetov
bc58637ec2
Fixing build.
2020-10-19 21:37:44 +03:00
Nikolai Kochetov
a7fb2e38a5
Use ColumnWithTypeAndName as function argument instead of Block.
2020-10-09 10:41:28 +03:00
Amos Bird
867216103f
Extend trivial count optimization.
2020-10-08 18:08:17 +08:00
Amos Bird
5cc8fd395c
Fix empty key segfault
2020-09-13 21:55:16 +08:00
Amos Bird
34b9547ce1
Binary operator monotonicity
2020-09-13 21:55:12 +08:00
Alexey Milovidov
4ed0bf3af1
Better code
2020-08-03 00:01:39 +03:00
Alexey Milovidov
3c489ce159
Fix assertion in KeyCondition
2020-08-02 23:55:20 +03:00
Alexey Milovidov
5f808aa503
Fix bad code
2020-08-02 23:41:52 +03:00
Anton Popov
4c266d1e5d
fix wrong index analysis with functions
2020-07-29 19:09:38 +03:00
Nikolai Kochetov
dad9d369a1
Merge branch 'master' into bobrik-parallel-randes
2020-07-23 16:21:32 +03:00