Alexander Kuzmenkov
e1898ca89a
Make the quadratic Arena::allocContinue less bad.
...
Scenarios that use Arena::allocContinue may waste quadratically many
memory and perform quadratically many copying, when the memory range
size reaches Arena's linear allocation threshold. To alleviate this,
make sure that the next memory chunk allocated by allocContinue is at
least linear_growth_threshold bytes bigger than the previous one, so
that we don't reallocate and copy that often.
2019-09-18 15:04:56 +03:00
Alexander Kuzmenkov
cacf6d3282
Key memory management for compound hash tables.
...
Some aggregation methods initially emplace a temporary StringRef key
into a hash table. Then, if the key was not seen before, they make a
persistent copy of the key and update the hash table with it. This
approach is not suitable for compound hash tables, because the logic of
when the persistent key is needed is more complex, and is contained
within the hash table itself.
In this commit, we switch to managing key memory with callbacks passed
to the hash table, that allow it to request a persistent copy of the key
if it is needed. This should be more appropriate for compound hash
tables.
This commit prepares for StringHashMap PR #5417 .
2019-09-06 18:05:28 +03:00
proller
77bd2624ea
Build fixes ( #6016 )
...
* Fix building without submodules
* Fix more gcc9 warnings
* was wrong!
../dbms/src/IO/WriteBufferAIO.cpp:277:54: error: result of comparison 'ssize_t' (aka 'long') > 9223372036854775807 is always false [-Werror,-Wtautological-type-limit-compare]
if ((static_cast<ssize_t>(flush_buffer.offset()) > std::numeric_limits<off_t>::max()) ||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* mimalloc off MI_OVERRIDE
* Fix freebsd build
* Fix shared build
* Fix build in gcc9
* Fix split build
* fix
* fix
* fix
* fix
* clean
* zstd
* Update CMakeLists.txt
* Update Defines.h
* Try fix -Wsign-compare
* Freebsd fix
* Add missing libs
* Fix double-conversion include for copy-headers
* Fix zlib link
* Fix includes for arcadia
* Fix includes for arcadia
* Fix includes for arcadia
* Freebsd fix
* Arcadia fixes
* Update QueryProfiler.cpp
* Freebsd fix
* clean
* 19.11: Fixes for arcadia porting (#6223 )
* fix glibc-compatibility
* M_LIBRARY fix
* wip
* Fix
* Fix arm build
* unwind fix
* Update CMakeLists.txt
2019-08-04 03:19:03 +03:00
Alexander Kuzmenkov
f6ee2ea4e4
Add asan integration to arenas.
2019-07-02 20:48:00 +03:00
Danila Kutenin
37d70ac558
MarkCache and UncompressedCache use different allocator to catch segfaults more reliable
2019-04-06 18:27:39 +03:00
Alexey Milovidov
c858c144ef
Fixed UB #3926
2018-12-26 02:39:40 +03:00
Alexey Milovidov
cfc1e207ab
Fixed UB #3926
2018-12-26 02:27:52 +03:00
Alexey Milovidov
b82d532db0
Removed incorrect code [#CLICKHOUSE-3939]
2018-09-06 05:30:58 +03:00
Alexey Milovidov
1de3f144f6
Padding chunks in Arena in attempt to improve performance [#CLICKHOUSE-2]
2018-09-03 00:28:25 +03:00
Alexey Milovidov
26587dd2bb
Addition to prev. revision [#CLICKHOUSE-2]
2018-09-02 08:23:20 +03:00
Alexey Milovidov
03038c75c4
Addition to prev. revision [#CLICKHOUSE-2]
2018-09-02 08:07:49 +03:00
Alexey Milovidov
77ccc8c65c
Addition to prev. revision [#CLICKHOUSE-2]
2018-09-02 07:58:55 +03:00
Alexey Milovidov
7d77d001f5
Full support for alignment of aggregate states #2808
2018-09-01 07:25:03 +03:00
Alexey Milovidov
8f54125884
Minor modifications #2808
2018-09-01 06:17:43 +03:00
chenxing.xc
4acc441179
fix aligned states review comments
2018-08-05 18:12:06 +08:00
chenxing.xc
90d8290d28
aligned aggregate state
2018-08-05 16:45:15 +08:00
Alexey Milovidov
9996e15458
Allow to use values of AggregateFunction data type in groupArray aggregate function [#CLICKHOUSE-3485].
2017-12-06 06:10:32 +03:00
Alexey Milovidov
5bb326de61
Allow to use values of AggregateFunction data type in groupArray aggregate function (incomplete) [#CLICKHOUSE-3485].
2017-12-06 00:25:01 +03:00
Vitaliy Lyudvichenko
c2cc8d6147
Add several groupArray implementations. [#CLICKHOUSE-3084]
2017-07-25 20:04:10 +03:00
Alexey Milovidov
83ed2a794b
Fixed -ForEach combinator of aggregate functions [#CLICKHOUSE-2952].
2017-04-16 06:38:37 +03:00
Alexey Milovidov
310736cd7e
Moved headers and sources to same place [#CLICKHOUSE-3].
2017-04-01 12:22:42 +03:00