Commit Graph

56 Commits

Author SHA1 Message Date
Alexey Milovidov
9e7813686e Merge branch 'master' into hierarchical-dictionaries-performance 2017-03-25 20:53:41 +03:00
Alexey Milovidov
5546f7f75b Normalized formatting [#CLICKHOUSE-3]. 2017-03-09 07:26:17 +03:00
Alexey Milovidov
fbb0a3e734 Working on performance of hierarchical external dictionaries [#METR-23747]. 2016-12-14 00:15:27 +03:00
Alexey Milovidov
dd1636abdd Improved performance of 'flat' and 'hashed' hierarchical external dictionaries [#METR-23747]. 2016-12-13 00:37:57 +03:00
Yuri Dyachenko
06032a6737 use 'std::vector<bool> loaded_ids' for FlatDictionary::has() 2016-08-25 23:09:58 +03:00
Alexey Milovidov
6c861fe798 Style [#METR-2807]. 2016-08-07 12:09:18 +03:00
Alexey Milovidov
3ecfca51ba Splitted dictionaries to separate translation units [#METR-21527]. 2016-06-08 00:07:44 +03:00
Alexey Milovidov
3a668313b8 Added implicit conversion to covering type for functions dictGetT [#METR-21527]. 2016-06-07 22:11:04 +03:00
Alexey Milovidov
f7c09d58a5 Attempt to improve performance [#METR-20892]. 2016-04-15 03:33:21 +03:00
Alexey Milovidov
9c9ef5534c PaddedPODArray: development [#METR-20892]. 2016-04-15 00:26:06 +03:00
Alexey Milovidov
c062fc1ce0 dbms: cutting dependency [#METR-2944]. 2016-01-12 05:21:15 +03:00
Andrey Mironov
aece1d21f8 dbms: improve dictGet functions for constant defaults [#METR-17328], [#METR-18520] 2015-11-20 18:53:23 +03:00
Andrey Mironov
6c8c0e03cb dbms: slightly refactor most dictionaries, add dictHas function for all dictionaries supporting dictGet*OrDefault. [#METR-17328], [#METR-18520] 2015-11-19 16:15:02 +03:00
Andrey Mironov
8feafa0da2 dbms: add dictGet*OrDefault for all new dictionaries [#METR-17382] 2015-11-18 16:31:29 +03:00
Andrey Mironov
078cc8dbb4 dbms: significantly simplify ComplexKeyDictionary code and length [#METR-17328]
Add commentary about dictGet*OrDefault to FlatDictionary.
2015-11-13 17:01:30 +03:00
Andrey Mironov
32614f5206 dbms: dictGetOrDefault for all types, explicit StringRef(string) [#METR-18520] 2015-11-10 12:29:30 +03:00
Andrey Mironov
f8e5fed856 dbms: dictGetStringOrDefault, other functions on the way [#METR-18520] 2015-11-06 17:54:04 +03:00
Alexey Milovidov
fefd3791f1 Moved files [#METR-17973]. 2015-10-05 03:33:43 +03:00
Andrey Mironov
9d406de8c9 dbms: add dictionary name to messages of most exceptions occurring during their creation [#METR-17487] 2015-08-19 16:19:37 +03:00
Alexey Milovidov
18ed0b2829 dbms: external dictionaries: fixed errors [#METR-17508]. 2015-08-12 07:21:10 +03:00
Alexey Milovidov
f39ad593f5 dbms: added optional property 'require_nonempty' for external dictionaries [#METR-17508]. 2015-08-12 00:32:27 +03:00
Andrey Mironov
8ea2990e7d dbms: ExternalDictionaries: remove most invididual getters 2015-07-10 17:43:49 +03:00
Andrey Mironov
4fca014e1b dbms: reload initially failed dictionaries with exponential backoff [#METR-16702] 2015-06-09 19:18:49 +03:00
Andrey Mironov
095fd54ae8 dbms: correctly handle injective dictGet* functions during ExpressionAnalyzer's optimizations. 2015-05-13 19:11:24 +03:00
Andrey Mironov
2c58c9ea50 dbms: add system.dictionaries.query_count field [#METR-
15569]
2015-05-08 15:31:34 +03:00
Alexey Milovidov
114b3de689 dbms: cut dependencies [#METR-2944]. 2015-04-16 09:12:35 +03:00
Andrey Mironov
6b605d10bb dbms: correct load factor for FlatDictionary (based on capacity, not size). [#METR-15569] 2015-03-25 13:10:35 +03:00
Andrey Mironov
e25783995c dbms: system.dictionaries: hit-rate, element count and load-factor. [#METR-15569] 2015-03-24 20:04:03 +03:00
Andrey Mironov
ca6f081dea dbms: system.dictionaries: provide attribute names and types[#METR-13298] 2015-03-24 20:04:03 +03:00
Andrey Mironov
f38d552844 dbms: simplify return value of IDictionary::getTypeName [#METR-13298] 2015-03-24 15:26:19 +03:00
Andrey Mironov
51e1ad0591 dbms: show bytes_allocated in system.dictionaries for all types of dictionaries. [#METR-13298] 2015-03-24 15:12:48 +03:00
Andrey Mironov
4b259dfc01 dbms: IDictionary::getBytesAllocated 2015-03-24 14:30:16 +03:00
Andrey Mironov
f321a422b7 dbms: FlatDictionary: fix off-by-one error on resize. [#METR-13298] 2015-03-23 17:30:43 +03:00
Andrey Mironov
17da36aba2 dbms: allow using Date and DateTime with dictionaries. [#METR-13298] 2015-03-20 18:45:36 +03:00
Andrey Mironov
a032d7affb dbms: dictionary sources: escape column and table names; adjust max connections; MySQL support for CacheDictionary [#METR-13298] 2015-03-04 12:36:36 +03:00
Andrey Mironov
f479939760 dbms: less macro code [#METR-13298] 2015-03-02 16:16:26 +03:00
Andrey Mironov
3f34c733dd dbms: refactor FlatDictionary to use tuple and less macro-code[#METR-13298] 2015-02-27 16:12:30 +03:00
Andrey Mironov
20eb5013a4 dbms: cache dictionary revamp [#METR-13298] 2015-02-26 17:53:45 +03:00
Andrey Mironov
e175883dd3 dbms: remove redundant checks in FunctionDictIsIn. [#METR-13298] 2015-02-20 13:57:38 +03:00
Andrey Mironov
cf8a927150 dbms: invert the way multiple values are acquired from the dictionary [#METR-13298] 2015-02-19 18:28:24 +03:00
Alexey Milovidov
a9eb28c07d Using std::make_unique [#METR-2807]. 2015-02-11 00:10:58 +03:00
Andrey Mironov
168e1cd98d dbms: post-review corrections [#METR-13298]
add dummy CacheDictionary (could not commit without it)
2015-02-10 17:50:52 +03:00
Andrey Mironov
345afb6059 dbms: store dictionary lifetime in dictionaries [#METR-13298] 2015-01-30 18:18:13 +03:00
Andrey Mironov
fb333b16d7 dbms: incapsulate dictionary source data and allow cloning [#METR-13298]; add cloning for dictionaries 2015-01-30 17:12:09 +03:00
Andrey Mironov
647cd1b0eb dbms: check dictionary source modification prior to reloading [#METR-13298]
Mysql and Clickhouse sources are not currently checked and will always say they are modified.
Reload periods are not currently checked.
2015-01-29 18:47:21 +03:00
Andrey Mironov
a66af0668e dbms: devirtualize dictionary access [#METR-13298] 2015-01-29 17:46:15 +03:00
Andrey Mironov
4bbdb2320e dbms: add HashedDictionary [#METR-13298] 2015-01-29 16:53:48 +03:00
Andrey Mironov
95bb52b8e5 dbms: use PODArray with FlatDictionary [#METR-13298]
remove IDictionarySource::reset
2015-01-28 19:23:52 +03:00
Andrey Mironov
e982b5c92d dbms: add all integral and floating point types to IDictionary. [#METR-13298] 2015-01-28 18:02:05 +03:00
Andrey Mironov
f4e7d2d4f5 dbms: add dictGetHierarchy and dictIsIn. [#METR-13298] 2015-01-28 16:20:20 +03:00