Commit Graph

313 Commits

Author SHA1 Message Date
Amos Bird
9205fad8c7
Better 2021-03-04 19:43:03 +08:00
Amos Bird
93b661ad5a
partition id pruning 2021-03-04 19:43:03 +08:00
Nikolai Kochetov
15921fbfcb Remove index by name from ActionsDAG 2021-03-03 23:01:07 +03:00
Nikolai Kochetov
ffbea93b10
Merge pull request #19576 from traceon/row-policy-with-prewhere
Allow row policies with PREWHERE
2021-03-02 13:51:37 +03:00
Anton Popov
c98e6bb1ad
Merge pull request #20550 from ClickHouse/fix-number-of-threads-in-subqueries
Fix number of threads in subqueries
2021-03-01 15:49:38 +03:00
vdimir
b7c7c97d10
Merge branch 'master' into join-cast-types-v2 2021-03-01 11:42:21 +03:00
Denis Glazachev
eb80c189e4 Merge branch 'master' into row-policy-with-prewhere 2021-02-28 20:14:31 +04:00
vdimir
2f70e895fc
Update StorageJoin locking
Move joinGet into StorageJoin

Protect JoinSource with lock, add test

Add comments about locking logic
2021-02-25 12:31:22 +03:00
Denis Glazachev
dfde9de0e9 Remove commented-out code 2021-02-20 23:30:21 +04:00
Nikolai Kochetov
673e24d7ef Refactor 2021-02-20 14:00:16 +03:00
vdimir
456414beea
Fix converting join on keys, move actions into TableJoin 2021-02-19 14:28:41 +03:00
vdimir
3a7eddcf3a
Remove addRequiredLeftColumn, some tests for join on different types 2021-02-19 14:28:40 +03:00
vdimir
a378bd08aa
Perform implicit type conversion for JOIN ON keys 2021-02-19 14:28:40 +03:00
vdimir
435f63f42b
Calculate common type for join using in TreeRewriter
Split before_join and converting_join_columns dags

Add more detailed comments for column type conversion for join using
2021-02-19 14:28:32 +03:00
vdimir
f5b98015a8
Fix converting right key type in join using 2021-02-19 14:24:33 +03:00
vdimir
4c36cd1737
Add converting step for 'join using' 2021-02-19 14:24:28 +03:00
Nikolai Kochetov
0b315fccc2 Merge branch 'master' into fix-number-of-threads-in-subqueries 2021-02-16 16:29:30 +03:00
Nikolai Kochetov
a72ef6f026 Fix number of threads for scalar subqueries and subqueries for index. 2021-02-16 11:26:24 +03:00
Nikolai Kochetov
ae73600fb0 Refactor row level security actions. 2021-02-15 22:48:06 +03:00
Denis Glazachev
99a04b6c64 Merge branch 'master' into row-policy-with-prewhere
* master: (759 commits)
  Suppress UBSan report in Decimal comparison
  Suppress UBSan report in Decimal comparison
  Fix UBSan report in arrayDifference
  Update README.md
  Non significant change in AggregationCommon
  Print stack trace on SIGTRAP
  Fix dependent test
  Fix tests for better parallel run
  Add test for already working code
  Revert "Fix access control manager destruction order"
  Update index.md
  Update index.md
  Update index.md
  Bit more complicated example for isIPv4String - ru
  Bit more complicated example for isIPv4String
  cleanup
  Replace database with ordinary
  Added comments
  Split tests to make them stable
  Fixes
  ...

# Conflicts:
#	src/Storages/MergeTree/MergeTreeRangeReader.cpp
2021-02-14 02:24:00 +04:00
Denis Glazachev
79592b73f8 Store filter info in prewhere info instead of multiple prewheres
Some cleanups
2021-02-14 02:07:13 +04:00
Alexander Kuzmenkov
716a3df6eb
Merge pull request #20337 from ClickHouse/aku/window-prototype
window function rank() and friends
2021-02-13 03:03:49 +03:00
Alexander Kuzmenkov
ecbcf47f28 lag/lead stubs + cleanup 2021-02-11 18:07:42 +03:00
Azat Khuzhin
6b82e8ad19 Mark ignore() as not suitable for constant folding 2021-02-11 00:39:03 +03:00
Azat Khuzhin
53ea58810e Do not allow constant folding of explicitly forbidden functions 2021-02-11 00:38:47 +03:00
Alexander Kuzmenkov
d2a0e44a3a
Merge pull request #19299 from ClickHouse/aku/window-prototype
[wip] support RANGE frame for window functions
2021-02-02 17:59:16 +03:00
Denis Glazachev
009d1e3fc5 Merge branch 'master' into row-policy-with-prewhere
* master: (247 commits)
  Update 01014_lazy_database_basic.sh
  Update 00459_group_array_insert_at.sql
  Same for ALTER
  Syntax and links
  Added test.
  Check where and prewhere identifiers exist.
  Remove redundant lsof
  Add lsof to fasttest
  Add new line to status
  Make integration odbc tests idempotent
  Minor code improvement in JOIN
  Arcadia does not have bitmaps
  Make Fuzzer more reliable
  Add missing lsof for fasttest docker image
  Update test
  The test most likely would not work in Arcadia
  Less parser depth
  Fix stack overflow in coroutine
  Fuzzer: better messages.
  Fixed build.
  ...
2021-01-28 21:48:12 +04:00
Nikolai Kochetov
e2ade3c574 Check where and prewhere identifiers exist. 2021-01-28 12:40:08 +03:00
Denis Glazachev
6a92295982 Remove TODOs 2021-01-27 19:16:31 +04:00
Alexander Kuzmenkov
83cfdde6d9 RANGE frame works in some cases 2021-01-27 03:08:15 +03:00
Amos Bird
5998383a3b
Fix with aggregates 2021-01-26 10:29:13 +08:00
Denis Glazachev
4870e0af69 Add filter as a (first) prewhere 2021-01-25 22:09:17 +04:00
Alexander Kuzmenkov
0526c55206 Merge remote-tracking branch 'origin/master' into tmp 2021-01-20 10:11:24 +03:00
Alexander Kuzmenkov
951b552727 rename 2021-01-20 08:29:27 +03:00
Alexander Kuzmenkov
f346a9bf8b frame grammar tmp 2021-01-19 04:00:39 +03:00
Alexander Kuzmenkov
d0922e2985 Merge remote-tracking branch 'origin/master' into tmp 2021-01-18 23:23:49 +03:00
Alexander Kuzmenkov
48509a85d3 comment woes 2021-01-14 01:04:19 +03:00
Alexander Kuzmenkov
c2a1373720 Merge remote-tracking branch 'origin/master' into tmp 2021-01-13 22:30:08 +03:00
Alexander Kuzmenkov
703731c547 something works 2021-01-13 22:29:52 +03:00
Nikolai Kochetov
871ac3eeb7 Update building sets. 2021-01-13 21:37:54 +03:00
Nikolai Kochetov
24d462b018 Try to remove ActionsDAG::removeColumn 2021-01-11 19:15:03 +03:00
Ivan Lezhankin
5e89145a42 Merge remote-tracking branch 'upstream/master' into ast-table-identifier-2 2020-12-30 13:04:17 +03:00
Alexander Kuzmenkov
2905f70cce fix aliases in partition by/order by 2020-12-28 12:56:38 +03:00
Alexander Kuzmenkov
5bd025a180 fix DISTINCT and ORDER BY 2020-12-25 06:13:30 +03:00
Alexander Kuzmenkov
8c72fa063d boop the CI 2020-12-24 13:59:58 +03:00
Alexander Kuzmenkov
5e8cf89b9d cleanup 2020-12-24 12:13:54 +03:00
Alexander Kuzmenkov
23d77a1698 remove debug output 2020-12-24 09:59:38 +03:00
Alexander Kuzmenkov
844239b1c3 tmp fixes (split me) 2020-12-24 07:03:33 +03:00
Alexander Kuzmenkov
f2b25c708c review fixes 2020-12-22 22:01:15 +03:00
Alexander Kuzmenkov
3f33e6b3e0 some review fixes 2020-12-22 20:46:31 +03:00
Alexander Kuzmenkov
52ace7a3d1 one plan step per window 2020-12-22 04:37:45 +03:00
Alexander Kuzmenkov
ac9fc15509 cleanup 2020-12-21 12:59:11 +03:00
Alexander Kuzmenkov
132a0b42eb cleanup 2020-12-18 20:13:28 +03:00
Alexander Kuzmenkov
4bfcb2fc16 a setting 2020-12-18 04:25:21 +03:00
Alexander Kuzmenkov
157fe3e8b4 some tests + ability to echo the queries 2020-12-18 03:49:18 +03:00
Alexander Kuzmenkov
fef24c81e3 some grammar 2020-12-17 00:44:05 +03:00
Ivan Lezhankin
2fe6195577 Merge remote-tracking branch 'upstream/master' into ast-table-identifier-2 2020-12-16 14:50:36 +03:00
Alexander Kuzmenkov
fabb37d3c9 cleanup 2020-12-15 20:39:58 +03:00
Alexander Kuzmenkov
a75ca3cb79 Merge remote-tracking branch 'origin/master' into tmp 2020-12-15 03:36:43 +03:00
Alexander Kuzmenkov
6d5b23de67 something works 2020-12-15 03:36:03 +03:00
Azat Khuzhin
5b3ab48861 More forward declaration for generic headers
The following headers are pretty generic, so use forward declaration as
much as possible:
- Context.h
- Settings.h
- ConnectionTimeouts.h
(Also this shows that some missing some includes -- this has been fixed)

And split ConnectionTimeouts.h into ConnectionTimeoutsContext.h (since
module part cannot be added for it, due to recursive build dependencies
that will be introduced)

Also remove Settings from the RemoteBlockInputStream/RemoteQueryExecutor
and just pass the context, since settings was passed only in speicifc
places, that can allow making a copy of Context (i.e. Copier).

Approx results (How much units will be recompiled after changing file X?):

- ConnectionTimeouts.h
  - mainline: 100

- Context.h:
  - mainline: ~800
  - patched:  415

- Settings.h:
  - mainline: 900-1K
  - patched:  440 (most of them because of the Context.h)
2020-12-12 17:43:10 +03:00
Alexander Kuzmenkov
d757f32300 Remove some redundant includes to speed up build 2020-12-11 02:58:11 +03:00
Alexander Kuzmenkov
dea446be2f Remove some redundant includes to speed up build 2020-12-11 02:56:57 +03:00
Alexander Kuzmenkov
88e7bc5b60 Merge origin/master into tmp (using imerge) 2020-12-10 22:12:42 +03:00
Alexander Kuzmenkov
ac8b896f36 returning constant column as window function 2020-12-10 22:06:52 +03:00
Alexander Kuzmenkov
eb0c817bf2 expression analyzer part 2020-12-09 14:14:40 +03:00
Ivan
315ff4f0d9
ANTLR4 Grammar for ClickHouse and new parser (#11298) 2020-12-04 05:15:44 +03:00
Alexander Kuzmenkov
8ee86e35d2 debug 2020-12-02 21:16:31 +03:00
alexey-milovidov
49af4ff7c9
Merge pull request #16988 from CurtizJ/fix-perf-storage-merge
Fix performance with Merge table over huge number of MergeTree tables
2020-11-29 20:46:29 +03:00
Amos Bird
172b7e9ed1
global in set index. 2020-11-23 22:05:08 +08:00
Ivan Lezhankin
1002148886 Merge remote-tracking branch 'upstream/master' into ast-table-identifier-2 2020-11-22 22:34:36 +03:00
Ivan Lezhankin
833c0842a1 Fix two more tests 2020-11-20 21:38:42 +03:00
Ivan Lezhankin
2b7d056002 Fix IN operator 2020-11-20 16:39:56 +03:00
Anton Popov
1e24d6085a fix performance with Merge table over huge number of MergeTree tables 2020-11-13 18:56:25 +03:00
Nikolai Kochetov
9b13d0e0eb Revert "Add ActionsDAG::updateHeader()"
This reverts commit b78657656c.
2020-11-11 20:17:26 +03:00
Nikolai Kochetov
58c4a7b890 Some renames. 2020-11-11 19:52:27 +03:00
Nikolai Kochetov
d72c7dfacb Add more comments. 2020-11-11 17:07:51 +03:00
Nikolai Kochetov
b78657656c Add ActionsDAG::updateHeader() 2020-11-11 16:50:29 +03:00
Nikolai Kochetov
c6575c9032 Update ExpressionActions constructur 2020-11-10 19:27:55 +03:00
Nikolai Kochetov
1db8e77371 Add comments. Update ActionsDAG::Index 2020-11-10 17:54:59 +03:00
Nikolai Kochetov
9aeb757da4 Merge branch 'master' into actions-dag-f14 2020-11-06 15:04:20 +03:00
Nikolai Kochetov
7b61f5d641 Refactor more 2020-11-03 22:05:47 +03:00
Nikolai Kochetov
726be794a4
Update ExpressionAnalyzer.cpp 2020-11-03 17:14:34 +03:00
Nikolai Kochetov
6767a226fc Merge branch 'master' into actions-dag-f14 2020-11-03 15:21:06 +03:00
Nikolai Kochetov
07a7c46b89 Refactor ExpressionActions [Part 3] 2020-11-03 14:28:28 +03:00
Nikolai Kochetov
ceb83602b8 Refactor 2020-11-02 15:07:01 +03:00
Nikolai Kochetov
2a0db5d627 Merge branch 'master' into nikitamikhaylov-totals-having 2020-11-02 14:36:18 +03:00
nikitamikhaylov
d908cddb49 done 2020-10-23 22:09:02 +03:00
Nikolai Kochetov
69ae6ace47 Add untuple. 2020-10-21 21:17:27 +03:00
alexey-milovidov
be7776608d
Merge pull request #15933 from ClickHouse/fix-global-in-result
Fix wrong result in case of GLOBAL IN and PREWHERE
2020-10-19 21:21:57 +03:00
Anton Popov
0de364ec94 fix segfault with wrong aggregation in lambdas 2020-10-16 16:12:30 +03:00
Nikolai Kochetov
23afd74e1c Update InterpreterSelectQuery. 2020-10-13 17:55:22 +03:00
Nikolai Kochetov
782823de4d Fix build. 2020-09-30 14:45:47 +03:00
Nikolai Kochetov
53d4e5d195 Merge branch 'master' into expression-dag 2020-09-29 12:15:50 +03:00
Alexander Tokmakov
f0f91f84af Merge branch 'master' into enable_atomic_database_by_default 2020-09-23 21:50:15 +03:00
Alexander Tokmakov
7fcf20e48c enable more tests 2020-09-22 17:29:09 +03:00
Nikolai Kochetov
62ef40394a
Merge pull request #14856 from ClickHouse/query-plan-for-creating-sets
Query plan for creating sets
2020-09-22 16:19:20 +03:00
Artem Zuikov
28afbafa08 fix crash in RIGHT or FULL JOIN switch 2020-09-18 19:25:20 +03:00
Nikolai Kochetov
4c783f19ee Use QueryPlan for SubqueryForSet. 2020-09-15 16:25:14 +03:00
Nikolai Kochetov
4aed515e19 Add ExpressionDAG [Part 5]. 2020-09-13 16:51:31 +03:00
Nikolai Kochetov
b461f97e4a Add ExpressionDAG [Part 4]. 2020-09-11 15:24:41 +03:00
Nikolai Kochetov
1cae264eae Add ExpressionDAG [Part 3]. 2020-09-10 21:36:51 +03:00
Nikolai Kochetov
c1469aff93 Add ExpressionDAG [Part 2]. 2020-09-10 19:01:41 +03:00
alexey-milovidov
f2e9a09b11
Merge pull request #14585 from ClickHouse/join-processor
Remove Join from ExpressionActions
2020-09-08 23:56:09 +03:00
Nikolai Kochetov
39aad9979a Remove Join from ExpressionActions. 2020-09-08 13:40:53 +03:00
Nikolai Kochetov
b7e53208d1 Fix tests. 2020-09-04 11:36:47 +03:00
Nikolai Kochetov
5cd4312529 Review fixes. 2020-08-19 22:33:49 +03:00
Nikolai Kochetov
8e631a98ea Refactor ActionsChain. 2020-08-14 21:24:58 +03:00
Nikolai Kochetov
85d0f1a480 Add ARRAY JOIN to ActionsChain 2020-08-14 21:24:19 +03:00
Nikolai Kochetov
95bbda3667 Specify columns after ARRAY JOIN and JOIN.
Add ArrayJoinTransform and ArrayJoinStep.
2020-08-14 21:24:03 +03:00
Artem Zuikov
2afd123eda
Refactoring: extract TreeOptimizer from SyntaxAnalyzer (#12645) 2020-07-22 20:13:05 +03:00
Artem Zuikov
6b26842ce5
RIGHT and FULL JOIN for MergeJoin (#12118) 2020-07-10 21:10:06 +03:00
Nikolai Kochetov
79cd33a567 Fix tests. 2020-07-02 10:44:47 +03:00
Nikolai Kochetov
3585700506 Fix tests. 2020-06-30 19:41:43 +03:00
Nikolai Kochetov
ddc231b088 Check type of filter for prewhere. 2020-06-30 17:58:11 +03:00
Nikolai Kochetov
e3aede57c6 Check type of filter for prewhere. 2020-06-30 17:48:00 +03:00
Nikolai Kochetov
18059e9289 Check type of filter for prewhere. 2020-06-30 17:44:49 +03:00
Artem Zuikov
d573005b04 place left join keys in before_join actions 2020-06-26 02:10:37 +03:00
Artem Zuikov
9637dad462 keep ArrayJoin optimisation 2020-06-25 23:59:10 +03:00
Artem Zuikov
0e49a9ed4d fix crash 2020-06-25 21:44:05 +03:00
Artem Zuikov
ae5ed098f4 remove useless logic 2020-06-25 21:18:27 +03:00
Artem Zuikov
801efc387a extract JOIN in own plan step 2020-06-25 20:40:25 +03:00
Vxider
c118f806ed Remove unused code 2020-06-24 16:56:31 +08:00
alesapin
b9e74f4e82 Merge branch 'master' into atomic_metadata5 2020-06-22 12:03:53 +03:00
Nikolai Kochetov
819ea4fb89 Fix tests. 2020-06-20 16:48:21 +03:00
alesapin
1da393b218 Sampling key in StorageInMemoryMetadata 2020-06-17 15:07:09 +03:00
alesapin
ba04d02f1e Compilable sorting key in metadata 2020-06-17 14:05:11 +03:00
alesapin
62f2c17a66 Secondary indices in StorageInMemoryMetadata 2020-06-17 12:38:47 +03:00
Alexey Milovidov
a655765040 Merge branch 'master' into return-not-nullable-from-count-distinct-2 2020-06-17 01:15:57 +03:00
Artem Zuikov
857d84bf7c
Buffer left blocks optimisation for MergeJoin (#10601) 2020-06-16 23:13:18 +03:00
Alexey Milovidov
394fb64a9c Better way of implementation 2020-06-14 20:42:11 +03:00
Nikolai Kochetov
d4c8adbaff Fix sanitizeBlock 2020-06-10 18:06:37 +03:00
Dmitry
4b0d32f026 Merge branch 'master' of github.com:yandex/ClickHouse into group_by_in_order_optimization 2020-05-31 00:21:02 +03:00
alexey-milovidov
3eea042d16
Merge pull request #11243 from ClickHouse/remove-experimental-use-processors-flag-4
Remove some code.
2020-05-30 21:05:14 +03:00
Alexander Tokmakov
c071e0a473 add context to DatabaseCatalog methods 2020-05-29 02:01:18 +03:00
Nikolai Kochetov
ea3f638b30 Try fix tests. 2020-05-28 17:11:36 +03:00
Nikolai Sorokin
6585571ee2 Fix bug 2020-05-27 12:53:15 +03:00
Nikolai Sorokin
61974e0047 TTL Expressions WHERE and GROUP BY draft 2020-05-27 12:53:15 +03:00
Dmitry
47778c0259 Merge branch 'master' of github.com:yandex/ClickHouse into group_by_in_order_optimization 2020-05-21 23:45:12 +03:00
Azat Khuzhin
d93b9a57f6 Forward declaration for Context as much as possible.
Now after changing Context.h 488 modules will be recompiled instead of 582.
2020-05-21 01:53:18 +03:00
Artem Zuikov
9b38324028
fix JOIN with PREWHERE with second analyze() (#11051) 2020-05-20 12:29:23 +03:00
Dmitry
c4295d97f9 Merge branch 'master' of github.com:yandex/ClickHouse into group_by_in_order_optimization 2020-05-12 17:57:32 +03:00
Anton Popov
19528007fd fix multiple usages of 'IN' operator with the same set 2020-05-06 03:57:44 +03:00
Dmitry
e98c23a8cf read in order enabled 2020-05-05 17:35:23 +03:00
Dmitry
d9ac0e8fef Merge branch 'master' of github.com:yandex/ClickHouse into group_by_in_order_optimization 2020-04-26 14:44:06 +03:00
Alexey Milovidov
0a7edce036 Checkpoint 2020-04-22 09:01:33 +03:00
alexey-milovidov
4ecc86beca
Merge pull request #9950 from ClickHouse/aku/literal-columns
Create unique columns for literals
2020-04-21 02:30:17 +03:00
alexey-milovidov
8cea45315f
Merge pull request #10133 from 4ertus2/joins
JOIN with Dictionary
2020-04-18 16:08:15 +03:00
Dmitry
25cd4ce132 Merge branch 'master' of github.com:yandex/ClickHouse into group_by_in_order_optimization 2020-04-18 12:56:34 +03:00
Artem Zuikov
ce372f464b
Fix finalize chain logic in ExpressionAnalysisResult (#10302) 2020-04-16 21:03:27 +03:00
Alexander Kuzmenkov
d15d6e1661 review fixes 2020-04-15 17:10:33 +03:00
Alexander Kuzmenkov
1d3fe23b3b review fixes 2020-04-14 20:41:06 +03:00
Alexander Kuzmenkov
59e8230271 Merge remote-tracking branch 'origin/master' into HEAD 2020-04-14 02:27:46 +03:00
Artem Zuikov
6106b2bfc7 Merge branch 'master' into joins 2020-04-13 20:37:27 +03:00
alexey-milovidov
00d8e7eefb
Merge branch 'master' into transform_null_in 2020-04-11 23:15:54 +03:00
Artem Zuikov
0cd49d746f several fixes 2020-04-09 23:00:57 +03:00
philip.han
3149f75430 Replace a reference for Context with a copied bool value. 2020-04-09 17:27:55 +09:00
Artem Zuikov
ab12ebb5cf add allowDictJoin() 2020-04-08 22:58:27 +03:00
Artem Zuikov
8d6f641796 join over dictionary concept 2020-04-08 21:59:52 +03:00
philip.han
53b5dade5e Implement transform_null_in 2020-04-07 20:08:13 +09:00
Artem Zuikov
8297683972
renames: AnalyzedJoin -> TableJoin, Join -> HashJoin (#10065) 2020-04-07 12:48:47 +03:00
Alexander Kuzmenkov
35783af25d Merge remote-tracking branch 'origin/master' into HEAD 2020-04-07 03:34:39 +03:00
Ivan Lezhankin
06446b4f08 dbms/ → src/ 2020-04-03 18:14:31 +03:00