Anton Popov
3cadc9033a
fsyncs for metadata files of part
2020-09-01 18:53:22 +03:00
alesapin
c37a19f7b0
Better
2020-09-01 14:23:38 +03:00
alesapin
f0dc5a3085
First working test
2020-09-01 13:49:53 +03:00
alesapin
b751319f9e
Merge branch 'master' into recompression_in_background
2020-09-01 10:31:10 +03:00
alesapin
05b10048a6
Merge pull request #14116 from ClickHouse/parts_default_compression
...
Save parts default compression
2020-09-01 09:43:42 +03:00
Anton Popov
25140b9bd5
fsync MergeTree format file
2020-09-01 04:39:36 +03:00
alesapin
46f833b7df
Some changes
2020-08-31 22:50:42 +03:00
alesapin
b20a0bc254
Add recompression flag in ReplicatedEntry
2020-08-31 16:42:42 +03:00
alesapin
067eb4599d
Fix empty columns case
2020-08-31 16:39:27 +03:00
alesapin
adc18f4d3f
Write with recompression TTL
2020-08-31 16:29:31 +03:00
alesapin
42c210fcba
Recompress TTLs in memory metadata
2020-08-31 15:12:51 +03:00
alesapin
034f1a895d
Merge branch 'master' into recompression_in_background
2020-08-31 11:10:14 +03:00
alexey-milovidov
b1efc5df01
Merge pull request #14225 from amosbird/bf1
...
Fix bug in mark inclusion search.
2020-08-30 02:58:22 +03:00
alesapin
2d33a4029b
Merge pull request #14220 from ClickHouse/remove_redundant_flag
...
Disable force TTL on optimize final
2020-08-29 10:40:36 +03:00
Amos Bird
591a4d60d4
Fix bug in mark inclusion search.
2020-08-29 09:46:46 +08:00
alesapin
ebc163c924
Merge branch 'master' into parts_default_compression
2020-08-28 23:11:42 +03:00
alesapin
65c33f0802
Merge pull request #13280 from amosbird/as
...
ALTER MODIFY SAMPLE BY
2020-08-28 19:32:09 +03:00
alesapin
232c264d7d
Disable force TTL on optimise
2020-08-28 16:45:42 +03:00
alesapin
0896b49533
Small fixes
2020-08-28 13:18:56 +03:00
alesapin
77faf9587f
Better interface
2020-08-28 12:07:20 +03:00
Alexey Milovidov
5763737d97
Fixups
2020-08-28 03:53:22 +03:00
Alexey Milovidov
ed1d120de0
Added another test; fixup
2020-08-28 03:28:37 +03:00
Alexey Milovidov
c4e8aaac16
Fixups
2020-08-28 03:07:51 +03:00
Alexey Milovidov
6082697c4d
Support for quorum
2020-08-28 02:39:12 +03:00
Alexey Milovidov
cdba5e727c
Fix mistake
2020-08-28 02:30:07 +03:00
Alexey Milovidov
88db4938f5
Fix error; refinements
2020-08-28 02:22:00 +03:00
Alexey Milovidov
c04dc4e722
Merge branch 'master' into manual-write-duplicate-parts-to-replicas
2020-08-28 01:56:11 +03:00
Amos Bird
05a5a13e08
specific ReplicatedMergeTree settings
2020-08-27 22:37:41 +08:00
Amos Bird
078b14610d
ALTER MODIFY SAMPLE BY
2020-08-27 22:31:30 +08:00
alesapin
32db38b4d2
Fix compression codec in WAL
2020-08-27 17:06:14 +03:00
alesapin
d426751e26
Default codec if part is not stored on disk
2020-08-27 16:32:23 +03:00
alexey-milovidov
9baa0fbf81
Merge pull request #14129 from CurtizJ/fix-performance
...
Slightly optimize very short queries with LowCardinality
2020-08-27 15:07:19 +03:00
alesapin
1225c09a02
Fix default codec for in-memory parts
2020-08-27 11:35:55 +03:00
alesapin
886a7b485e
Fixed codec in clone part
2020-08-27 09:49:41 +03:00
bharatnc
ffb73adb11
fix style check
2020-08-26 15:31:48 -07:00
bharatnc
593f054b10
minor fix exception message
2020-08-26 15:31:48 -07:00
bharatnc
3a35aedb56
add comments explaining index_granularity_bytes safe guard
2020-08-26 15:31:48 -07:00
bharatnc
4ac9b59cec
format file
2020-08-26 15:31:48 -07:00
bharatnc
37416045ba
setting min_index_granularity_bytes
...
This PR adds a new setting called `min_index_granularity_bytes`.
If the `index_granularity_bytes` is > 0 and is lesser than the
`min_index_granularity_bytes`, throw an exception inside the
`registerStorageMergeTree.cpp` file.
2020-08-26 15:31:48 -07:00
alesapin
44eb702fbe
Remove redundant code
2020-08-26 22:41:57 +03:00
alesapin
3a680dc8fb
Fix removal bug
2020-08-26 22:40:04 +03:00
Anton Popov
eeb78bf291
slightly optimize very short queries with LowCardinality
2020-08-26 21:46:18 +03:00
alesapin
1fb93a8bf2
Remove read helpers
2020-08-26 18:57:06 +03:00
alesapin
18eb0dbcaa
Better remove
2020-08-26 18:39:11 +03:00
alesapin
2fc80189af
Add default compression codec to merge tree data part
2020-08-26 18:29:46 +03:00
Alexey Milovidov
0e021c6151
Merge branch 'master' into manual-write-duplicate-parts-to-replicas
2020-08-26 03:24:35 +03:00
Anton Popov
4331158d30
merge with master
2020-08-24 16:09:23 +03:00
Anton Popov
4df5c72878
Merge remote-tracking branch 'upstream/master' into HEAD
2020-08-24 12:57:27 +03:00
alexey-milovidov
7b53a0ef33
Revert "Added allow_merges
option for volumes in multi-disk configuration ( #13402 )"
...
This reverts commit 1e2616542a
.
2020-08-21 18:44:29 +03:00
Vladimir Chebotarev
1e2616542a
Added allow_merges
option for volumes in multi-disk configuration ( #13402 )
2020-08-21 12:04:13 +03:00
Artem Zuikov
becc186c91
Add support for extended precision integers and decimals ( #13097 )
2020-08-19 14:52:17 +03:00
alexey-milovidov
23ccb0b6be
Merge pull request #13677 from hagen1778/merge-tree-fail-fast-on-rows-limit
...
[mergeTree]: fail fast if max_rows_to_read limit exceeded on parts scan
2020-08-18 22:24:39 +03:00
roman
35e28b4c6b
[mergeTree]: make exception message more clear
2020-08-17 09:52:04 +01:00
Alexey Milovidov
5059d1f441
Merge branch 'master' into manual-write-duplicate-parts-to-replicas
2020-08-16 15:58:57 +03:00
alexey-milovidov
f3755fecb7
Merge pull request #13793 from amosbird/fnc
...
Fix set index with const column pred
2020-08-16 15:18:31 +03:00
Amos Bird
ae2c50e9e8
Fix set index with const column pred
2020-08-16 15:16:37 +08:00
Alexey Milovidov
9e6d4802ac
Do not drop cache if DROP/RENAME in Atomic database
2020-08-15 09:56:47 +03:00
roman
b637699ccd
[mergeTree]: fail fast if max_rows_to_read limit exceeded on parts scan
...
The motivation behind this change is to skip ranges scan for all selected parts
if it is clear that `max_rows_to_read` is already exceeded. The change is quite
noticeable for queries over big number of parts.
2020-08-14 13:53:48 +01:00
tavplubix
e6df1f4868
Merge pull request #13676 from amosbird/bd
...
Make drop table a little bit more robust
2020-08-14 14:14:58 +03:00
Amos Bird
de4a070d6a
log error message
2020-08-14 09:54:51 +08:00
alexey-milovidov
c06cfda3cb
Merge pull request #13678 from ClickHouse/fix-typo-2
...
Fix typo due to copy-paste
2020-08-14 04:15:23 +03:00
alexey-milovidov
eeefcd6493
Merge pull request #13337 from ClickHouse/refactor-pipes-3
...
Refactor Pipe
2020-08-14 04:12:22 +03:00
Alexey Milovidov
bcd29dc9f8
Fix typo due to copy-paste
2020-08-13 18:41:26 +03:00
Amos Bird
3b92692458
Make drop table a little bit more robust
2020-08-13 22:22:04 +08:00
Alexander Tokmakov
e4da1d8e51
fix deadlock and logical error in replication queue
2020-08-12 00:36:02 +03:00
Nikolai Kochetov
9b67cd9faf
Merge branch 'master' into refactor-pipes-3
2020-08-10 10:50:17 +03:00
alexey-milovidov
fa1c4d1eef
Merge pull request #13538 from CurtizJ/fix-skip-indices
...
Fix secondary indices corruption in compact parts
2020-08-09 20:13:13 +03:00
Anton Popov
2280619ad0
fix secondary indices corruption in compact parts
2020-08-09 04:45:10 +03:00
alexey-milovidov
aefa9b297b
Merge pull request #13449 from ClickHouse/mixed_granularity_parts_by_default
...
Enable mixed granularity parts by default
2020-08-09 01:36:59 +03:00
alexey-milovidov
c0fef71507
Merge pull request #13511 from ClickHouse/codespell
...
Fix typos in code with codespell.
2020-08-08 17:09:16 +03:00
Alexey Milovidov
306aefd33e
Change error code #13416
2020-08-08 17:05:46 +03:00
Alexey Milovidov
12f66fa82c
Fix 99% of typos
2020-08-08 04:01:47 +03:00
Alexey Milovidov
edd89a8610
Fix half of typos
2020-08-08 03:47:03 +03:00
Alexey Milovidov
bbbc52362b
Remove strange file
2020-08-08 03:13:51 +03:00
alesapin
5de2491eda
Enable mixed granularity parts by default
2020-08-07 11:55:51 +03:00
Alexey Milovidov
0ac3f0481f
Probably fix error
2020-08-07 04:27:29 +03:00
Nikolai Kochetov
d83c7cc0e6
Merge branch 'master' into refactor-pipes-3
2020-08-06 17:32:50 +03:00
Nikolai Kochetov
20e63d2271
Refactor Pipe [part 6]
2020-08-06 15:24:05 +03:00
Anton Popov
33699d8d4a
Merge pull request #13282 from amosbird/mha
...
Report broken parts in compact MergeTree
2020-08-05 14:27:32 +03:00
Alexey Milovidov
d91471ea00
Merge branch 'master' into stack-frams-size-limit
2020-08-04 15:28:47 +03:00
alesapin
943eb2f990
bump CI
2020-08-04 12:42:51 +03:00
Amos Bird
019f6d3a76
Report broken parts in compact MergeTree
2020-08-04 16:45:52 +08:00
Nikolai Kochetov
09fbce1b1e
Merge branch 'master' into refactor-pipes-3
2020-08-04 11:32:34 +03:00
alexey-milovidov
c43a27782e
Merge pull request #13153 from ClickHouse/merge-tree-settings-sanity-check
...
Sanity checks for MergeTreeSettings
2020-08-04 01:27:19 +03:00
Alexey Milovidov
1d091738dd
Merge branch 'master' into stack-frams-size-limit
2020-08-03 20:41:47 +03:00
Nikolai Kochetov
2cca4d5fcf
Refactor Pipe [part 2].
2020-08-03 16:54:14 +03:00
Alexander Tokmakov
5b92f43f12
Merge branch 'master' into database_atomic_improvements
2020-08-03 14:35:40 +03:00
Nikolai Kochetov
e411916bde
Refactor Pipe [part 1].
2020-08-03 14:33:11 +03:00
Nikolai Kochetov
cf49a83980
Merge pull request #13201 from azat/fix-logging-in-MergeTreeDataSelectExecutor
...
Fix logging in MergeTreeDataSelectExecutor for multiple threads (attach to thread group)
2020-08-03 10:08:58 +03:00
Alexey Milovidov
77516b48fa
Merge branch 'master' into merge-tree-settings-sanity-check
2020-08-03 00:30:56 +03:00
Alexey Milovidov
0fd7af8a63
Merge branch 'master' into stack-frams-size-limit
2020-08-03 00:06:00 +03: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
alesapin
75a9053511
Merge pull request #13150 from nvartolomei/nv/freeze-verbose-absolute-path
...
Use absolute paths to backup locations (shadow)
2020-08-02 19:25:24 +03:00
Alexey Milovidov
41111d1e57
Merge branch 'master' into stack-frams-size-limit
2020-08-02 19:18:33 +03:00
Alexey Milovidov
778abb346f
Merge branch 'master' into merge-tree-settings-sanity-check
2020-08-02 17:13:17 +03:00
Azat Khuzhin
e37c42c56c
Fix logging in MergeTreeDataSelectExecutor for multiple threads (attach to thread group)
2020-08-02 13:40:01 +03:00
Azat Khuzhin
101217470e
Use "Not using primary index on part" over "Not using index on part" (add "primary")
2020-08-02 13:40:01 +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
Alexey Milovidov
d3c0635fc0
Merge branch 'master' into stack-frams-size-limit
2020-08-02 04:35:09 +03:00
Alexey Milovidov
8fe201f1b9
Merge branch 'master' into merge-tree-settings-sanity-check
2020-08-01 19:20:11 +03:00
Nikolai Kochetov
c786f05388
Merge pull request #13189 from ClickHouse/refactor-pipes-2
...
Remove TreeExecutorBIS
2020-08-01 11:56:50 +03:00
Vitaly Baranov
56665a15f7
Rework and rename the template class SettingsCollection => BaseSettings.
2020-07-31 20:54:18 +03:00
Vitaly Baranov
90602b869a
Make SettingsChanges a class.
2020-07-31 19:11:27 +03:00
Vitaly Baranov
4ad99f1472
Make type names of settings shorter: SettingUInt64 => UInt64.
2020-07-31 19:11:27 +03:00
Nikolai Kochetov
39530f837e
Remove TreeExecutorBlockInputStream.
2020-07-31 16:23:19 +03:00
alesapin
45894fcf99
Better comments
2020-07-31 15:22:32 +03:00
alexey-milovidov
9c9ef0db9b
Merge branch 'master' into database_atomic_improvements
2020-07-31 14:56:49 +03:00
alesapin
14928874a1
Fix mutations status check
2020-07-31 14:37:16 +03:00
Alexey Milovidov
2c40539df6
Check ALTERs; update test
2020-07-31 00:42:55 +03:00
Alexey Milovidov
c491b2c153
Lower stack frame size
2020-07-30 23:58:08 +03:00
Alexey Milovidov
b9f49d31df
Sanity checks for MergeTreeSettings
2020-07-30 22:08:13 +03:00
alexey-milovidov
fc35ce69fa
Merge pull request #12666 from ClickHouse/forward_alter_error_to_client
...
Forward exceptions to client if exception happened during ALTER
2020-07-30 21:36:06 +03:00
Nicolae Vartolomei
85174d64a0
Use absolute paths to backup locations (shadow)
...
Tests are frankenstain. Had to hide absolute path `/tmp/clickhouse.test..IP69I/data/shadow/test_01417_single_part_7/data/default/table_for_freeze/7_8_8_0` to make them deterministic and independend of the method they are run (local vs remote target)
2020-07-30 18:03:26 +01:00
alexey-milovidov
4c3241808d
Merge pull request #12728 from ClickHouse/prevent-inconsistent-merge-tree-settings
...
Safe logic for incorrect MergeTreeSettings
2020-07-30 17:55:39 +03:00
alexey-milovidov
e6265bf299
Merge pull request #13100 from ClickHouse/keep-less-amount-of-logs-in-zookeeper
...
Keep less amount of logs in ZooKeeper
2020-07-30 15:41:55 +03:00
alexey-milovidov
a22bdb1989
Merge pull request #13081 from CurtizJ/fix-index_analysis
...
Fix wrong index analysis with functions
2020-07-30 15:30:55 +03:00
Alexey Milovidov
6517ddcbd4
Keep less amount of logs in ZooKeeper
2020-07-30 05:47:05 +03:00
Alexander Kuzmenkov
881220eec2
Merge pull request #12755 from bobrik/ivan/obvious-skip-overall
...
Show marks before applying skipping indices
2020-07-29 20:59:08 +03:00
Anton Popov
4c266d1e5d
fix wrong index analysis with functions
2020-07-29 19:09:38 +03:00
alesapin
7a806eb90f
Merge pull request #13017 from ClickHouse/freeze_partition_with_name
...
Alter table freeze with verbose output
2020-07-29 18:42:48 +03:00
Alexander Kuzmenkov
1b9269ae0c
fixup
2020-07-28 19:58:19 +03:00
Alexander Kuzmenkov
297cf65f1f
Merge remote-tracking branch 'origin/master' into HEAD
2020-07-28 19:56:35 +03:00
alesapin
c75830e878
Alter table freeze with verbose output
2020-07-28 18:10:36 +03:00
alesapin
585d9247ec
Merge pull request #12959 from ClickHouse/test_for_backup
...
Check backup restore in integration test.
2020-07-28 17:59:52 +03:00
Alexander Kazakov
2bde393499
Merging #12548 - Correction to merge_with_ttl_timeout
logic by @excitoon ( #12982 )
...
* Fixed `merge_with_ttl_timeout` logic.
* Separate TTL-merge timers for each partition
Co-authored-by: Vladimir Chebotarev <vladimir.chebotarev@gmail.com>
2020-07-28 17:38:34 +03:00
Alexander Kuzmenkov
ba7c33f806
Merge pull request #12754 from bobrik/ivan/obvious-skip
...
Show total granules examined by skipping indices
2020-07-28 17:14:25 +03:00
alexey-milovidov
7a22717180
Merge pull request #12760 from ClickHouse/sticky_mutations_bug
...
Sticking mutations bug
2020-07-28 14:42:54 +03:00
alesapin
1bece3de0a
Remove strange code and test
2020-07-28 12:36:08 +03:00
Alexey Milovidov
798ef1b9f9
Adjustments; added test result
2020-07-27 23:18:23 +03:00
Alexey Milovidov
ec84ed30cb
Merge branch 'master' into prevent-inconsistent-merge-tree-settings
2020-07-27 21:39:25 +03:00
Nikolai Kochetov
abdd160db1
Merge pull request #12589 from bobrik/ivan/parallel-ranges
...
Parallelize PK range and skipping index stages
2020-07-27 19:23:00 +03:00
alexey-milovidov
7dac65ce0f
Merge pull request #12659 from zhang2014/fix/ISSUES-10572
...
ISSUES-10572 fix bloom filter with const column
2020-07-27 14:38:56 +03:00
alesapin
1707f84a44
Less strict check and rare rename bug
2020-07-27 12:42:37 +03:00
alesapin
e0bf5913e7
Fix sticking mutations
2020-07-26 17:21:57 +03:00
Alexander Tokmakov
6bfe88e83f
Merge branch 'master' into database_atomic_improvements
2020-07-26 13:40:05 +03:00
alesapin
c66dc23a47
Fix error style
2020-07-25 23:56:29 +03:00
alesapin
eae7dc852e
Fix build
2020-07-25 23:54:33 +03:00
alesapin
393a9195ca
Better exception message
2020-07-25 17:45:46 +03:00
alesapin
78d357f0d2
Add a test for sticking mutations bug
2020-07-25 17:42:20 +03:00
Ivan Babrou
e835ec0b56
Show marks before applying skipping indices
...
This change makes skipping index efficiency more obvious, changing this:
```
Selected 30 parts by date, 30 parts by key, 592 marks to read from 541 ranges
```
Into this:
```
Selected 30 parts by date, 30 parts by key, 48324 marks by primary key, 592 marks to read from 541 ranges
```
2020-07-24 15:45:38 -07:00
Ivan Babrou
67d4529783
Show total granules examined by skipping indices
...
This change makes skipping index efficiency more obvious, changing this:
```
Index `idx_duration` has dropped 59 granules.
```
Into this:
```
Index `idx_duration` has dropped 59 / 61 granules.
```
2020-07-24 14:50:32 -07:00
Anton Popov
d3fbeb296e
write compressed blocks for every column in granule
2020-07-23 19:56:12 +03:00
Anton Popov
61018c275d
Merge remote-tracking branch 'upstream/master' into polymorphic-parts-4
2020-07-23 18:38:29 +03:00
Anton Popov
1d0493cfcc
better code in ReaderCompact and perf test added
2020-07-23 18:37:44 +03:00
Nikolai Kochetov
dad9d369a1
Merge branch 'master' into bobrik-parallel-randes
2020-07-23 16:21:32 +03:00
Alexey Milovidov
6b4be2b9fe
Safe logic for incorrect MergeTreeSettings #10897
2020-07-23 15:31:09 +03:00
Azat Khuzhin
c97fb4b0e5
Remove unused bits in MergeTreeRangeReader ( #12671 )
...
Refs: #7769
Cc: @amosbird
2020-07-23 11:20:09 +03:00
alesapin
978f286625
Trying to fix FreeBSD build
2020-07-23 11:00:18 +03:00
alesapin
6fdcb59df7
Merge branch 'master' into forward_alter_error_to_client
2020-07-23 10:48:58 +03:00
Alexander Tokmakov
237accd154
Merge branch 'master' into database_atomic_improvements
2020-07-23 06:33:20 +03:00
alesapin
355150afce
Fix deadlock and better code
2020-07-22 22:29:54 +03:00
Artem Zuikov
2afd123eda
Refactoring: extract TreeOptimizer from SyntaxAnalyzer ( #12645 )
2020-07-22 20:13:05 +03:00
alesapin
8c8bdd5070
Fix tests and work with multiple mutations
2020-07-22 18:19:54 +03:00
Nikolai Kochetov
76d784be9c
Merge pull request #12613 from ClickHouse/remove-sort-description-from-streams
...
Remove sort description from streams
2020-07-22 17:35:05 +03:00
alesapin
de846e5e3c
Forward exception to client during alter
2020-07-22 15:36:19 +03:00
Nikolai Kochetov
b27066389a
Do not create ThreadPool for single thread.
2020-07-22 14:51:35 +03:00
zhang2014
580889f1e4
ISSUES-10572 fix bloom filter with const column
2020-07-22 17:42:12 +08:00
Alexander Tokmakov
9bcaaea3e0
Merge branch 'master' into database_atomic_improvements
2020-07-22 05:24:48 +03:00
alesapin
be106b662e
Comment and style
2020-07-21 18:19:41 +03:00
Nikolai Kochetov
486a4932c3
Fix tests.
2020-07-21 17:08:18 +03:00
alesapin
daaa5cc382
Add setting allow_non_metadata_alters
2020-07-21 17:05:30 +03:00
Nikolai Kochetov
755f15def3
Make MergeTreeSetIndex::checkInRange const.
2020-07-21 14:22:45 +03:00
alesapin
379a5a750a
Fix error message about granularity
2020-07-21 14:10:23 +03:00
Nikolai Kochetov
12c5e376c6
Remove mutable from RPNElement.
2020-07-21 14:02:58 +03:00
Nikolai Kochetov
cab9146ff3
Remove SortDescription from IBlockInputStream.
2020-07-21 11:05:52 +03:00
Nikolai Kochetov
d6583698a9
Merge branch 'master' into bobrik-parallel-randes
2020-07-20 19:05:28 +03:00
Nikolai Kochetov
0cc55781d8
Try fix tests.
2020-07-20 18:09:00 +03:00
Alexander Kuzmenkov
40ee6eba19
Merge pull request #12545 from ClickHouse/fix_load_part_without_checksums
...
Fix loading parts without checksums
2020-07-20 14:40:53 +03:00
Ivan Babrou
72622a9b00
Parallelize PK range and skipping index stages
...
This runs PK lookup and skipping index stages on parts
in parallel, as described in #11564 .
While #12277 sped up PK lookups, skipping index stage
may still be a bottleneck in a select query. Here we
parallelize both stages between parts.
On a query that uses a bloom filter skipping index to pick
2,688 rows out of 8,273,114,994 on a two day time span,
this change reduces latency from 10.5s to 1.5s.
2020-07-19 21:49:41 -07:00
Alexander Tokmakov
c27de9b424
fixes
2020-07-17 16:11:44 +03:00
alesapin
ac802a8e96
Merge pull request #12543 from ClickHouse/fix_marks_type_on_mutation
...
Fix incorrect adaptive granularity by default
2020-07-17 11:09:54 +03:00
Alexander Tokmakov
a612080df1
Merge branch 'master' into database_atomic_improvements
2020-07-17 00:43:59 +03:00
Anton Popov
97e8a88b30
Merge pull request #12277 from bobrik/ivan/exact-range-speedup
...
WIP: Optimize PK lookup for queries that match exact PK range
2020-07-16 19:17:50 +03:00
alesapin
b3ec3b1ed1
Fix loading parts without checksums
2020-07-16 13:54:49 +03:00
alesapin
42983c5416
Fix incorrect adaptive granularity by default
2020-07-16 12:10:15 +03:00
Anton Popov
c6423b2b28
lower read buffer size, while reading from compact parts
2020-07-15 14:53:23 +03:00
Alexander Tokmakov
09abe71b60
Merge branch 'master' into database_atomic_improvements
2020-07-15 13:07:08 +03:00
alesapin
614540eddf
Merge pull request #12382 from ClickHouse/clear-all-columns
...
Better errors for CLEAR/DROP columns (possibly in partitions)
2020-07-15 12:52:06 +03:00
alesapin
9e41fbca55
Remove check for drop detached partition
2020-07-14 16:56:30 +03:00
alesapin
014bb070ec
Fix tests
2020-07-14 11:19:39 +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
Alexander Tokmakov
fdb02edc7c
Merge branch 'master' into database_atomic_improvements
2020-07-13 17:28:48 +03:00
Alexander Tokmakov
04c3e7cab6
add implicit uuid macro
2020-07-13 16:18:38 +03:00
Anton Popov
a9530d2883
in-memory parts: fix reading from nested
2020-07-13 12:10:55 +03:00
alexey-milovidov
ae7eff98ed
Merge pull request #12433 from amosbird/np
...
Allow nullable key in MergeTree
2020-07-13 04:36:00 +03:00
Amos Bird
cac5a89169
Allow nullable key in MergeTree
2020-07-12 22:21:51 +08:00
Ivan Babrou
8784994d65
Allow conditions outside of PK with exact range
...
Conditions that are outside of PK are marked as `unknown` in `KeyCondition`,
so it's safe to allow them, as long as they are always combined by `AND`.
2020-07-11 18:59:26 -07:00
Ivan Babrou
d9d8d0242e
Optimize PK lookup for queries that match exact PK range
...
Existing code that looks up marks that match the query has a pathological
case, when most of the part does in fact match the query.
The code works by recursively splitting a part into ranges and then discarding
the ranges that definitely do not match the query, based on primary key.
The problem is that it requires visiting every mark that matches the query,
making the complexity of this sort of look up O(n).
For queries that match exact range on the primary key, we can find
both left and right parts of the range with O(log 2) complexity.
This change implements exactly that.
To engage this optimization, the query must:
* Have a prefix list of the primary key.
* Have only range or single set element constraints for columns.
* Have only AND as a boolean operator.
Consider a table with `(service, timestamp)` as the primary key.
The following conditions will be optimized:
* `service = 'foo'`
* `service = 'foo' and timestamp >= now() - 3600`
* `service in ('foo')`
* `service in ('foo') and timestamp >= now() - 3600 and timestamp <= now`
The following will fall back to previous lookup algorithm:
* `timestamp >= now() - 3600`
* `service in ('foo', 'bar') and timestamp >= now() - 3600`
* `service = 'foo'`
Note that the optimization won't engage when PK has a range expression
followed by a point expression, since in that case the range is not continuous.
Trace query logging provides the following messages types of messages,
each representing a different kind of PK usage for a part:
```
Used optimized inclusion search over index for part 20200711_5710108_5710108_0 with 9 steps
Used generic exclusion search over index for part 20200711_5710118_5710228_5 with 1495 steps
Not using index on part 20200710_5710473_5710473_0
```
Number of steps translates to computational complexity.
Here's a comparison for before and after for a query over 24h of data:
```
Read 4562944 rows, 148.05 MiB in 45.19249672 sec., 100966 rows/sec., 3.28 MiB/sec.
Read 4183040 rows, 135.78 MiB in 0.196279627 sec., 21311636 rows/sec., 691.75 MiB/sec.
```
This is especially useful for queries that read data in order
and terminate early to return "last X things" matching a query.
See #11564 for more thoughts on this.
2020-07-11 12:26:54 -07:00
Anton Popov
fbec940e0f
fix reading and check query for compact parts with different codecs
2020-07-11 02:33:36 +03:00
alexey-milovidov
e22547c29d
Merge pull request #12388 from ClickHouse/bloom-filter-arg-check
...
Check arguments of bloom filter index
2020-07-10 20:54:16 +03:00
alexey-milovidov
caef1d8e24
Update MergeTreeIndexFullText.cpp
2020-07-10 20:53:58 +03:00
Anton Popov
24f627e52c
fix reading from compact parts with different codecs
2020-07-10 18:57:10 +03:00
Alexey Milovidov
47eaffbe63
Additional checks
2020-07-10 11:21:40 +03:00
Alexey Milovidov
4b86f36d37
Check arguments of bloom filter index
2020-07-10 11:13:21 +03:00
Alexey Milovidov
276b3a0215
Avoid exception when negative or floating point constant is used in WHERE condition for indexed tables #11905
2020-07-10 09:30:49 +03:00
alexey-milovidov
c16d8e094b
Merge pull request #12308 from ClickHouse/fix-codec-bad-exception-code
...
Fix wrong exception code in codecs Delta, DoubleDelta #12110
2020-07-10 08:40:46 +03:00
Anton Popov
80a62977f1
fix hashing in DataPartWriterCompact
2020-07-09 21:26:54 +03:00
Anton Popov
9f72baad1f
Merge remote-tracking branch 'upstream/master' into HEAD
2020-07-09 20:51:36 +03:00
Alexey Milovidov
6c458a6287
Fix race condition in ReplicatedMergeTreeQueue
2020-07-09 07:43:28 +03:00
Alexey Milovidov
ea970fd57c
Remove bad ugliness
2020-07-09 04:00:16 +03:00
alesapin
84f8bf1e14
Merge pull request #10697 from CurtizJ/polymorphic-parts
...
Polymorphic parts (in-memory format)
2020-07-08 13:25:45 +03:00
Anton Popov
416d9648c2
remove questionable functionality
2020-07-07 12:58:14 +03:00
Anton Popov
d6434f61dc
support codecs in compact parts
2020-07-07 03:15:02 +03:00
alesapin
3f90f65678
Merge remote-tracking branch 'origin' into CurtizJ-polymorphic-parts
2020-07-06 21:34:17 +03:00
Nikita Mikhaylov
2b539e6ace
fix style
2020-07-06 20:26:15 +03:00
Nikita Mikhaylov
d31ed58f01
done
2020-07-06 17:33:31 +03:00
myrrc
8c3417fbf7
ILIKE operator ( #12125 )
...
* Integrated CachingAllocator into MarkCache
* fixed build errors
* reset func hotfix
* upd: Fixing build
* updated submodules links
* fix 2
* updating grabber allocator proto
* updating lost work
* updating CMake to use concepts
* some other changes to get it building (integration into MarkCache)
* further integration into caches
* updated Async metrics, fixed some build errors
* and some other errors revealing
* added perfect forwarding to some functions
* fix: forward template
* fix: constexpr modifier
* fix: FakePODAllocator missing member func
* updated PODArray constructor taking alloc params
* fix: PODArray overload with n restored
* fix: FakePODAlloc duplicating alloc() func
* added constexpr variable for alloc_tag_t
* split cache values by allocators, provided updates
* fix: memcpy
* fix: constexpr modifier
* fix: noexcept modifier
* fix: alloc_tag_t for PODArray constructor
* fix: PODArray copy ctor with different alloc
* fix: resize() signature
* updating to lastest working master
* syncing with 273267
* first draft version
* fix: update Searcher to case-insensitive
* added ILIKE test
* fixed style errors, updated test, split like and ilike, added notILike
* replaced inconsistent comments
* fixed show tables ilike
* updated missing test cases
* regenerated ya.make
* Update 01355_ilike.sql
Co-authored-by: myrrc <me-clickhouse@myrrec.space>
Co-authored-by: alexey-milovidov <milovidov@yandex-team.ru>
2020-07-05 18:57:59 +03:00
alexey-milovidov
e05283d5d3
Merge pull request #12060 from ClickHouse/fix-12053
...
Check wrong type for filter.
2020-07-04 23:46:34 +03:00
Anton Popov
73676f5022
Improve performace of reading in order of sorting key. ( #11696 )
...
* simplify reading in order of sorting key
* add perf test for reading many parts
* Revert "simplify reading in order of sorting key"
This reverts commit 7267d7c46e
.
* add threshold for preliminary merge for reading in order
* better threshold
* limit threads in test
2020-07-04 15:48:51 +03:00
alesapin
8dc204350f
Fix version column in replicated version collapsing merge tree ( #12121 )
2020-07-04 10:35:17 +03:00
Anton Popov
ca346ea13c
rename fsync-related settings
2020-07-03 02:41:37 +03:00
Anton Popov
4422df2e37
Merge remote-tracking branch 'upstream/master' into HEAD
2020-07-02 20:18:21 +03:00
Anton Popov
71059e4dff
Merge pull request #12062 from nvartolomei/nv/set-index-tuple-types
...
Try fix pk in tuple performance
2020-07-02 15:51:03 +03:00
Nikolai Kochetov
79cd33a567
Fix tests.
2020-07-02 10:44:47 +03:00
Nicolae Vartolomei
3854ce6d84
Rewrite Set lookup to make it more readable
2020-07-01 15:05:54 +01:00
Anton Popov
d45697a1b5
in-memory-parts: lazy creation of WAL
2020-06-30 21:47:12 +03:00
Nikolai Kochetov
3585700506
Fix tests.
2020-06-30 19:41:43 +03:00
Nicolae Vartolomei
8f1845185e
Try fix pk in tuple performance
...
Possible approach for fixing #10574
The problem is that prepared sets are built correctly, it is a hash map of key -> set
where key is a hash of AST and list of data types (when we a list of
tuples of literals).
However, when the key is built from the index to try and find if there
exists a prepared set that would match it looks for data types of the
primary key (see how data_types is populated) because the primary key
has only one field (v in my example) it can not find the prepared set.
The patch looks for any prepared indexes where data types match for the
subset of fields found in primary key, we are not interested in other
fields anyway for the purpose of primary key pruning.
2020-06-30 16:33:38 +01:00
Nikolai Kochetov
66da0733ab
Check type of filter for prewhere.
2020-06-30 17:20:27 +03:00
Vladimir Chebotarev
bb8da71eff
Moves task shall be started if new storage policy needs them.
2020-06-30 15:36:44 +03:00
Anton Popov
53e955c6dd
several fixes
2020-06-29 23:36:18 +03:00
Anton Popov
a43cb93be5
remove questionable functionality
2020-06-29 18:46:50 +03:00
Alexey Milovidov
cc597bb30b
Implement for ReplicatedMergeTree
2020-06-28 22:39:31 +03:00
Alexey Milovidov
1f9c27de34
Fix clang-tidy
2020-06-28 22:39:31 +03:00
Alexey Milovidov
b6e31f0a5e
Only allow Enum extension within the same width
2020-06-28 22:39:31 +03:00
Alexey Milovidov
e4d8cc2b44
Slightly more safe
2020-06-28 22:39:31 +03:00
Alexey Milovidov
97ad23b905
Allow to ALTER partition key in some cases
2020-06-28 22:39:31 +03:00
Alexey Milovidov
678d127503
Whitespace
2020-06-28 22:39:31 +03:00
Alexey Milovidov
c4d5ca485e
Remove the usage of obsolete setting
2020-06-28 22:39:31 +03:00
Alexey Milovidov
1462a66d1e
Fix typos
2020-06-27 22:05:00 +03:00
Anton Popov
b2aa565a37
allow to turn on fsync on inserts, merges and fetches
2020-06-27 17:52:16 +03:00
Alexey Milovidov
46caa211d5
Better diagnostics of "Replica {} appears to be already active" message
2020-06-27 16:55:00 +03:00
alesapin
9710a67704
Fix style check
2020-06-26 15:27:12 +03:00
alesapin
6caf2e7a3f
Fix protocol check
2020-06-26 14:38:37 +03:00
alesapin
6f1824f0ea
Correct merge with master
2020-06-26 14:30:23 +03:00
alesapin
e9c47dc89c
Merge branch 'master' into CurtizJ-polymorphic-parts
2020-06-26 14:27:19 +03:00
Alexey Milovidov
8eed47857b
Fix estimation of the number of marks for various thresholds
2020-06-25 23:20:22 +03:00
Alexey Milovidov
8872417d00
Respect direct_io/mmap settings while reading secondary indices
2020-06-25 22:31:54 +03:00
Alexey Milovidov
5608f15749
Revive mmap IO
2020-06-25 22:15:41 +03:00
Anton Popov
f8f67a788e
allow to turn on fsync on inserts and merges
2020-06-25 19:55:45 +03:00
alesapin
63f8f89ca0
bump CI
2020-06-24 19:06:01 +03:00
alesapin
08f5ed6da3
Fix unitialized memory
2020-06-24 17:12:44 +03:00
Nikolai Kochetov
f7f16fdbf7
Merge pull request #11895 from ClickHouse/fix-nullable-prewhere-type-3
...
Fix nullable prewhere type 3
2020-06-24 14:32:08 +03:00
Anton Popov
8c3f496826
add test with alters and in-memory parts
2020-06-24 01:16:29 +03:00
Nikolai Kochetov
658a2d0dc0
Fix anotehr one nullable prewhere column.
2020-06-23 21:52:32 +03:00
alesapin
4185fe9975
Merge branch 'master' into atomic_metadata5
2020-06-23 11:13:05 +03:00
alesapin
292016e045
Add missed lock
2020-06-23 11:04:43 +03:00