Amos Bird
35961c0c5d
Use ActionsDAG to rewrite projection queries
2021-05-11 18:12:27 +08:00
Amos Bird
ebaf42a448
Reformat and fix some tests
2021-05-11 18:12:27 +08:00
Amos Bird
264cff6415
Projections
...
TODO (suggested by Nikolai)
1. Build query plan fro current query (inside storage::read) up to WithMergableState
2. Check, that plan is simple enough: Aggregating - Expression - Filter - ReadFromStorage (or simplier)
3. Check, that filter is the same as filter in projection, and also expression calculates the same aggregation keys as in projection
4. Return WithMergableState if projection applies
3 will be easier to do with ActionsDAG, cause it sees all functions, and dependencies are direct (but it is possible with ExpressionActions also)
Also need to figure out how prewhere works for projections, and
row_filter_policies.
wip
2021-05-11 18:12:23 +08:00
Anton Popov
e44706911e
dynamic columns: better getting of sample block
2021-05-05 02:02:54 +03:00
kssenii
3e3396bd9c
Refactor code, add comments
2021-05-03 09:52:32 +00:00
Anton Popov
644df6be7d
dynamic subcolumns: wip
2021-04-24 07:09:01 +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
Alexey Milovidov
a0a3380d91
Remove useless headers
2021-03-28 22:46:45 +03:00
Anton Popov
a4c00ab5dc
Merge pull request #21303 from ucasFL/forbid
...
Forbid to drop a column if it's referenced by materialized view
2021-03-03 02:55:06 +03:00
feng lv
a26c9e64a9
fix
...
fix
2021-03-02 03:20:03 +00:00
Denis Glazachev
eb80c189e4
Merge branch 'master' into row-policy-with-prewhere
2021-02-28 20:14:31 +04:00
feng lv
51021c1164
forbid to drop a column if it's referenced by materialized view
2021-02-28 05:24:39 +00:00
alesapin
5c6c318737
Restrict mutations for engines which doesn't support them
2021-02-25 13:07:48 +03: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
22a0edc596
Update IStorage.cpp
2020-12-23 09:44:44 +03:00
Alexander Kuzmenkov
51b2329295
Merge branch 'master' into aku/window-prototype
2020-12-23 09:26:11 +03:00
Alexander Kuzmenkov
132a0b42eb
cleanup
2020-12-18 20:13:28 +03:00
fastio
e7bce63d3a
hints for column names
2020-12-15 20:23:31 +08:00
Alexander Kuzmenkov
8ee86e35d2
debug
2020-12-02 21:16:31 +03:00
Nikolai Kochetov
195c941c4e
Merge branch 'master' into storage-read-query-plan
2020-11-10 15:02:22 +03:00
alesapin
72046313d4
Merge branch 'master' into nvartolomei-drop-part
2020-11-09 10:02:02 +03:00
alesapin
67d22b3e57
Merge branch 'master' into nvartolomei-drop-part
2020-11-02 19:09:09 +03:00
Azat Khuzhin
b838214a35
Pass non-const SelectQueryInfo (and drop mutable qualifiers)
2020-10-02 22:42:35 +03:00
Nikolai Kochetov
576ffadb17
Fix explain for ISourceStep.
2020-09-30 15:22:30 +03:00
Nikolai Kochetov
b26f11c00c
Support StorageDistributed::read for QueryPlan.
2020-09-18 17:16:53 +03:00
Nikolai Kochetov
50674a320f
Refactor IStorage::read with query plan.
2020-09-18 14:39:07 +03:00
roman
b41421cb1c
[settings]: introduce new query complexity settings for leaf-nodes
...
The new setting should allow to control query complexity on leaf nodes
excluding the final merging stage on the root-node. For example, distributed
query that reads 1k rows from 5 shards will breach the `max_rows_to_read=5000`,
while effectively every shard reads only 1k rows. With setting `max_rows_to_read_leaf=1500`
this limit won't be reached and query will succeed since every shard reads
not more that ~1k rows.
2020-09-17 10:37:05 +01:00
Nikolai Kochetov
6eac433c55
Review fixes.
2020-09-15 13:40:39 +03:00
Nikolai Kochetov
bcfc83022a
Return query plan from storage.
2020-09-14 17:13:58 +03:00
Nicolae Vartolomei
97d0b5ab23
Remove unused query argument
2020-09-08 10:56:10 +01:00
Nikolai Kochetov
9b67cd9faf
Merge branch 'master' into refactor-pipes-3
2020-08-10 10:50:17 +03:00
Alexey Milovidov
edd89a8610
Fix half of typos
2020-08-08 03:47:03 +03:00
Nikolai Kochetov
09fbce1b1e
Merge branch 'master' into refactor-pipes-3
2020-08-04 11:32:34 +03:00
Nikolai Kochetov
e411916bde
Refactor Pipe [part 1].
2020-08-03 14:33:11 +03:00
Vitaly Baranov
18b21511a9
Merge pull request #13013 from vitlibar/implement-custom-settings
...
Implement custom settings
2020-08-02 05:01:14 +03:00
Vitaly Baranov
30b34e6a15
Use SettingSeconds only in Settings, use std::chrono::seconds in other places.
2020-07-31 19:11:27 +03:00
Nikolai Kochetov
39530f837e
Remove TreeExecutorBlockInputStream.
2020-07-31 16:23:19 +03:00
alesapin
1f576ee039
Some intermediate solution
2020-07-13 20:27:52 +03:00
alesapin
4a53264a86
Remove redundant and duplicated code
2020-07-13 19:19:08 +03:00
alesapin
b3ee8967dc
Fix style
2020-06-18 19:28:20 +03:00
alesapin
d79982f497
Better locks in Storages
2020-06-18 19:10:47 +03:00
alesapin
1a69c3234a
Fix style
2020-06-18 14:09:55 +03:00
alesapin
dffdece350
getColumns in StorageInMemoryMetadta (only compilable)
2020-06-17 19:39:58 +03:00
alesapin
ef8781cce7
Better getVirtuals method
2020-06-17 17:37:21 +03:00
alesapin
33c27de54d
Check methods in metadata
2020-06-17 17:32:25 +03:00
alesapin
31abbe5dbd
Select query in metadata
2020-06-17 17:06:22 +03:00
alesapin
eaaef83742
Settings changes in StorageInMemoryMetadata
2020-06-17 16:46:01 +03:00
alesapin
ed8f3b2fc4
TTL in storage in memory metadata
2020-06-17 16:39:26 +03:00
alesapin
1afdebeebd
Primary key in storage metadata
2020-06-17 15:39:20 +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
ab61abccc1
Partition key in StorageInMemoryMetadata
2020-06-17 13:34:23 +03:00
alesapin
62f2c17a66
Secondary indices in StorageInMemoryMetadata
2020-06-17 12:38:47 +03:00
alesapin
ccc2bda666
getConstraints() in StorageInMemoryMetadata (suspicious commit, but pretend to work)
2020-06-16 19:55:04 +03:00
alesapin
1ddeb3d149
Buildable getSampleBlock in StorageInMemoryMetadata
2020-06-16 18:51:29 +03:00
alesapin
71f99a274d
Compileable getSampleBlockWithColumns in StorageInMemoryMetadata
2020-06-16 17:25:08 +03:00
alesapin
08b9aa6b2e
getSampleBlockWithVirtuals in StorageInMemoryMetadata
2020-06-16 15:58:05 +03:00
alesapin
53cb5210de
Move getSampleBlockNonMaterialized to StorageInMemoryMetadata
2020-06-16 15:48:10 +03:00
alesapin
0bcd22008a
Get column dependencies in StorageInMemoryMetadata
2020-06-16 15:19:21 +03:00
alesapin
b47a7327fd
All set methods in metadata
2020-06-15 21:08:05 +03:00
alesapin
33a74a3ea0
TTL methods in StorageInMemoryMetadata
2020-06-15 20:50:53 +03:00
alesapin
5fc41c7ecc
Move set*Key methods to StorageInMemoryMetadata
2020-06-15 20:17:06 +03:00
alesapin
af2fe2ba55
Compilable setColumns, setConstraints, setIndices
2020-06-15 19:55:33 +03:00
alesapin
3427da1c43
Fix incorrect usage of rows TTL
2020-06-13 13:39:25 +03:00
alesapin
18b58e8483
Revert too strict lock
2020-06-13 12:12:45 +03:00
alesapin
31b852c46d
Remove redundant locks
2020-06-13 11:53:40 +03:00
alesapin
fcfb6d3bc2
Merge with master
2020-06-13 11:51:07 +03:00
alesapin
0edf5ff7a2
Fix race condition
2020-06-12 17:32:47 +03:00
alesapin
8be957ecb5
Better checks around metadata
2020-06-10 14:16:31 +03:00
alesapin
ec933d9d03
Better naming
2020-06-10 12:09:51 +03:00
alesapin
6f673b0981
Fix comments bug
2020-06-09 19:33:28 +03:00
alesapin
abaf47f0cd
Make metadata single structure
2020-06-05 20:29:40 +03:00
alesapin
2b23d1aa33
Fix reference
2020-06-05 15:13:24 +03:00
alesapin
5bc7f67e61
Better metadata for select query and renames
2020-06-05 14:54:54 +03:00
alesapin
b49be4c7f2
Better names
2020-06-01 15:11:23 +03:00
alesapin
663e92b1c5
Rename to methods
2020-06-01 14:29:11 +03:00
alesapin
d9a817f578
Less virtual methods in IStorage
2020-06-01 14:17:18 +03:00
alesapin
3847ea892d
Merge branch 'master' into consistent_metadata3
2020-06-01 13:17:59 +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
alesapin
860dc2c814
Merge with consistent_metadata2
2020-05-28 19:45:51 +03:00
alesapin
61aff798d3
Compileable code
2020-05-28 18:33:44 +03:00
alesapin
52ca6b2051
I'm able to build it
2020-05-28 15:37:05 +03:00
Nikolai Kochetov
1fa795988f
Remove some code.
2020-05-28 11:24:59 +03:00
alesapin
380c60a33f
Intermediate stage (doesn't compile)
2020-05-27 21:38:34 +03:00
alesapin
c7cda399c7
Merge branch 'master' into consistent_metadata2
2020-05-27 12:51:56 +03:00
alesapin
9d0c28d96c
Add missing methods
2020-05-26 17:14:08 +03:00
alesapin
adc7439a4c
Comments and refactoring
2020-05-25 20:57:08 +03:00
alesapin
9b3cc9e525
Almost working ttl in IStorage
2020-05-25 20:07:14 +03:00
alesapin
327d17ac6a
Better
2020-05-21 22:46:03 +03:00
alesapin
41914588fd
More clear
2020-05-21 22:07:18 +03:00
alesapin
616902a995
Sorting and primary key (broken)
2020-05-20 21:11:38 +03:00
alesapin
9fb28f5ac0
Add sampling key
2020-05-20 18:16:39 +03:00
alesapin
8bc527eecd
Compile partition key
2020-05-20 15:16:55 +03:00
alesapin
f981649213
Fix pushing to views stream and refactor virtuals
2020-04-28 13:38:57 +03:00
alesapin
4badd0fd28
Better code
2020-04-27 20:46:51 +03:00
alesapin
4c1ac83112
Fix in IStorage
2020-04-27 17:44:32 +03:00
alesapin
18c550df15
Better virtuals logic
2020-04-27 16:55:30 +03:00
alesapin
2829774105
Merge branch 'master' into refactor_istorage
2020-04-27 15:34:21 +03:00
tavplubix
7928f2eaa1
Merge pull request #7512 from ClickHouse/database_atomic
...
DatabaseAtomic
2020-04-24 22:28:18 +03:00
alesapin
b4425c2dc4
Remove getColumn and hasColumn methods from IStorage
2020-04-24 13:20:03 +03:00