Commit Graph

81 Commits

Author SHA1 Message Date
Vitaly Baranov
ad377d421f MergingSortedBlockInputStream class constructor, "max_block_size" parameter: change type UInt64 -> size_t. 2019-02-19 14:56:08 +03:00
Alexey Milovidov
58a6accee5 Updated test #4246 2019-02-10 19:55:12 +03:00
Léo Ercolanelli
e1d6017120 use sumMapWithOverflow in SummingSortedBlockInputStream 2019-01-25 20:36:18 +01:00
chertus
5896e45dac SummingMergeTree for Decimal128 [issue-3282] 2018-10-11 17:33:01 +03:00
chertus
0b35cdae69 refactoring: add some sugar in type checks [CLICKHOUSE-0002] 2018-09-07 17:37:26 +03:00
Alexey Milovidov
36db216abf Preparation for extra warnings [#CLICKHOUSE-2] 2018-08-10 07:02:56 +03:00
Alexey Zatelepin
1f2d4f90b9 allow empty parts after merge for Summing, Collapsing and VersionedCollapsing engines [#CLICKHOUSE-3879] 2018-08-06 19:54:00 +03:00
Constantin S. Pan
8539c1e119 Fix the column size difference bug in SummingMergeTree 2018-07-18 00:17:04 +03:00
Alexey Milovidov
c0373c1d45 Style; added comment #2566 2018-07-04 23:46:17 +03:00
Constantin S. Pan
cc4c4e0b49 Make the test more comprehensive and fix bugs in AggregateFunction implementation of SummingMergeTree 2018-06-26 11:28:42 +01:00
Constantin S. Pan
e94570d206 Add support for AggregateFunction in SummingMergeTree 2018-06-21 16:10:32 +01:00
Nikolai Kochetov
6ba8cb922c Fix usage of columns from header in SummingSortedBlockInputStream. #2273 2018-05-14 13:48:50 +03:00
Alexey Milovidov
3fd2773151 Improved code after introduction of method "getHeader" in every stream [#CLICKHOUSE-2] 2018-04-07 04:46:50 +03:00
Alexey Milovidov
af226d62f5 Fixed totally wrong code in SummingMergeTree in the case of complex maps [#CLICKHOUSE-2] 2018-04-06 21:09:20 +03:00
Alexey Milovidov
f66d2fb780 Allow to use FINAL even in case of single part #2086 2018-04-06 00:36:55 +03:00
Nikolai Kochetov
476d4b339c Immutable construction for columns 2018-03-20 22:45:10 +03:00
Alexey Milovidov
afe09d3138 Removed unused code [#CLICKHOUSE-2] 2018-02-18 06:46:18 +03:00
Nikolai Kochetov
66b94d481a added MultiversionMergeTree [#CLICKHOUSE-3479] 2018-02-13 00:13:50 +03:00
proller
d97b2edc7c Make separate libs Common/ZooKeeper and Common/ConfigProcessor (#1749)
* Make separate libs Common/ZooKeeper and Common/ConfigProcessor
renamed:    dbms/src/Common/StringUtils.h -> dbms/src/Common/StringUtils/StringUtils.h

* Fix space

* Fix data in system.build_options

* merge

* merge
2018-01-15 22:07:47 +03:00
Alexey Milovidov
bcfde7c6c0 Get rid of DataTypeNested, part 2 [#CLICKHOUSE-2]. 2017-12-25 21:58:39 +03:00
Alexey Milovidov
bf9c301784 Simplification of aggregate functions: compatibility details [#CLICKHOUSE-2]. 2017-12-21 05:08:25 +03:00
Alexey Milovidov
d497d010d7 Better semantic of sharing columns: development [#CLICKHOUSE-2]. 2017-12-17 08:21:04 +03:00
Alexey Milovidov
4148c6ce81 Better semantic of sharing columns: development [#CLICKHOUSE-2]. 2017-12-15 03:06:56 +03:00
Alexey Milovidov
8926af2ced Better semantic of sharing columns: development [#CLICKHOUSE-2]. 2017-12-15 03:01:59 +03:00
Alexey Milovidov
f3bb24a3bf Better semantic of sharing columns: development [#CLICKHOUSE-2]. 2017-12-14 04:43:19 +03:00
Alexey Milovidov
819287b697 Better semantic of sharing columns: development [#CLICKHOUSE-2]. 2017-12-13 04:27:53 +03:00
Alexey Milovidov
d2cfda4d9b Cleanup semantics of data types [#CLICKHOUSE-2]. 2017-12-09 19:17:37 +03:00
Alexey Milovidov
384d03d4ce Simplification of Nullable [#CLICKHOUSE-2] 2017-12-08 10:41:08 +03:00
Alexey Milovidov
741a6e0066 Simplification of Nullable [#CLICKHOUSE-2] 2017-12-08 03:50:25 +03:00
Alexey Milovidov
0ea105f639 Simplification of Nullable [#CLICKHOUSE-2] 2017-12-07 11:31:47 +03:00
Alexey Milovidov
431da20d99 Better [#CLICKHOUSE-2]. 2017-12-01 23:21:35 +03:00
Alexey Milovidov
06a65168ac SummingSortedBlockInputStream: miscellaneous [#CLICKHOUSE-2]. 2017-11-28 05:14:06 +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
Vitaliy Lyudvichenko
ab0aff8709 Fixed SummingMergeTree. [#CLICKHOUSE-2] 2017-11-16 23:48:39 +03:00
Marek Vavruša
c0458999f9 SummingSortedBlockInputStream: fix summing of multiple blocks
Previously the destination columns were only computed for the first
block, so that subsequently written blocks failed to write
aggregation results to corrent columns.
2017-10-25 22:21:59 +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
5c87a91aaf SummingSortedBlockInputStream: fix explicitly configured columns to sum
This fixes a variant of SummingMergeTree() in which
the columns to sum are explicitly configured.
Previously columns not in that list were ignored,
instead of writing last value.

This also fixes summation of invalid maps with
with only one key column and no value columns.

Modified test to work around compaction limitation
in which a zero-value column isn’t compacted
immediately if the inputs are non-zero but the
output is zero (+1 -1).
2017-10-25 22:21:59 +03:00
Marek Vavruša
41b0bea84c SummingSortedBlockInputStream: use a separate structure for MapDescription 2017-10-13 21:51:03 +03:00
Marek Vavruša
39a5ae97c9 SummingSortedBlockInputStream: added comments, destructor for state 2017-10-13 21:51:03 +03:00
alexey-milovidov
d561d8d701 Update SummingSortedBlockInputStream.cpp 2017-10-13 21:51:03 +03:00
alexey-milovidov
a2fa58a2e4 Update SummingSortedBlockInputStream.cpp 2017-10-13 21:51:03 +03:00
alexey-milovidov
fee883d7c5 Update SummingSortedBlockInputStream.cpp 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
Marek Vavruša
c09a43a7b2 DataStreams/SummingSortedBlockInputStream: use builtin aggregated functions
This replaces custom summation function implementations with an implementation
using built-in aggregation functions (sum and sumMap). The goal is to be able to
use specialized variants of aggregation functions, and to have a single
efficient implementation.
2017-10-13 21:51:03 +03:00
Alex Bocharov
55e1559733 Resolve conflict in SummingSortedBlockInputStream when moving FieldVisitorSum. 2017-09-18 18:46:10 +01:00
Alex Bocharov
1f70d0e163 Resolve conflict in SummingSortedBlockInputStream when moving FieldVisitorSum. 2017-09-18 18:43:47 +01:00
Alex Bocharov
6e74602e45 Aggregate function sumMap: use FieldVisitorSum instead of += operator. 2017-09-18 16:41:07 +01:00
Alexey Milovidov
86c46ad1bd Unification [#CLICKHOUSE-2]. 2017-09-15 15:16:12 +03:00
Alexey Milovidov
8b313ab99e Fixed warnings found by cppcheck [#CLICKHOUSE-3300]. 2017-09-08 00:04:48 +03:00
Nikolai Kochetov
75be0b81d8 removed typeid_cast from IColumn.h 2017-07-13 23:58:19 +03:00