Commit Graph

835 Commits

Author SHA1 Message Date
Azat Khuzhin
808d1a0215 Reimplement preallocate for hashed/sparse_hashed dictionaries
It was initially implemented in #15454, but was reverted in #21948 (due
to higher memory usage).

This implementation differs from the initial, since now there is
separate attribute to enable preallocation, before it was done
automatically, but this has problems with duplicates in the source.

Plus this implementation does not uses dynamic_cast, instead it extends
IDictionarySource interface.
2021-05-10 07:41:48 +03:00
Azat Khuzhin
efcde4c84f Decrease log level in IPAddressDictionary for duplicated records
After RELOAD DICTIONARY had been changed to capture the logs (by
attaching query's thread group) the 01852_dictionary_found_rate_long
fails because of this warning.
But it does not looks like it should be a warning, so change to trace.
2021-05-10 07:41:48 +03:00
kssenii
993823bcc4 Merge branch 'master' of https://github.com/ClickHouse/ClickHouse into pg-ch-replica 2021-05-09 21:26:41 +00:00
Alexey Milovidov
18b7e38994 Remove redundant template 2021-05-10 00:26:34 +03:00
Alexey Milovidov
11ba22b43f UUID in dictionaries 2021-05-10 00:02:08 +03:00
FArthur-cmd
cf4dc8a395 refactor style 2021-05-09 22:02:37 +03:00
FArthur-cmd
6363a5dd96 use path to define compression type 2021-05-09 21:58:08 +03:00
alexey-milovidov
1ea637d996
Merge pull request #23970 from ClickHouse/pvs-studio-fixes-6
PVS-Studio fixes, part 6
2021-05-09 21:45:19 +03:00
Alexey Milovidov
1fece08673 Fix gcc build 2021-05-09 20:19:07 +03:00
Alexey Milovidov
9753ddc8a0 Merge branch 'master' of github.com:yandex/ClickHouse into normalize-bigint 2021-05-09 18:54:29 +03:00
kssenii
d6582f5fe5 Table schema for dict 2021-05-09 15:42:54 +00:00
FArthur-cmd
bd519075b7 adding checking url in HTTPSource 2021-05-09 14:27:11 +03:00
Maksim Kita
0b67f593e0
Merge pull request #23963 from azat/dict-hit_rate-nan
Use 0 over nan for hit_rate in case of 0 queries to the cache dictionary
2021-05-08 22:38:21 +03:00
Alexey Milovidov
d057bcf42c Fix error (amend) 2021-05-08 22:28:55 +03:00
Alexey Milovidov
883c826d3f Minor code modification 2021-05-08 22:17:46 +03:00
Alexey Milovidov
fa5205b4c7 Get rid of ugly notation 2021-05-08 22:05:08 +03:00
Alexey Milovidov
49160ae1ba Big integers and UUID in dictionaries 2021-05-08 22:01:59 +03:00
Maksim Kita
0a2ea38cc9
Merge pull request #23916 from azat/dict-found_rate
Measure found rate for dictionaries
2021-05-08 19:23:52 +03:00
Alexey Milovidov
ad88819ee4 Fix a bunch of warnings from PVS-Studio 2021-05-08 19:13:10 +03:00
Alexey Milovidov
3025f9e141 More fixes for PVS-Studio 2021-05-08 19:12:49 +03:00
Alexey Milovidov
bdc372cb9a Fix bad code (found by PVS-Studio) 2021-05-08 19:11:40 +03:00
Alexey Milovidov
604daa9581 Fix a bunch of warnings from PVS-Studio 2021-05-08 19:09:17 +03:00
Alexey Milovidov
45dea86395 More fixes for PVS-Studio 2021-05-08 18:35:09 +03:00
kssenii
5c24f0943c Merge branch 'master' of https://github.com/ClickHouse/ClickHouse into pg-ch-replica 2021-05-08 14:54:44 +00:00
Azat Khuzhin
21f08a1aa9 Use 0 over nan for hit_rate in case of 0 queries to the cache dictionary 2021-05-08 17:51:22 +03:00
kssenii
266567e04c Merge branch 'master' of github.com:ClickHouse/ClickHouse into poco-file-to-std-fs 2021-05-08 17:49:05 +03:00
Alexey Milovidov
aa727e941d Fix bad code (found by PVS-Studio) 2021-05-08 17:21:36 +03:00
Azat Khuzhin
763597001b Count found keys for RangeHashedDictionary 2021-05-08 17:09:01 +03:00
Azat Khuzhin
d115a6842d Count found keys for PolygonDictionary 2021-05-08 17:09:01 +03:00
Azat Khuzhin
97dc954add Count found keys for IPAddressDictionary 2021-05-08 17:09:01 +03:00
Azat Khuzhin
d07581d82d Count found keys for CacheDictionary 2021-05-08 17:09:01 +03:00
Azat Khuzhin
b767d9faac Count found keys for DirectDictionary (plus utils changes) 2021-05-08 17:09:01 +03:00
Azat Khuzhin
a6a1bf2847 Count found keys for FlatDictionary 2021-05-08 17:09:01 +03:00
Azat Khuzhin
c80a06def3 Count found keys for HashedDictionary (plus utils changes for descendants) 2021-05-08 17:09:01 +03:00
Azat Khuzhin
e08389b2d2 Add interface for rate of found elements in the dictionaries
- IDictionary abstraction
- skeleton implementation into each dictionary
- system.dictionaries.found_rate
- documentation changes
2021-05-08 17:09:01 +03:00
Alexey Milovidov
47a4c101b9 Merge branch 'master' into normalize-bigint 2021-05-08 16:41:15 +03:00
Maksim Kita
80dbb7ca4f
Merge pull request #23948 from azat/dict-range-min-max-check
Check MIN/MAX attributes in the list of dictionary attributes
2021-05-08 16:07:26 +03:00
FArthur-cmd
acb09f01d4 fixing details in code style and moving tests 2021-05-08 12:46:50 +03:00
Maksim Kita
b617c57ce8
Merge pull request #23929 from azat/dict-cache-source-dups-fix
Fix keys metrics accounting for CACHE() dictionary with duplicates in the source
2021-05-08 11:56:20 +03:00
FArthur-cmd
13a6e03849 solving style-check problems 2021-05-08 10:15:14 +03:00
Azat Khuzhin
8e9655d513 Check MIN/MAX attributes in the list of dictionary attributes
This way there will be proper exception instead of std::out_of_range
2021-05-08 08:59:47 +03:00
kssenii
c3eab60b8b Merge branch 'master' of github.com:ClickHouse/ClickHouse into poco-file-to-std-fs 2021-05-08 02:40:17 +03:00
FArthur-cmd
4ea9851e99 fixing dictionary http source by adding wrapper 2021-05-08 02:20:30 +03:00
Kseniia Sumarokova
e6ac136c32
Merge pull request #23909 from kssenii/postgres-fixes
Fix postgres connections issue
2021-05-08 00:07:21 +03:00
Alexey Milovidov
c404e6db2f Merge branch 'master' of github.com:yandex/ClickHouse into normalize-bigint 2021-05-07 18:25:12 +03:00
Azat Khuzhin
e7027e0529 Fix keys metrics accounting for CACHE() dictionary with duplicates in the source 2021-05-06 21:03:20 +03:00
kssenii
b96f047db7 Fix clang tidy 2021-05-06 07:02:13 +00:00
kssenii
8900e93bd8 New impl 2021-05-06 00:52:59 +00:00
Alexey Milovidov
962a7113f6 Remove code that I do not like (crazy templates) 2021-05-04 20:26:09 +03:00
Alexey Milovidov
6ca37b9512 Untangle UUID 2021-05-04 01:59:38 +03:00
Alexey Milovidov
02ce9cc725 Untangle UUID 2021-05-04 01:46:51 +03:00
kssenii
ee06936596 Merge branch 'master' of github.com:ClickHouse/ClickHouse into poco-file-to-std-fs 2021-05-01 17:24:31 +03:00
Maksim Kita
57e199be33
Update HashedDictionary.cpp 2021-05-01 16:26:24 +03:00
Maksim Kita
e0b74f2f85
Merge branch 'master' into hashed-dictionary-complex-key-update-field-initial-load-fix 2021-05-01 15:25:42 +03:00
kssenii
2887ce1f69 Temporary rollback 2021-05-01 14:23:13 +03:00
Maksim Kita
a399ee88e1 Fixed test 2021-05-01 13:58:24 +03:00
Maksim Kita
66903e4b0c Flat, Hashed dictionary include update field bytes into bytes_allocated 2021-05-01 01:23:22 +03:00
kssenii
7643d84095 Merge branch 'master' of https://github.com/ClickHouse/ClickHouse into pg-ch-replica 2021-04-30 22:02:51 +00:00
Maksim Kita
3deb8cd410 HashedDictionary complex key update field initial load fix 2021-05-01 01:01:41 +03:00
kssenii
378195a6d8 Update Dictionaries/* 2021-04-30 23:35:44 +03:00
Maksim Kita
318c4bb80d Add examples folder filter to ya.make.in 2021-04-30 11:25:52 +03:00
Nikita Mikhaylov
9f55424250 move to examples everywhere 2021-04-27 01:51:42 +03:00
Alexey Milovidov
4ff812db7f Maybe better support for paths with whitespaces 2021-04-24 22:47:52 +03:00
Kseniia Sumarokova
b43656bf89
Merge pull request #22697 from TCeason/feature/add_MaterializeMySQL_sync_bytes_judgment
Add MySQL read history data bytes judgment
2021-04-20 10:26:42 +03:00
TCeason
472c131420 Add MySQL read history data bytes judgment 2021-04-19 10:51:50 +08:00
kssenii
88b50621d4 Merge branch 'master' of https://github.com/ClickHouse/ClickHouse into pg-ch-replica 2021-04-18 14:40:37 +00:00
Maksim Kita
b26dfcd514 Simple key dictionary primary key wrong order fix 2021-04-18 15:19:44 +03:00
kssenii
5dc2dfa437 Fix 2021-04-17 09:00:58 +00:00
Maksim Kita
d381e59791
Merge pull request #23114 from kitaisreal/fix-arcadia-build-s3
Fix arcadia build S3
2021-04-16 23:35:10 +03:00
ruct
303813c1d8 Maybe 2021-04-16 16:07:56 +03:00
ruct
adbd2d65c2 Try 2021-04-16 16:07:56 +03:00
Maksim Kita
1797a67cf8
Merge pull request #22925 from kitaisreal/flat_dictionary_performance_test_fix
Dictionaries updated performance tests
2021-04-16 10:46:41 +03:00
Maksim Kita
eceed68d62 Fix arcadia build S3 2021-04-15 12:31:09 +03:00
Maksim Kita
2c3abcaad1 Updated test 2021-04-14 16:49:38 +03:00
Maksim Kita
4425bec599
Merge pull request #22764 from kitaisreal/connection-pool
Moved BorrowedObjectPool to common
2021-04-14 11:23:56 +03:00
Maksim Kita
dcf41db1ae
Merge pull request #23048 from kitaisreal/library-dictionary-bridge-library-interface
LibraryDictionary bridge library interface
2021-04-14 11:23:29 +03:00
Maksim Kita
0cfe018fd4 Moved BorrowedObjectPool to common 2021-04-13 23:15:22 +03:00
Maksim Kita
616d7d19f8 LibraryDictionary bridge library interface 2021-04-13 22:53:36 +03:00
Maksim Kita
20d5d550c4
Merge pull request #22960 from kitaisreal/dictionary-added-decimal256-attribute-type-support
Dictionary added Decimal256 attribute type support
2021-04-11 13:07:00 +03:00
Maksim Kita
8dbf721e52
Merge pull request #22961 from kitaisreal/dictionaries-standardize-exceptions
Dictionaries standardize exceptions
2021-04-11 12:05:59 +03:00
kssenii
c1adece94f Merge branch 'master' of https://github.com/ClickHouse/ClickHouse into pg-ch-replica 2021-04-11 06:00:18 +00: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
Maksim Kita
b43a709fec Dictionaries standardize exceptions 2021-04-10 21:48:36 +03:00
Maksim Kita
7df43891c1 Dictionary added Decimal256 attribute type support 2021-04-10 19:53:21 +03:00
kssenii
8bdcac4f06 Merge branch 'master' of https://github.com/ClickHouse/ClickHouse into pg-ch-replica 2021-04-09 13:12:15 +00:00
Azat Khuzhin
93c9a02480 Fix bytes_allocated for sparse_hashed dictionaries 2021-04-08 23:29:29 +03:00
kssenii
b544c9fe9a Add default template 2021-04-08 13:08:51 +00:00
kssenii
8586565ce9 Move connection-related filed to Core/PostgreSQL 2021-04-08 12:43:02 +00:00
kssenii
9fa21a6272 Merge branch 'master' of https://github.com/ClickHouse/ClickHouse into pg-ch-replica 2021-04-08 12:18:54 +00:00
alexey-milovidov
ed367855d5
Merge pull request #22822 from kitaisreal/file-dictionary-source-fix-absolute-path
FileDictionarySource fix absolute file path
2021-04-08 10:34:07 +03:00
Maksim Kita
ef7571c226
Merge pull request #22521 from kitaisreal/dictionaries-update-field-fix
FlatDictionary, HashedDictionary update_field optimizations
2021-04-07 23:29:53 +03:00
Maksim Kita
ff04292ac8
Update FileDictionarySource.cpp 2021-04-07 21:42:09 +03:00
Maksim Kita
f7cc15fdcd FileDictionarySource fix absolute file path 2021-04-07 21:38:24 +03:00
Maksim Kita
7baafcb567
Merge pull request #22630 from kitaisreal/direct-dictionary-dict-get-multiple-columns-optimization
DirectDictionary dictGet multiple columns optimization
2021-04-07 10:29:42 +03:00
alesapin
86a843bb51
Merge pull request #21509 from kssenii/library-bridge
clickhouse-library-bridge for library dictionary source
2021-04-06 12:26:08 +03:00
kssenii
dc42d5189d Merge branch 'master' of https://github.com/ClickHouse/ClickHouse into replicas-shards-for-mysql-and-postgres 2021-04-05 15:36:35 +00:00
kssenii
9dba529494 Merge branch 'master' of https://github.com/ClickHouse/ClickHouse into library-bridge 2021-04-05 13:14:51 +00:00
Maksim Kita
d9cc03bc34 Fixed tests 2021-04-05 11:29:05 +03:00
Maksim Kita
deb35c5f4e DirectDictionary dictGet multiple columns optimization 2021-04-05 01:26:26 +03:00
alexey-milovidov
b1e7624b3f
Merge pull request #22589 from ClickHouse/fix-comments
Fix comments
2021-04-05 00:22:27 +03:00
Maksim Kita
027ca2484e FlatDictionary added layout options initial_array_size, max_array_size 2021-04-04 16:30:48 +03:00
Maksim Kita
41ef9291f1 Fixed tests 2021-04-04 16:30:48 +03:00
Maksim Kita
ff86c21e65 Dictionary update field fix 2021-04-04 16:30:48 +03:00
Maksim Kita
0bfb429c42
Merge pull request #22479 from kitaisreal/clickhouse-dictionary-source-loop-fix
ClickHouseDictionarySource loop fix
2021-04-04 13:29:17 +03:00
Alexey Milovidov
54caa61af5 Fix comments 2021-04-04 12:33:06 +03:00
Maksim Kita
b9e8ff137a Fixed build 2021-04-04 01:19:57 +03:00
Denis Glazachev
36b03b2740 Compilation fix 2021-04-03 22:17:51 +04:00
kssenii
13d1f17d3e Merge branch 'master' of https://github.com/ClickHouse/ClickHouse into replicas-shards-for-mysql-and-postgres 2021-04-03 08:00:09 +00:00
Maksim Kita
07d5a1ec21 ClickHouseDictionarySource loop fix 2021-04-03 00:40:07 +03:00
kssenii
2de6b99f84 Better names 2021-04-02 16:12:14 +00:00
kssenii
99f0b08ac3 Merge branch 'master' of https://github.com/ClickHouse/ClickHouse into replicas-shards-for-mysql-and-postgres 2021-04-01 13:48:33 +00:00
Maksim Kita
42ae39f78f Updated tests 2021-04-01 12:13:36 +03:00
Maksim Kita
2ad29a541a Updated interfaces 2021-04-01 00:12:21 +03:00
Maksim Kita
55984e849c
Merge branch 'master' into hierarchy-dictionaries-updated 2021-03-31 15:55:07 +03:00
Maksim Kita
9772d30754 Fixed performance tests 2021-03-31 13:21:30 +03:00
alexey-milovidov
d7c15c6b9a
Merge pull request #22289 from traceon/fix-apple-clang-build
Fix native macOS build for ALL_BUILD (Xcode/AppleClang)
2021-03-30 23:55:13 +03:00
kssenii
ce05087b1b Merge branch 'master' of https://github.com/ClickHouse/ClickHouse into replicas-shards-for-mysql-and-postgres 2021-03-30 17:27:10 +00:00
Vladimir
5ae9f2c5bb
Merge pull request #21329 from depressed-pho/isIPAddressContainedIn 2021-03-30 13:26:49 +03:00
alexey-milovidov
4e4d33e93b
Merge branch 'master' into fix-apple-clang-build 2021-03-30 13:15:07 +03:00
Maksim Kita
8a65e8b06e Fix arcadia build 2021-03-29 23:00:40 +03:00
Maksim Kita
3071d45ade Fixed tests 2021-03-29 16:41:03 +03:00
Anton Popov
ea82e7725f
Merge pull request #21562 from CurtizJ/serialization-refactoring-4
Refactoring of data types serialization
2021-03-29 16:36:44 +03:00
Denis Glazachev
7fd7a7114f Remove unused local variable definition 2021-03-29 14:47:56 +04:00
vdimir
24aa25d7dc
Reuse some functions for IPAddressContainedIn 2021-03-29 12:04:05 +03:00
kssenii
22b515fbc9 Add namespace, simplify names 2021-03-27 20:14:02 +00:00
kssenii
f40c582e7a Replicas/shards for postgres storage 2021-03-27 20:11:48 +00:00
kssenii
95e8a8b9f0 Support shards 2021-03-27 14:40:07 +00:00
kssenii
ae868208c2 Use pool with failover in mysql storage 2021-03-27 14:39:45 +00:00
Maksim Kita
4f298d54b9 Added perf tests 2021-03-27 17:00:00 +03:00
Maksim Kita
ca6146b040 Fixed build 2021-03-27 13:42:46 +03:00
Maksim Kita
0faab7ae35 Fixed PODArray insertFromItself 2021-03-27 00:49:16 +03:00
Maksim Kita
3f273ef983 Updated hash dictionary nullable attribute implementation 2021-03-26 21:01:56 +03:00
Maksim Kita
5fd575977a Fixed typos 2021-03-26 18:42:32 +03:00
Maksim Kita
2cac8d13cc Updated tests and documentation 2021-03-26 18:42:32 +03:00
Maksim Kita
13417b5b40 Added documentation 2021-03-26 18:42:32 +03:00
Maksim Kita
eb0039ed03 Fixed tests 2021-03-26 18:42:32 +03:00
Maksim Kita
21d28a37aa Fixed build 2021-03-26 18:42:32 +03:00
Maksim Kita
3b10043eb2 Fix style check 2021-03-26 18:42:32 +03:00
Maksim Kita
720e2e0501 Updated dictGetDescendants, dictGetChildren implementation 2021-03-26 18:42:32 +03:00
Maksim Kita
566541528d Update function naming 2021-03-26 18:42:32 +03:00
Maksim Kita
bbd180caf3 Added functions dictGetChildren, dictGetDescendants 2021-03-26 18:42:32 +03:00
Maksim Kita
9f2f0d1095 Refactored hierarchy dictionaries interface 2021-03-26 18:42:32 +03:00
PHO
1868ca34b8 Fix build on GCC where std::isinf() cannot be called without the namespace prefix 2021-03-26 12:11:22 +09:00
Maksim Kita
bbe1960eea
Merge pull request #21573 from kitaisreal/updated-cache-dictionary-storage
Added specialized CacheDictionaryStorage
2021-03-25 21:29:01 +03:00
Anton Popov
6a15431be7 Merge remote-tracking branch 'upstream/master' into HEAD 2021-03-25 15:57:35 +03:00
kssenii
6d41f7356b Better way to pass attributes 2021-03-24 19:32:31 +00:00
kssenii
d9326cc229 Merge branch 'master' of https://github.com/ClickHouse/ClickHouse into library-bridge 2021-03-24 18:28:55 +00:00
kssenii
7da36be9b6 Better 2021-03-24 09:23:29 +00:00
kssenii
c008f054ae Pass sample_block only once 2021-03-24 08:41:42 +00:00
kssenii
1ef3c1f780 Use binary format for params 2021-03-24 07:55:21 +00:00