Commit Graph

8948 Commits

Author SHA1 Message Date
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
be2faa82ff DataStreams/test: test case for nested field with two arrays for summing 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
Marek Vavruša
c9be3719bc DataStreams/tests: add SummingSortedBlockInputStream test variant
This is basically useful for testing SummingSortedBlockInputStream
against the AggregatingBlockInputStream, which are used in the
{Summing,Aggregating}MergeTree table engines respectively.
2017-10-13 21:51:03 +03:00
alexey-milovidov
3a1ce26764 Update Context.cpp 2017-10-13 21:46:32 +03:00
proller
c0e9813b90 Fix access for inserting into temporary table (#CLICKHOUSE-3360) 2017-10-13 21:46:32 +03:00
proller
49f8080e52 Small debud improvement 2017-10-13 21:44:26 +03:00
Amos Bird
f30841d5ab Fix SummingMergeTree argument checking logic.
This patch fixes the Nested Column Name checking logic, which allows nested
columns be explicitly specified in SummingMergeTree engine.
2017-10-13 15:42:32 +03:00
Alexey Milovidov
03dd341804 Merge branch 'master' of github.com:yandex/ClickHouse 2017-10-13 04:24:14 +03:00
Vladimir Chebotarev
c05dfc201f dbms: Minor fix. [#METR-21516] 2017-10-13 04:14:57 +03:00
Alexey Milovidov
0ec218a853 Merge branch 'master' of github.com:yandex/ClickHouse 2017-10-13 04:09:51 +03:00
Vladimir Chebotarev
1e0241e262 dbms: CompressionSettingsSelector. [#METR-21516] 2017-10-13 04:08:23 +03:00
Vladimir Chebotarev
4e313f3732 dbms: Added compression level for ZSTD. [#METR-26742] 2017-10-13 04:08:23 +03:00
proller
1e961cc69d Fix complex queries with GLOBAL IN and UNION ALL (#CLICKHOUSE-3356) (#1339)
* TEST only: why initQueryAnalyzer ?

* Better tests

* missing file

* Missing file

* Add test

* Test fixes

* Fixed FREEZE PARTITION: using only active data parts; acquire snapshot of parts [#CLICKHOUSE-3369].

* Removed tcp_ssl_port by default [#CLICKHOUSE-2].

* Better tests

* comment

* clean

* REmove wrong code

* clean
2017-10-13 00:28:24 +03:00
Vitaliy Lyudvichenko
7bc58340b0 Fixed infinite recursion in expression analyzer. [#CLICKHOUSE-3125] 2017-10-13 00:27:25 +03:00
proller
fd85fffa0d Fix compile CallPointInPolygon on clang4 (Thanks to @vavrusa) (#1333)
* Fix compile with boost 1.65.1+ and clang 3.8 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=222439 )

* Fix compile CallPointInPolygon on clang4 (Thanks to @vavrusa)
2017-10-13 00:22:04 +03:00
Alexey Milovidov
d3d976a6fb Misc [#CLICKHOUSE-2]. 2017-10-12 23:45:55 +03:00
proller
b993667156 Try fix strange terminate (#1329)
* Tests: External: rename --use_http  => --no_http and fix

* Try fix strange terminate
2017-10-12 23:42:58 +03:00
Alexey Milovidov
3a6705af0f Improvement [#CLICKHOUSE-2]. 2017-10-12 23:34:01 +03:00
alexey-milovidov
b7c1076df2 Update ActionBlocker.h 2017-10-12 23:26:54 +03:00
alexey-milovidov
96b603a023 Update ActionBlocker.h 2017-10-12 23:26:54 +03:00
Vitaliy Lyudvichenko
62ea1133dd Disable part sendings and fetches before ALTER. [#CLICKHOUSE-3343] 2017-10-12 23:26:54 +03:00
KochetovNicolai
83925f1d5e Fix array writing (#1314)
* changed MergedBlockOutputStream [#CLICKHOUSE-3341]

* fix build [#CLICKHOUSE-3341]

* fix build [#CLICKHOUSE-3341]

* fix build [#CLICKHOUSE-3341]

* fix build [#CLICKHOUSE-3341]

* fix build [#CLICKHOUSE-3341]

* fix build [#CLICKHOUSE-3341]

* fix build [#CLICKHOUSE-3341]

* fix build [#CLICKHOUSE-3341]

* fix build [#CLICKHOUSE-3341]

* disabled checkNoMultidimensionalArrays [#CLICKHOUSE-3341]

* fix IMergedBlockOutputStream::writeDataImpl [#CLICKHOUSE-3341]

* fix IMergedBlockOutputStream::writeDataImpl [#CLICKHOUSE-3341]

* fix IMergedBlockOutputStream::writeDataImpl [#CLICKHOUSE-3341]

* fix IMergedBlockOutputStream::writeDataImpl [#CLICKHOUSE-3341]

* added test [#CLICKHOUSE-3341]

* fixed test [#CLICKHOUSE-3341]

* refactoring and comments [#CLICKHOUSE-3341]

* fix build [#CLICKHOUSE-3341]

* Update ColumnArray.h
2017-10-12 23:13:26 +03:00
proller
3de5e465d0 Split GatherUtils.cpp for faster compile (#1312)
* Split GatherUtils.cpp for faster compile

* remove GatherUtils.cpp
2017-10-12 22:58:39 +03:00
Alexey Milovidov
b93f9ba686 Merge branch 'master' of github.com:yandex/ClickHouse 2017-10-12 22:56:55 +03:00
Alexey Milovidov
e57e79a5ff Proper fix for the issue: better exception message [#CLICKHOUSE-2]. 2017-10-12 22:56:47 +03:00
proller
26c44d5993 Tests: Use new possibly redefined values from env (in 2 tests) 2017-10-12 22:54:56 +03:00
proller
f8548156a0 Improve tests: allow redefine some values (clickhouse path, ports, ...) 2017-10-12 22:48:39 +03:00
proller
cbc81a6a9f Received signal Segmentation fault (#1300) (#1302)
* Received signal Segmentation fault (#1300)

* Add test
2017-10-12 22:46:40 +03:00
Alexey Milovidov
54eb2bbb0a Miscellaneous changes after merge [#CLICKHOUSE-2]. 2017-10-12 22:40:42 +03:00
alexey-milovidov
c2647e0c60 Update ExecutableDictionarySource.cpp 2017-10-12 22:36:27 +03:00
alexey-milovidov
beb93bb9d6 Update ExecutableDictionarySource.cpp 2017-10-12 22:36:27 +03:00
alexey-milovidov
44e6ecfe78 Update ShellCommand.cpp 2017-10-12 22:36:27 +03:00
proller
4969038865 test me 2017-10-12 22:36:27 +03:00
proller
1505ad6bac Executable dictionaries: fail if program returns non zero exit code (#CLICKHOUSE-3171) 2017-10-12 22:36:27 +03:00
Vitaliy Lyudvichenko
18af75a4f1 Add metrics for RWLockFIFO. [#CLICKHOUSE-3246] 2017-10-12 22:32:31 +03:00
alexey-milovidov
c1285c7d6b Update MergeTreeDataMerger.cpp 2017-10-12 22:28:24 +03:00
Vitaliy Lyudvichenko
cabf6d7799 Add better logging if OPTIMIZE cannot be executed. [#CLICKHOUSE-2] 2017-10-12 22:28:24 +03:00
Vitaliy Lyudvichenko
a65e8d9ffc Less noisy logging. [#CLICKHOSUE-2] 2017-10-12 22:28:24 +03:00
Vitaliy Lyudvichenko
c0716da718 Resolves #1273. Exception safe users update. [#CLICKHOUSE-3] 2017-10-12 22:28:24 +03:00
Alexey Milovidov
d880762e0a Removed tcp_ssl_port by default [#CLICKHOUSE-2]. 2017-10-12 21:30:45 +03:00
Alexey Milovidov
d468473d62 Fixed FREEZE PARTITION: using only active data parts; acquire snapshot of parts [#CLICKHOUSE-3369]. 2017-10-12 21:21:17 +03:00
proller
f42ae974d1 Remove wrong test 2017-10-11 21:22:28 +03:00
Alexey Milovidov
4814eb7072 Whitespaces [#CLICKHOUSE-2]. 2017-10-11 17:41:49 +03:00
Marek Vavruša
7fc08389c9 Storages: added Kafka table engine (read-only)
Added a new table engine backed by Apache Kafka,
it allows near real-time ingestion or ETL with
exactly-once semantics.

It doesn’t store any data on disk, so data must
be materialized into a physical table to allow
random access.

Currently it only supports reading, no insertion.
2017-10-10 08:33:00 -07:00
Marek Vavruša
4fb570fa5e IStorage: allow notification on dependency change
This allows sending notifications to supported
table engines when their dependencies change.
For example, a table can be notified when a
MATERIALIZED VIEW is attached to it.

This is a building block for building pipelines.
2017-10-10 08:33:00 -07:00
Marek Vavruša
011658bb02 contrib: include librdkafka as submodule 2017-10-10 08:33:00 -07:00
Marek Vavruša
cbf9aaca95 dbms: fixed minor mistakes with build
* Use std::abs instead of abs() to properly support floats
2017-10-10 08:32:42 -07:00
proller
47798f0b8a Fix PerformanceTest runs 2017-10-10 16:32:31 +03:00
proller
975e8575c7 Add test (failed on version 1.1.54292) (#1328)
* Tests: External: rename --use_http  => --no_http and fix

* Add test (failed on version 1.1.54292)
2017-10-09 20:22:15 +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
robot-metrika-test
6628b5d308 Auto version update to [54299] 2017-10-09 00:39:00 +03:00
proller
19042816c4 Fix compile with boost 1.65.1+ and clang 3.8 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=222439 ) (#1325) 2017-10-06 19:26:32 +03:00
proller
704fee8750 Tests: External: rename --use_http => --no_http and fix (#1324) 2017-10-06 18:58:24 +03:00
Nikolai Kochetov
61bef2adf1 added ExternalLoader [#CLICKHOUSE-3305] 2017-10-06 13:31:06 +03:00
robot-metrika-test
95ebdd53c0 Auto version update to [54297] 2017-10-05 12:22:56 +03:00
proller
d498e8e152 Try fix work with not connected sockets (#1320)
* Lazy fd_to_replica_state_idx init; Fix work with not connected sockets

* Style

* const
2017-10-04 18:18:05 +03:00
Vitaliy Lyudvichenko
723f36ec6d Fixed integration tests after introduction of 'clickhouse server' commands. [#CLICKHOUSE-2] 2017-10-04 18:15:40 +03:00
alexey-milovidov
96d1ab89da Update Server.cpp 2017-10-03 22:12:44 +03:00
proller
88c88c3f4a Fix 2017-10-03 22:12:44 +03:00
proller
7feb94357b use enum class 2017-10-03 22:12:44 +03:00
proller
a4191614ed fixes 2017-10-03 22:12:44 +03:00
proller
add13f233e requested changes 2017-10-03 22:12:44 +03:00
proller
b289e0027d fix 2017-10-03 22:12:44 +03:00
proller
dc50ea2788 fix 2017-10-03 22:12:44 +03:00
proller
2db34a606a clean 2017-10-03 22:12:44 +03:00
proller
b7780aa6c4 Better ports 2017-10-03 22:12:44 +03:00
proller
2467530583 Works! 2017-10-03 22:12:44 +03:00
proller
ebb4a6a0ed Start ssl'ing (#CLICKHOUSE-3032) 2017-10-03 22:12:44 +03:00
proller
097357799d Tests: --random option; set some env variables for .sh tests 2017-10-03 21:31:32 +03:00
Vitaliy Lyudvichenko
f08545b9b8 Stop tests execution on KeyboardInterrupt. [#CLICKHOUSE-2] 2017-10-03 19:21:25 +03:00
alexey-milovidov
3382a730b8 Merge pull request #1315 from yandex/libunwind-fix
Libunwind fix
2017-10-03 17:06:37 +03:00
Vitaliy Lyudvichenko
97277ed691 Return 411 code in case of empty body without Content-Length head. [#CLICKHOUSE-3333] 2017-09-30 14:06:50 +03:00
robot-metrika-test
5fdede6d85 Auto version update to [54294] 2017-09-29 01:08:47 +03:00
proller
8f3a244d26 Fix internal compiler with some new clang packages 2017-09-27 17:52:24 +03:00
proller
d469e5eddd Fix no-shard tests 2017-09-26 23:55:22 +03:00
proller
c46ce859a1 Fix tests on clean storage 2017-09-26 23:37:03 +03:00
proller
5250650f65 Fixes (#1286)
* Revert "Simplification [#CLICKHOUSE-2]."

This reverts commit 98ad6a5db3.

* Fix error: comparison of unsigned expression < 0 is always false

* Fix float division by zero

* Fix float division by zero

* Disable PointInPolygon function if compiling with old clang

* Fix warning:
dbms/src/Functions/FunctionsCoding.h:336:21: error: comparison of constant -1 with expression of type 'const char' is always true [-Werror,-Wtautological-constant-out-of-range-compare]
            if (num != -1)

* Fix
2017-09-26 23:29:34 +03:00
Alexey Zatelepin
6e57272052 don't use partition value as a prefix for FREEZE PARTITION [#CLICKHOUSE-3000] 2017-09-26 20:40:02 +03:00
Alexey Zatelepin
bfd87add7d improve getExremes(), fix for ColumnNullable [#CLICKHOUSE-2] 2017-09-26 20:40:02 +03:00
Alexey Zatelepin
f1a8b9bfa1 add comments [#CLICKHOUSE-3000] 2017-09-26 20:40:02 +03:00
Alexey Zatelepin
61f0b32757 forbid ALTER of partition key columns for now [#CLICKHOUSE-3000] 2017-09-26 20:40:02 +03:00
Alexey Zatelepin
4160bcfdf5 add custom partitioning tests [#CLICKHOUSE-3000] 2017-09-26 20:40:02 +03:00
Alexey Zatelepin
1be62b567e safeguards to protect against distinct partition values with the same partition_id [#CLICKHOUSE-3000] 2017-09-26 20:40:02 +03:00
Alexey Zatelepin
728a23f60e allow creation of custom-partitioned tables with experimental syntax [#CLICKHOUSE-3000] 2017-09-26 20:40:02 +03:00
Alexey Zatelepin
a10ba0cd91 serialize partition key in Replicated tables metadata [#CLICKHOUSE-3000] 2017-09-26 20:40:02 +03:00
Alexey Zatelepin
909b46de0f add MergeTreeDataFormatVersion constant [#CLICKHOUSE-3000] 2017-09-26 20:40:02 +03:00
Alexey Zatelepin
ceddecbc10 implement missing getExtremes() functions [#CLICKHOUSE-3000] 2017-09-26 20:40:02 +03:00
Alexey Zatelepin
68cb592277 allow arbitrary partition literals in ALTER PARTITION queries [#CLICKHOUSE-3000] 2017-09-26 20:40:02 +03:00
Alexey Zatelepin
f0995f2741 partition serialization into id and text [#CLICKHOUSE-3000] 2017-09-26 20:40:02 +03:00
Alexey Zatelepin
25bb444d5a absence of partitioning works [#CLICKHOUSE-3000] 2017-09-26 20:40:02 +03:00
Alexey Zatelepin
71ebf67f2e encapsulate partition and minmax_idx load/store code [#CLICKHOUSE-3000] 2017-09-26 20:40:02 +03:00
Alexey Zatelepin
6906921932 load partition and minmax index from disk [#CLICKHOUSE-3000] 2017-09-26 20:40:02 +03:00
Alexey Zatelepin
e9f93028b8 serialize partition and minmax index values [#CLICKHOUSE-3000] 2017-09-26 20:40:02 +03:00
Alexey Zatelepin
2f80c150db save MergeTree data format version and parse part names depending on it [#CLICKHOUSE-3000] 2017-09-26 20:40:02 +03:00
Nikolai Kochetov
937d3f3883 added test [#CLICKHOUSE-3339] 2017-09-26 20:34:48 +03:00
Nikolai Kochetov
1592691e47 fixed defalut Nullable implementation for Const(Nullable) columns 2017-09-26 20:34:48 +03:00