Commit Graph

238 Commits

Author SHA1 Message Date
Alexey Milovidov
86eb4d2d06 Renamed Singleton to avoid conflicts with Arcadia* codebase [#DEVTOOLS-3343].
* - "Arcadia" is the name of Yandex's monorepo.
2017-07-10 07:34:14 +03:00
Guillaume Tassery
aeeb81fadf Rename field in UInt128 2017-07-04 18:10:36 +02:00
Marek Vavruša
e189c39056 SpaceSaving: internal storage for StringRef{}
The SpaceSaving has now specialised storage for
some keys, which only copies keys that
are to be retained in the structure, not all.

Most of the PODs implement this interface empty,
so there shouldn’t be any extra cost.
2017-06-26 21:16:13 +03:00
proller
4db8d09de9 Reorganize includes. part 1 (#921)
* Make libunwind optional. Allow use custom libcctz

* fix

* Fix

* fix

* Update BaseDaemon.cpp

* Update CMakeLists.txt

* Reorganize includes. part 1

* Update dbms_include.cmake

* Reorganize includes. part 2

* Reorganize includes. part 3

* dbms/src/Common/ThreadPool -> libs/libcommon

* Reorganize includes. part 4

* Fix print_include_directories

* Update thread_creation_latency.cpp

* Update StringRef.h
2017-06-23 23:22:35 +03:00
Alexey Milovidov
6df5d556e5 Changed namespace [#DEVTOOLS-3381]. 2017-06-21 11:35:38 +03:00
Alexey Milovidov
604de2bfeb Better [#DEVTOOLS-3381]. 2017-06-21 04:24:05 +03:00
Георгий Кондратьев
47161f8425 Specify all link dependencies [#DEVTOOLS-3381]
Tested with:

export LDFLAGS="-Wl,--no-undefined"
cmake -DUSE_STATIC_LIBRARIES=OFF -DBUILD_SHARED_LIBS=ON
2017-06-20 00:53:12 +03:00
Alexey Milovidov
ee49c37fa6 Whitespaces [#CLICKHOUSE-2]. 2017-06-16 19:23:23 +03:00
Alexey Milovidov
45c76803a9 Moved table functions to separate library; fixed errors; improved testability [#CLICKHOUSE-31]. 2017-06-10 12:04:31 +03:00
Alexey Milovidov
9c5ddce06d Get rid of .hpp files [#CLICKHOUSE-2]. 2017-06-06 20:18:32 +03:00
f1yegor
0bf5182020 translate comments: etc 2017-05-28 16:32:59 +02:00
Marek Vavruša
95d926ec14 AggregateFunctionTopK: smaller initial table size
By default start with 2^4 elements
2017-05-13 03:58:05 +04:00
Alexey Milovidov
cfc4c987c5 Added optional length parameter to aggregate function groupArrayInsertAt [#CLICKHOUSE-3003]. 2017-05-12 23:57:24 +03:00
Alexey Milovidov
1d090bd4e2 AggregateFunctionGroupArrayInsertAt: fixed error [#CLICKHOUSE-3003]. 2017-05-12 23:05:19 +03:00
Alexey Milovidov
9ad1d5676a Miscellaneous [#CLICKHOUSE-2]. 2017-05-12 01:21:06 +03:00
Marek Vavruša
45bd332460 AggregateFunctionTopK: fix memory usage, performance
* allow separate table key / hash key, and use
  std::string / StringRef for generic variant as
  it has built-in storage and StringRef is supported
  by the hash table, this avoids infinitely
  growing arena with serialised keys
* use power-of-2 size for alpha vector for faster
  binning without using modulo
* use custom grower and allocator for SpaceSaving
  to start with smaller tables
* store computed hash in counter for faster
  reinsertion of smallest element
2017-05-11 18:52:49 +04:00
Alexey Milovidov
2a57cfdbc2 Aggregate function groupArrayInsertAt: development [#CLICKHOUSE-2]. 2017-05-10 04:42:15 -04:00
Alexey Milovidov
21c5ee0f1d Aggregate function groupArrayInsertAt: development [#CLICKHOUSE-2]. 2017-05-10 04:41:25 -04:00
Alexey Milovidov
19d0d47c8a Aggregate function groupArrayInsertAt: development [#CLICKHOUSE-2]. 2017-05-10 04:40:14 -04:00
Alexey Milovidov
21af887758 Added aggregate function 'groupArrayInsertAt' (for Graphite) [#CLICKHOUSE-2]. 2017-05-10 01:46:23 -04:00
Alexey Milovidov
b9a7917a8d Tiny modifications [#CLICKHOUSE-2]. 2017-05-10 01:43:27 -04:00
Alexey Milovidov
542eba7e17 Fixed translation errors [#CLICKHOUSE-3]. 2017-05-10 00:30:33 -04:00
proller
fac00792f9 Move most AggregateFunctions to separate lib, use AggregateFunctionFactory as singletone, rename lib storages_system->clickhouse_storages_system 2017-05-05 16:59:18 -07:00
Alexey Milovidov
d3e6321967 AggregateFunctionTopK: minor modifications [#CLICKHOUSE-2]. 2017-05-05 16:36:02 -07:00
proller
9a937591e5 Try fix freebsd 11-STABLE OCbuild 2017-05-04 18:25:34 +03:00
Marek Vavruša
5f1e65b252 AggregateFunctions: implemented topK(n)
This implements a new function for approximate
computation of the most frequent entries using
Filtered Space Saving with a merge step adapted
from Parallel Space Saving paper.

It works better for cases where GROUP BY x
is impractical due to high cardinality of x,
such as top IP addresses or top search queries.
2017-05-03 23:09:52 -07:00
Vitaliy Lyudvichenko
6d93d9cefb Combinator -MergeState now returns AggregateFunction(nested_func). [#CLICKHOUSE-2891] 2017-05-03 20:59:42 -07:00
Alexey Milovidov
563e21247e Style [#CLICKHOUSE-2]. 2017-04-20 21:35:39 +03:00
Alexey Milovidov
b491ee7f63 Style [#CLICKHOUSE-2]. 2017-04-20 19:41:03 +03:00
f1yegor
0b243a8b01 translate comments 2017-04-16 23:17:32 +03:00
Alexey Milovidov
41e97787e3 Less dependencies [#CLICKHOUSE-2]. 2017-04-16 08:40:17 +03:00
Alexey Milovidov
6b5e6104a9 ForEach combinator of aggregate functions: little better [#CLICKHOUSE-2952]. 2017-04-16 07:35:21 +03:00
Alexey Milovidov
d9793bf5fe Fixed -ForEach combinator of aggregate functions [#CLICKHOUSE-2952]. 2017-04-16 07:16:22 +03:00
Alexey Milovidov
ef3557950c Less dependencies [#CLICKHOUSE-2952]. 2017-04-16 07:03:14 +03:00
Alexey Milovidov
83ed2a794b Fixed -ForEach combinator of aggregate functions [#CLICKHOUSE-2952]. 2017-04-16 06:38:37 +03:00
Maxim Fridental
99dc3ea016 Implement ForEach modifier for aggregate functions. 2017-04-16 02:49:11 +03:00
Alexey Milovidov
5b29658aae MemoryTracker: more convenient for investigations [#CLICKHOUSE-2935]. 2017-04-11 00:43:59 +03:00
Alexey Milovidov
a0b9bf5e97 Moved code to cpp [#CLICKHOUSE-2]. 2017-04-08 04:32:05 +03:00
Alexey Milovidov
310736cd7e Moved headers and sources to same place [#CLICKHOUSE-3]. 2017-04-01 12:22:42 +03:00
Alexey Milovidov
137ad95929 Changed tabs to spaces in code [#CLICKHOUSE-3]. 2017-04-01 11:35:09 +03:00
Alexey Milovidov
14c8003081 Normalized formatting [#CLICKHOUSE-3].
Apply in a loop:
find dbms -name '*.h' -or -name '*.cpp' | xargs grep -l -P '^(\t*)    ' | xargs sed -i -r -e 's/^(\t*)    /\1\t/'
2017-03-26 04:28:07 +03:00
f1yegor
bc0d9a2cae translate comments 2017-03-25 21:12:56 +01:00
alexey-milovidov
6d5bfc8c6f Refactoring of numeric DataTypes (#581)
* Better code [#CLICKHOUSE-2].

* Addition to prev. revision [#CLICKHOUSE-2].

* Addition to prev. revision [#CLICKHOUSE-2].

* Addition to prev. revision [#CLICKHOUSE-2].
2017-03-12 14:13:45 +04:00
Alexey Milovidov
17e3a4ff1f Implemented aggregate function 'count' with Nullable arguments to count number of not-NULL values [#CLICKHOUSE-2833]. 2017-02-10 12:02:10 +03:00
alexey-milovidov
0d5c0b8350 Proper behaviour of aggregate functions of nullable arguments (#473)
* Proper behaviour of aggregate functions of Nullable arguments [#CLICKHOUSE-2832].

* Proper behaviour of aggregate functions of Nullable arguments [#CLICKHOUSE-2832].
2017-02-10 09:03:42 +04:00
Vitaliy Lyudvichenko
d2e594cdf7 Fixed groupUniqArray for Date and DateTime types. [#METR-23869] 2016-12-16 13:59:16 +03:00
Alexey Arno
924402f33e dbms: Server: merged from master [#METR-19266] 2016-10-19 18:00:56 +03:00
Vitaliy Lyudvichenko
80f037b12e Added arena parameter into merge() method of aggregation function states. [#METR-22071] 2016-09-26 15:42:40 +03:00
Vitaliy Lyudvichenko
946a037f71 Added requested changes. [#METR-22071] 2016-09-23 14:24:48 +03:00
Vitaliy Lyudvichenko
37ed6a3038 Fixed dynamic complation errors. [#METR-22071] 2016-09-21 20:13:32 +03:00
Vitaliy Lyudvichenko
451a4b1d67 Added new Arena parameter to add() method of IAggregateFunction. [#METR-22071] 2016-09-21 20:13:32 +03:00
Vitaliy Lyudvichenko
0a93de0727 Leave only HashSet implementation. [#METR-22071] 2016-09-21 20:13:32 +03:00
Vitaliy Lyudvichenko
924075621e Added three experimental implementations for groupUniqArray() aggregate function. [#METR-22071] 2016-09-21 20:13:32 +03:00
Alexey Arno
f4e77aaf97 dbms: Better code for functions processing. Code cleanup. [#METR-19266] 2016-08-15 14:14:29 +03:00
Alexey Arno
531ff3d5ac dbms: Merged with master [#METR-19266] 2016-08-05 18:44:19 +03:00
Alexey Milovidov
55ed2904f4 Allowed for certain aggregate functions to have case insensitive names for compatibility [#METR-22087]. 2016-07-14 08:22:09 +03:00
Alexey Arno
13b4a5bd4a dbms: aggregate function support [#METR-19266] 2016-07-12 16:02:52 +03:00
Alexey Milovidov
b408afa74f Added 'anyHeavy' aggregate function [#METR-21691]. 2016-06-26 15:48:04 +03:00
Alexey Milovidov
6d33959183 Using std::shared_ptr for functions and AST [#METR-21503]. 2016-05-28 19:28:52 +03:00
Alexey Milovidov
8c4abcdd43 Using std::shared_ptr for functions and AST [#METR-21503]. 2016-05-28 18:42:22 +03:00
Alexey Milovidov
be394f2c84 Using std::shared_ptr for data types [#METR-21503]. 2016-05-28 10:48:40 +03:00
Alexey Milovidov
18016c4221 Merge 2016-03-12 07:01:03 +03:00
Alexey Milovidov
a6df232eac Fixing warnings on clang [#METR-2807]. 2016-03-07 09:23:57 +03:00
Alexey Milovidov
4aa0a85ca2 Fixing warning on clang [#METR-2807]. 2016-03-07 09:00:25 +03:00
Alexey Milovidov
aea710d430 Removed function groupUniqArray from Array argument [#METR-20150]. 2016-02-20 22:04:35 +03:00
Alexey Milovidov
c062fc1ce0 dbms: cutting dependency [#METR-2944]. 2016-01-12 05:21:15 +03:00
Alexey Milovidov
59ea7c4542 dbms: added comment [#METR-19278]. 2015-12-23 09:59:53 +03:00
Alexey Milovidov
b95b48ee62 dbms: aggregate function debug: better check for double free [#METR-19278]. 2015-12-23 09:59:53 +03:00
Alexey Milovidov
1c54336078 dbms: added aggregate function 'debug' to better reproduce the problem [#METR-19278]. 2015-12-23 09:59:53 +03:00
Alexey Milovidov
2c67747a0d dbms: implemented quantilesTDigest and quantilesTDigestWeighted aggregate functions [#METR-19024]. 2015-11-21 17:04:43 +03:00
Alexey Milovidov
31c09b4d2d dbms: added weighted variants of t-digest [#METR-19024]. 2015-11-21 16:24:51 +03:00
Alexey Milovidov
57e8a8fdbb dbms: added t-digest algorithm [#METR-19024]. 2015-11-21 15:47:41 +03:00
Alexey Milovidov
49580a9048 dbms: added aggregate function quantileExactWeighted and companions [#METR-18778]. 2015-11-15 11:31:08 +03:00
Alexey Milovidov
8732e7a3f1 dbms: improved performance of aggregate function groupArray [#METR-18778]. 2015-11-15 07:54:56 +03:00
Alexey Milovidov
4c87ec04b4 dbms: quantileExact: initial implementation [#METR-18778]. 2015-11-15 06:11:24 +03:00
Alexey Milovidov
75bde11360 dbms: implemented TODO [#METR-18564]. 2015-10-29 07:13:18 +03:00
Alexey Milovidov
bb7d8f3ed5 dbms: implemented exact version of uniq of variadic number of arguments; improved performance of non-exact version [#METR-18564]. 2015-10-29 07:02:22 +03:00
Alexey Milovidov
5862506095 dbms: added variadic variant of aggregate function uniqUpTo [#METR-18564]. 2015-10-29 06:41:09 +03:00
Alexey Milovidov
45065d53aa dbms: aggregate functions uniq with variable number of arguments: initial implementation [#METR-18564]. 2015-10-29 05:13:37 +03:00
Alexey Milovidov
270652a55b dbms: preparation [#METR-18564]. 2015-10-29 04:57:22 +03:00
Alexey Milovidov
bb283e6602 dbms: added support for different numeric types in function has [#METR-18382]. 2015-10-12 10:05:54 +03:00
Alexey Arno
e86428b4ac Merge 2015-10-08 17:23:23 +03:00
Alexey Milovidov
f725116826 dbms: fixed error [#METR-18249] [#METR-17924]. 2015-10-01 04:35:18 +03:00
Alexey Arno
19bc3181f2 Merge 2015-09-24 15:40:36 +03:00
Alexey Arno
f93141355b Merge 2015-08-31 16:53:16 +03:00
Andrey Mironov
acb10923de add aggregate function sequenceCount [#METR-17427] 2015-08-21 18:58:31 +03:00
Alexey Milovidov
99d64cbc7f Merge 2015-07-26 15:06:29 +03:00
Alexey Arno
3314579909 Merge 2015-07-20 20:09:43 +03:00
Alexey Milovidov
890ee9c0fa dbms: removed aggregate function 'debug' [#METR-2944]. 2015-06-06 02:19:15 +03:00
Alexey Milovidov
68cfd47195 dbms: added missing aggregate function synonim [#METR-16266]. 2015-05-30 00:33:18 +03:00
Alexey Arno
5f0a1cab74 dbms: Server: Feature implementation. [#METR-16188] 2015-05-18 01:33:17 +03:00
Alexey Arno
bf6aecc826 dbms: Server: Feature implementation. [#METR-16188] 2015-05-17 20:46:21 +03:00
Alexey Arno
b0abc2dc2a dbms: Server: Feature implementation. [#METR-16188] 2015-05-15 18:01:05 +03:00
Andrey Mironov
be67de26b5 dbms: sequenceMatch aggregate function draft, temporal conditions currently ignored [#METR-16058] 2015-05-07 17:04:27 +03:00
Alexey Arno
5463d74a84 Merge 2015-04-24 18:49:30 +03:00
Alexey Milovidov
ba5a54ef7a dbms: temporarily added aggregate function 'debug' [#METR-15530]. 2015-03-19 06:58:23 +03:00
Alexey Milovidov
eea281236d dbms: improved performance of aggregate functions argMin, argMax (about 5 times) [#METR-2944]. 2015-03-01 04:06:49 +03:00
Alexey Milovidov
03b1849bac dbms: added aggregate functions quantileTimingWeighted, quantilesTimingWeighted, medianTimingWeighted [#METR-15181]. 2015-02-27 20:38:21 +03:00
Alexey Milovidov
2520c2e610 dbms: added small set optimization for aggregate function uniqHLL12 [#METR-2944]. 2015-02-22 10:23:37 +03:00
Andrey Mironov
57abed9773 dbms: check argument count for *If aggregate functions. [#METR-15164] 2015-02-19 19:27:19 +03:00
Andrey Mironov
eaa8a75a63 dbms: prohibit narrow-width integral types for determinator of quantile(s)Deterministic. [#METR-13199] 2014-11-21 17:07:25 +03:00
Andrey Mironov
d0971956e0 dbms: add quantile[s]Deterministic, rename stdext:: to ext:: [#METR-13199] 2014-11-21 16:34:37 +03:00
Alexey Milovidov
4a3d9082f7 dbms: improved performance of aggregate functions min, max, any, anyLast [#METR-2944]. 2014-08-18 09:45:41 +04:00
Alexey Milovidov
1a40e1942c dbms: added aggregate function uniqUpTo [#METR-12017]. 2014-07-25 00:20:36 +04:00
Alexey Milovidov
108a7850a5 dbms: improved performance on short queries [#METR-11571]. 2014-06-26 04:58:14 +04:00
Sergey Fedorov
214e8aa9ea Merge 2014-05-21 17:30:42 +04:00
Alexey Milovidov
a4fc77a8cb dbms: removed useless code, fixed error [#METR-10719]. 2014-05-16 05:25:20 +04:00
Alexey Milovidov
63cff6a5a4 Improvement [#METR-2807]. 2014-04-08 11:58:53 +04:00
Sergey Fedorov
535fadf131 dbms: fixed checking aggregate function names with "Array" suffix [METR-10366] 2014-03-28 16:19:59 +04:00
Sergey Fedorov
e735568723 dbms: aggregate function array [METR-10366] 2014-03-27 16:48:09 +04:00
Alexey Milovidov
0fe0e21c4b dbms: added aggregate function uniqExact [#METR-2944]. 2014-02-02 09:08:06 +00:00
Sergey Fedorov
ff61e2cbc8 dbms: support for argMinIf and argMaxIf functions [#METR-9001] 2013-10-28 16:13:19 +00:00
Sergey Fedorov
053eb9adcb dbms: Rename file, Code Style fixes, Rename class [#METR-9001] 2013-10-28 14:15:56 +00:00
Sergey Fedorov
8fd6963212 My latest changes.
REVIEW:new
2013-10-25 14:56:47 +00:00
Alexey Milovidov
9a515d7082 dbms: AggregateFunctionIf: improvement [#CONV-8713]. 2013-09-14 22:56:11 +00:00
Alexey Milovidov
ced5216c45 dbms: added AggregateFunctionIf adaptor [#CONV-8713]. 2013-09-11 00:55:31 +00:00
Vyacheslav Alipov
2230e9ec44 fixed AggregateFunctionFactory [#CONV-8544] 2013-08-21 15:33:45 +00:00
Vyacheslav Alipov
602bea808d added uniq functions with HLL support [#CONV-8544] 2013-08-21 13:26:42 +00:00
Alexey Milovidov
43d9edeca1 dbms: added aggregate function groupUniqArray [#CONV-8330]. 2013-07-28 20:53:31 +00:00
Alexey Milovidov
59a743f0ef dbms: removed useless code [#CONV-2944]. 2013-07-28 01:36:17 +00:00
Alexey Milovidov
6356f41105 dbms: added aggregate functions quantileTiming, quantilesTiming [#CONV-8223]. 2013-07-27 19:57:45 +00:00
Alexey Milovidov
6e34a0331d dbms: tiny improvement [#CONV-2944]. 2013-06-30 10:28:17 +00:00
Alexey Milovidov
79afdbc193 dbms: removed useless code [#CONV-2944]. 2013-06-30 10:14:50 +00:00
Alexey Milovidov
1c730617e7 dbms: added aggregate function quantiles [#CONV-2944]. 2013-06-29 23:49:34 +00:00
Alexey Milovidov
0931ac57ae dbms: improved performance [#CONV-2944]. 2013-06-25 14:16:16 +00:00
Alexey Milovidov
c6a638de01 dbms: added aggregate function sumIf [#CONV-7862]. 2013-06-14 16:17:02 +00:00
Alexey Milovidov
20a164a2d1 dbms: added aggregate functions uniqIf, avgIf [#CONV-7862]. 2013-06-13 20:30:47 +00:00
Michael Kolupaev
796df96cbc clickhouse: Expression refactoring: development [#CONV-7444]. 2013-05-24 10:49:19 +00:00
Alexey Milovidov
67b0719f26 Global stat: dbms: added aggregate function 'uniqState'; added compatibility with ███████████ [#CONV-7315]. 2013-04-26 18:57:08 +00:00
Alexey Milovidov
494b212f3a dbms: removed VarUInt and VarInt data types [#CONV-2944]. 2012-12-14 20:24:26 +00:00
Alexey Milovidov
e30260d9fa dbms: added parametric aggregate functions; added aggregate function 'quantile' [#CONV-2944]. 2012-10-29 02:58:52 +00:00
Michael Kolupaev
6d64009db2 clickhouse: added median aggregate function 2012-10-23 10:58:53 +00:00
Alexey Milovidov
312b007e6f dbms: development [#CONV-2944]. 2012-08-26 12:18:50 +00:00
Alexey Milovidov
1d4d01a76c dbms: development [#CONV-2944]. 2012-08-23 19:38:45 +00:00
Alexey Milovidov
c875e87446 dbms: development [#CONV-2944]. 2012-07-21 05:07:14 +00:00
Alexey Milovidov
cff1b81b34 dbms: development [#CONV-2944]. 2011-09-26 04:00:46 +00:00
Alexey Milovidov
13d0b57ca3 dbms: development [#CONV-2944]. 2011-09-25 05:07:47 +00:00
Alexey Milovidov
5c7ea6af1f dbms: development [#CONV-2944]. 2011-09-19 03:40:05 +00:00