Commit Graph

232 Commits

Author SHA1 Message Date
Alexey Milovidov
521b3aee84 Fixed error found by M.Filimonov (equality of array sizes are not checked in n-ary version of aggregate functions with -Array combinator) [#CLICKHOUSE-2]. 2017-12-19 00:44:18 +03:00
Alexey Milovidov
b83142ea62 Fixed error found by M.Filimonov (generic implementation of topK aggregate function was totally wrong) [#CLICKHOUSE-2]. 2017-12-19 00:12:15 +03:00
Alexey Milovidov
7c802ee3de Better semantic of sharing columns: development [#CLICKHOUSE-2]. 2017-12-18 05:37:08 +03:00
Alexey Milovidov
f95ddfce10 Make DataTypes totally immutable [#CLICKHOUSE-2]. 2017-12-18 04:11:48 +03:00
Alexey Milovidov
342f0e431a Better semantic of sharing columns: development [#CLICKHOUSE-2]. 2017-12-16 09:08:33 +03:00
Alexey Milovidov
7284a64740 Better semantic of sharing columns: development [#CLICKHOUSE-2]. 2017-12-16 00:32:25 +03:00
Alexey Milovidov
fb38ef9a8e Better semantic of sharing columns: development [#CLICKHOUSE-2]. 2017-12-14 06:56:56 +03:00
Alexey Milovidov
c3015bece3 Miscellaneous [#CLICKHOUSE-2]. 2017-12-11 01:44:04 +03:00
Alexey Milovidov
52088c9c07 Various fixes [#CLICKHOUSE-2] 2017-12-09 19:17:37 +03:00
Alexey Milovidov
7f6c48d5de Cleanup semantics of data types [#CLICKHOUSE-2]. 2017-12-09 19:17:37 +03:00
Alexey Milovidov
d2cfda4d9b Cleanup semantics of data types [#CLICKHOUSE-2]. 2017-12-09 19:17:37 +03:00
Alexey Milovidov
e2cd0272a4 Added support for aggregate functions of Nullable arguments in cases when they return non-Nullable result [#CLICKHOUSE-2]. 2017-12-08 12:07:52 +03:00
Alexey Milovidov
1b60106333 Simplification of Nullable [#CLICKHOUSE-2] 2017-12-08 09:58:48 +03:00
Alexey Milovidov
9962035ef4 Simplification of Nullable [#CLICKHOUSE-2] 2017-12-08 08:09:08 +03:00
Alexey Milovidov
8cc0bae1bc Simplification of Nullable [#CLICKHOUSE-2] 2017-12-08 02:07:41 +03:00
Alexey Milovidov
f5a06cee5b Simplification of Nullable [#CLICKHOUSE-2] 2017-12-07 11:47:13 +03:00
Alexey Milovidov
0ea105f639 Simplification of Nullable [#CLICKHOUSE-2] 2017-12-07 11:31:47 +03:00
Alexey Milovidov
d36d7170ed Better [#CLICKHOUSE-2]. 2017-12-02 06:42:21 +03:00
Alexey Milovidov
c748493a86 Better [#CLICKHOUSE-2]. 2017-12-02 05:47:12 +03:00
Alexey Milovidov
7196602e12 Better [#CLICKHOUSE-2]. 2017-12-02 00:51:50 +03:00
Alexey Milovidov
54e601019c Better [#CLICKHOUSE-2]. 2017-12-02 00:40:58 +03:00
Alexey Milovidov
acd78e4891 Better [#CLICKHOUSE-2]. 2017-12-02 00:13:25 +03:00
Alexey Milovidov
bdd25b15bd Better [#CLICKHOUSE-2]. 2017-12-01 22:34:51 +03:00
proller
6ff1968196 Compile and likk optimize and fixes 2017-11-24 21:08:01 +03:00
proller
0d3c4f4d67 Core/FieldVisitors.h -> Common/FieldVisitors.h
Core/Progress.h -> IO/Progress.h
    tests: sudo --non-interactive
    Fix freebsd link
2017-11-24 16:55:31 +03:00
proller
aa3dd03389 Split lib dbms to dbms + dbms_common_io 2017-11-17 22:19:49 +03:00
Иванов Евгений
e846d62410 Added support UUID type for distinct, uniq* functions and joins 2017-11-12 04:07:05 +03:00
Alexey Milovidov
c99f82538c Miscellaneous [#CLICKHOUSE-2]. 2017-10-28 08:43:20 +03:00
Marek Vavruša
e936c4d066 AggregateFunctionSum: implemented sumWithOverflow(x)
By default sum(x) promotes the result type to
largest possible integral type to avoid
arithmetic overflow when summing values from
smaller data types.

This is generally desirable behaviour, but it doesn’t
work with summing merge tree, as the result is
expected to be of same type as the input.
2017-10-25 22:21:59 +03:00
Marek Vavruša
fa098b469c AggregateFunctionSumMap: compact keys with zero value
This allows `sumMap(k, v)` to compact all keys
for which the values are all zero.
2017-10-25 22:21:59 +03:00
Marek Vavruša
927c0f7b74 dbms: Partially revert previous change
Instead of trying to convert long/unsigned long to Poco types, just
don't use them.
2017-10-13 23:46:10 -07:00
Marek Vavruša
8a0571af24 dbms: Better fix for missing unsigned long to Poco::UInt64 alias 2017-10-13 21:39:14 -07:00
Marek Vavruša
70543200be dbms: Fix build with clang after Poco update
In the current version of Poco, unsigned long no longer aliases to
UInt64 with LP64. The size_t aliases to unsigned long with clang,
so all the uses of size_t instead of UInt64 when interacting with
Poco interfaces are gone. I replaced uses with UInt64 where it makes
sense, and added an overloaded function for readVarUInt() to support size_t.
2017-10-13 18:26:24 -07:00
Alexey Milovidov
f42c6014ce Merge branch 'master' of github.com:yandex/ClickHouse 2017-10-14 02:06:11 +03:00
alexey-milovidov
6405620dfb Update AggregateFunctionSumMap.h 2017-10-13 21:51:03 +03:00
alexey-milovidov
a5955d527d Update AggregateFunctionSumMap.h 2017-10-13 21:51:03 +03:00
alexey-milovidov
4124465d0b Update AggregateFunctionSumMap.h 2017-10-13 21:51:03 +03:00
alexey-milovidov
725379e23d Update AggregateFunctionSumMap.h 2017-10-13 21:51:03 +03:00
alexey-milovidov
9eca78273f Update AggregateFunctionSumMap.h 2017-10-13 21:51:03 +03:00
alexey-milovidov
1984782321 Update AggregateFunctionSumMap.h 2017-10-13 21:51:03 +03:00
Marek Vavruša
2edf5492d0 AggregateFunctionSumMap: support variardic arguments, specialized keys
The function is rewritten to avoid allocations on every insert with
Field deserialising each array. The key type is now specialized,
so it can be accessed directly. The value type is variant type,
but only individual values are deserialised (which is cheap, since they're PODs).
The function also support summing of multiple columns by the same key.

The SummingSortedBlockInputStream uses the function in case of
Nested structure with one numeric key and many values to sum.
2017-10-13 21:51:03 +03:00
Alexey Milovidov
1405415f94 Miscellaneous [#CLICKHOUSE-3]. 2017-10-09 01:53:38 +03:00
alexey-milovidov
2dfb3fa463 Update AggregateFunctionTopK.h 2017-10-09 01:12:38 +03:00
alexey-milovidov
6e5ea5cc10 Update AggregateFunctionTopK.h 2017-10-09 01:12:38 +03:00
Marek Vavruša
28bb5e25cf AggregateFunctionTopK: read alphaMap for generic
* the alpha_map vector always (de)serialises
  the actual version (could empty sometimes)
* AggregateFunctionTopK generic variant deserialises
  it as well instead of ignoring it
* AggregateFunctionTopK generic variant clears the
  array before deserialising

refs #1283
2017-10-09 01:12:38 +03:00
Alex Bocharov
e99c969a1c Aggregate function sumMap: improve insertResultInto method and change return type to Tuple(Array(K), Array(V)). 2017-09-19 13:35:25 +01:00
Alex Bocharov
07cd6829d0 Aggregate function sumMap: fix compilation error regarding getHeaderFilePath after merge with master. 2017-09-18 19:37:44 +01:00
Alex Bocharov
1f70d0e163 Resolve conflict in SummingSortedBlockInputStream when moving FieldVisitorSum. 2017-09-18 18:43:47 +01:00
Alex Bocharov
c1feea159e Aggregate function sumMap: optimize serialize/deserialize. 2017-09-18 18:11:16 +01:00
Alex Bocharov
6e74602e45 Aggregate function sumMap: use FieldVisitorSum instead of += operator. 2017-09-18 16:41:07 +01:00