Commit Graph

9091 Commits

Author SHA1 Message Date
Alexey Zatelepin
6ada6d9aa5 remove dead code [#CLICKHOUSE-2] 2017-10-26 07:53:52 +03:00
Alexey Zatelepin
01c39dcf1c fix CREATE TABLE bugs and idiosyncrasies: [#CLICKHOUSE-3000]
* fix segfault on ATTACH MATERIALIZED VIEW
* allow only TEMPORARY TABLEs (not databases or views)
* forbid choosing ENGINE for TEMPORARY tables
* fix segfault on CREATE TABLE t1 AS t2 where t2 is a View
2017-10-26 07:53:52 +03:00
Alexey Milovidov
2cc3fdae9b Useless modifications for cppcheck [#CLICKHOUSE-2]. 2017-10-26 04:47:03 +03:00
Marek Vavruša
ee22253857 tests: added tests for sumWithOverflow(x) preserving input type 2017-10-25 22:21:59 +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
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
Alexey Milovidov
65982a1642 Fixed exception messages [#CLICKHOUSE-2]. 2017-10-25 22:17:37 +03:00
proller
4ffbca2d8c Fix warnings (#1406)
* Log query id in executeQuery; Better type mismatch error; change format in report tool

* Better log query_id

* fix message

* Use c++11 thread_local instaed of gcc's __thread

* lock mutex before notifying waiting thread in sync insertion into distributed [#CLICKHOUSE-3379]

* Cmake: fix build without downloaded submodules (#1379)

* fix

* ZooKeeper: fixed stack smashing with tryGet()

The tryGet() operation creates a 1MB buffer on stack. This may or
may not work depending on the default stack size for threads,
whether the stack protector is enabled or not, recursion depth,
and the actual value size.

This is probably going to slow down some ZK operations, but I don't
see how else this could work reliably with the existing API.

* increased timeout for test_insertion_sync_fails_with_timeout

* Update CHANGELOG_RU.md

* Update ZooKeeper.cpp

* Fix warnings

* Fixes

* Dont strip debug info from  asan, tsan and other builds except releases

* Fix asan error causd by test 00144

* Fix empty log message (#CLICKHOUSE-3378)
2017-10-25 21:39:10 +03:00
Nikolai Kochetov
54786902c3 added test [#CLICKHOUSE-3305]
added test [#CLICKHOUSE-3305]

added test [#CLICKHOUSE-3305]

added test [#CLICKHOUSE-3305]

added test [#CLICKHOUSE-3305]

added test [#CLICKHOUSE-3305]

added test [#CLICKHOUSE-3305]

added test [#CLICKHOUSE-3305]
2017-10-25 20:08:46 +03:00
Marek Vavruša
d942ca0c0b Updated exceptions and added comments. 2017-10-24 17:57:03 -07:00
alexey-milovidov
b5155916a8 Merge branch 'master' into materialized-view-to 2017-10-24 22:39:24 +03:00
alexey-milovidov
8c327e9378 Revert "Make gperftools (libtcmalloc) as submodule and update. (#1381)"
This reverts commit fa2484ea90.
2017-10-24 22:18:15 +03:00
proller
fa2484ea90 Make gperftools (libtcmalloc) as submodule and update. (#1381)
* Update tcmalloc and make submodule

* wip

* wip

* wip

* wip

* clean

* fix

* fix

* fix

* Fix tests
2017-10-24 22:11:42 +03:00
alexey-milovidov
6d62a117a1 Merge pull request #1395 from proller/fix4
Fix stripping debug info from huge .o (-g0)
2017-10-24 22:04:21 +03:00
Alexey Zatelepin
6bb34a4494 Merge branch 'master' into arbitrary-partitioning
Conflicts:
	dbms/src/Storages/StorageFactory.cpp
2017-10-24 17:23:18 +03:00
Alexey Zatelepin
b6b5d1cf25 store rows count for part on disk to allow tables without fixed size columns [#CLICKHOUSE-3000] 2017-10-24 17:11:53 +03:00
proller
2d2a4afa3f Fix stripping debug info from huge .o (-g0) 2017-10-24 16:30:44 +03:00
proller
82134e44cb Split ComplexKeyCacheDictionary to faster compile (part2) 2017-10-24 00:26:42 +03:00
proller
86a587e482 Fix test (supress stderr) 2017-10-23 21:40:07 +03:00
alexey-milovidov
3c2155df0b Update StorageKafka.cpp 2017-10-23 20:47:33 +03:00
alexey-milovidov
139e2080ae Update StorageKafka.cpp 2017-10-23 20:47:33 +03:00
alexey-milovidov
5bfb4c213c Update JSONEachRowRowInputStream.cpp 2017-10-23 20:47:33 +03:00
Marek Vavruša
3926851343 StorageKafka: use config string instead of just server name 2017-10-23 20:47:33 +03:00
Marek Vavruša
a7c391fbf7 StorageKafka: use std::vector instead of stack array for error string buffers 2017-10-23 20:47:33 +03:00
Marek Vavruša
f4c1149606 Settings: renamed schema to format_schema 2017-10-23 20:47:33 +03:00
Marek Vavruša
6be0ffd943 DataStreams/JSONEachRow: read exact number of rows
When using a LIMIT to reduce the number of rows
read, JSONEachRow format would always read an
extra row as it triggered a scan to seek the
EOF or beginning of the next row. This is not
an issue with physical tables, but it is
for streaming tables as an extra row is
unintentionally consumed on each read.
2017-10-23 20:47:33 +03:00
Alexey Milovidov
c57a62611b Removed StorageTrivialBuffer because it is underdeveloped [#CLICKHOUSE-2]. 2017-10-23 20:38:56 +03:00
proller
c66228a746 Log query id in executeQuery; Better type mismatch error; change format in report tool (#1372)
* Log query id in executeQuery; Better type mismatch error; change format in report tool

* Better log query_id

* fix message

* Use c++11 thread_local instaed of gcc's __thread

* lock mutex before notifying waiting thread in sync insertion into distributed [#CLICKHOUSE-3379]

* Cmake: fix build without downloaded submodules (#1379)

* fix
2017-10-23 20:32:39 +03:00
Alexey Zatelepin
8ccebefae6 add tests for extended storage definition syntax [#CLICKHOUSE-3000] 2017-10-23 18:21:44 +03:00
alexey-milovidov
6555d08782 Merge pull request #1390 from proller/fix6
Fix: An Error SQL will make server down (#1388)
2017-10-23 18:10:42 +03:00
Alexey Milovidov
d77686685a Using PODArray instead of std::vector in ZooKeeper library [#CLICKHOUSE-2]. 2017-10-23 18:08:31 +03:00
alexey-milovidov
91aa0713e5 Merge pull request #1371 from vavrusa/fix-zookeeper-stack-smashing
ZooKeeper: fixed stack smashing with tryGet()
2017-10-23 17:40:12 +03:00
alexey-milovidov
4f86ec9d58 Update ZooKeeper.cpp 2017-10-23 17:39:29 +03:00
proller
d8038cf746 Fix: An Error SQL will make server down (#1388) 2017-10-23 17:37:46 +03:00
Nikolai Kochetov
adae8205a7 increased timeout for test_insertion_sync_fails_with_timeout 2017-10-23 16:56:42 +03:00
Nikolai Kochetov
5966574405 fix timeout lock in DistributedBlockOutputStream 2017-10-23 16:47:00 +03:00
Nikolai Kochetov
3317251e2f fix jobs flags in DistributedBlockOutputStream 2017-10-23 15:00:56 +03:00
alexey-milovidov
a7189820a1 Merge pull request #1375 from yandex/fix-hangup-in-sync-writing
lock mutex before notifying waiting thread in sync insertion
2017-10-22 12:45:54 +03:00
alexey-milovidov
c5b5f2b4f8 Merge pull request #1374 from proller/fix4
Use c++11 thread_local instead of gcc's __thread
2017-10-22 12:43:11 +03:00
Marek Vavruša
5f53df7dbe ParserCreateQuery: allow ATTACH TABLE x shorthand statement
Allow `ATTACH TABLE [db.]name` if the table was previously detached,
an the table structure can be read from disk. This makes reattaching
tables less cumbersome:

```
CREATE TABLE test.t (x UInt8) ENGINE = Null;
DETACH TABLE test.t;
ATTACH TABLE test.t;
```
2017-10-21 13:38:39 -07:00
Marek Vavruša
975a7ada42 StorageMaterializedView: allow CREATE MATERIALIZED VIEW x TO y
This allows creation of materialized views without inner tables,
using an existing table for materialized rows instead.
This is useful for cases when you want to detach the materializing
view, but keep the already materialized data readable, especially
when the inner table is replicated.
2017-10-21 13:34:59 -07:00
Alexey Zatelepin
dd42d53856 additional help messages for extended syntax [#CLICKHOUSE-3000] 2017-10-20 23:02:55 +03:00
Alexey Zatelepin
c61d4106e8 allow loading all MergeTree settings from a query [#CLICKHOUSE-3000] 2017-10-20 21:28:45 +03:00
Alexey Zatelepin
a7c85e0c89 save index_granularity to ATTACH query if it wasn't set explicitly [#CLICKHOUSE-3000] 2017-10-20 21:28:44 +03:00
Alexey Zatelepin
1f76900500 move CREATE query rewriting for views to Interpreter [#CLICKHOUSE-2] 2017-10-20 21:28:43 +03:00
Alexey Zatelepin
75c65c7b59 use extended storage definition syntax for MergeTree engines [#CLICKHOUSE-3000] 2017-10-20 21:28:42 +03:00
Alexey Zatelepin
6b9ead4bd8 parse PARTITION BY, ORDER BY, SAMPLE BY, SETTINGS clauses in a storage definition [#CLICKHOUSE-3000] 2017-10-20 21:28:42 +03:00
Alexey Zatelepin
48dea685d0 use more typesafe AST objects in ASTCreateQuery [#CLICKHOUSE-3000] 2017-10-20 21:28:41 +03:00
proller
8dd5c9dac2 Cmake: fix build without downloaded submodules (#1379) 2017-10-20 20:59:44 +03:00
Nikolai Kochetov
74a4c7508a merged with master 2017-10-20 19:18:09 +03:00
Nikolai Kochetov
d5d53da01b added comments [#CLICKHOUSE-3305] 2017-10-20 19:13:35 +03:00
Nikolai Kochetov
4efee71114 fix hash index in CatBoostModel [#CLICKHOUSE-3305]
fix hash index in CatBoostModel [#CLICKHOUSE-3305]

fix hash index in CatBoostModel [#CLICKHOUSE-3305]

fix hash index in CatBoostModel [#CLICKHOUSE-3305]

fix string features in CatBoostModel [#CLICKHOUSE-3305]
2017-10-20 19:13:32 +03:00
Nikolai Kochetov
e23e15dba8 fix arguments count in FunctionModelEvaluate [#CLICKHOUSE-3305] 2017-10-20 19:13:29 +03:00
Nikolai Kochetov
9384bfdc28 fix invalid catboost model handle [#CLICKHOUSE-3305] 2017-10-20 19:13:29 +03:00
Nikolai Kochetov
ce602387d4 fixed extermal models lifetime in config [#CLICKHOUSE-3305] 2017-10-20 19:13:29 +03:00
Nikolai Kochetov
48de8de6e0 added registerFunctionsExternalModels [#CLICKHOUSE-3305] 2017-10-20 19:13:28 +03:00
Nikolai Kochetov
fdf258f8ed added ExternalModels to Context [#CLICKHOUSE-3305]
fix build [#CLICKHOUSE-3305]

fix build [#CLICKHOUSE-3305]

fix build [#CLICKHOUSE-3305]

fix build [#CLICKHOUSE-3305]

fix build [#CLICKHOUSE-3305]
2017-10-20 19:13:25 +03:00
Nikolai Kochetov
bb4547140b added ExternalModels, applyModel [#CLICKHOUSE-3305] 2017-10-20 19:13:21 +03:00
Nikolai Kochetov
ff088b4a1d modified CatBoostModel [#CLICKHOUSE-3305] 2017-10-20 19:13:21 +03:00
Nikolai Kochetov
e817de7e21 added CatBoostModel [#CLICKHOUSE-3305] 2017-10-20 19:13:21 +03:00
robot-metrika-test
93e1401b35 Auto version update to [54297] 2017-10-20 19:13:20 +03:00
proller
b60c5fb097 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-20 19:13:20 +03:00
Vitaliy Lyudvichenko
cbd03af500 Fixed integration tests after introduction of 'clickhouse server' commands. [#CLICKHOUSE-2] 2017-10-20 19:13:19 +03:00
Nikolai Kochetov
24fc661f00 added boost::dll [#CLICKHOUSE-3305] 2017-10-20 19:13:19 +03:00
Nikolai Kochetov
99e9c0c486 fix build [#CLICKHOUSE-3305]
fix build [#CLICKHOUSE-3305]

fix build [#CLICKHOUSE-3305]

fix build [#CLICKHOUSE-3305]

fix build [#CLICKHOUSE-3305]

fix build [#CLICKHOUSE-3305]

fix build [#CLICKHOUSE-3305]

fix build [#CLICKHOUSE-3305]

fix build [#CLICKHOUSE-3305]

fix build [#CLICKHOUSE-3305]

fix build [#CLICKHOUSE-3305]

fix build [#CLICKHOUSE-3305]

fix build [#CLICKHOUSE-3305]
2017-10-20 18:45:16 +03:00
Nikolai Kochetov
4262c00122 lock mutex before notifying waiting thread in sync insertion into distributed [#CLICKHOUSE-3379] 2017-10-19 22:52:45 +03:00
proller
443088ce31 Use c++11 thread_local instaed of gcc's __thread 2017-10-19 22:36:37 +03:00
Alexey Zatelepin
e51f95872f fix backward compatibility for new part format: [#CLICKHOUSE-3000]
* do not write out partition and minmax index files for old MergeTreeData format
* download the part from another replica if there are missing or extra files
2017-10-19 21:24:30 +03:00
Marek Vavruša
e2a8526990 ZooKeeper: fixed stack smashing with tryGet()
The tryGet() operation creates a 1MB buffer on stack. This may or
may not work depending on the default stack size for threads,
whether the stack protector is enabled or not, recursion depth,
and the actual value size.

This is probably going to slow down some ZK operations, but I don't
see how else this could work reliably with the existing API.
2017-10-18 15:13:42 -07:00
robot-metrika-test
8a2b7cf0b6 Auto version update to [54300] 2017-10-16 13:49:50 +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
Marek Vavruša
2ac5a743cc dbms: fix build with OS X built-in clang
The built-in clang doesn’t support value() for
`std::experimental::optional`. It however supports
dereference operator, which is basically the
same thing:

```
/clickhouse/dbms/src/DataStreams/NullableAdapterBlockInputStream.cpp:83:67: error: call to unavailable member function 'value':
                    res.insert({elem.column, elem.type, rename[i].value()});
                                                        ~~~~~~~~~~^~~~~
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/experimental/optional:547:17: note: candidate function has been explicitly made unavailable
    value_type& value()
                ^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/experimental/optional:539:33: note: candidate function has been explicitly made unavailable
    constexpr value_type const& value() const
```
2017-10-13 18:12:29 -07:00
proller
4c7850fdc2 Optional kafka (#1355)
* Zookeeper include fix

* Update submodule contrib/poco

* Fix zookeeper submodule ho-to-make doc

* Update zookeeper submodule

* Update submodule zookeeper

* Fix compile with external zookeeper

* Optional kafka

* fix

* Fix

* fix
2017-10-14 03:53:01 +03:00
Alexey Milovidov
f42c6014ce Merge branch 'master' of github.com:yandex/ClickHouse 2017-10-14 02:06:11 +03:00
alexey-milovidov
9ccdb5420b Merge branch 'master' into upstream-add-kafka 2017-10-13 23:52:42 +03:00
proller
20329ce794 Zookeeper include fix (#1353) 2017-10-13 23:30:55 +03:00
alexey-milovidov
adedf47715 Update StorageKafka.cpp 2017-10-13 23:18:43 +03:00
proller
fd072b58bb zstd, lz4 as submodule (#1214)
* Contrib: use zstd, lz4 as submodule

* fix shared build

* re-test me.

* wip

* Update CHANGELOG_RU.md

* Update CHANGELOG.md

* Update CHANGELOG_RU.md

* Whitespaces [#CLICKHOUSE-2].

* Implemented TODO [#CLICKHOUSE-2].

* Whitespaces [#CLICKHOUSE-2].

* Remove wrong test

* Implemented TODO [#CLICKHOUSE-2].

* Moved chown to correct place [#CLICKHOUSE-2].

* Resolves #1273. Exception safe users update. [#CLICKHOUSE-3]

* Less noisy logging. [#CLICKHOSUE-2]

* Add metrics for RWLockFIFO. [#CLICKHOUSE-3246]

* Executable dictionaries: fail if program returns non zero exit code (#CLICKHOUSE-3171)

* Add better logging if OPTIMIZE cannot be executed. [#CLICKHOUSE-2]

* test me

* Fixing documentation fragment about "default" user. It is not mandatory anymore.

* append yurial/clickhouse-client to docs/interfaces

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

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

* Update MergeTreeDataMerger.cpp

* Update ShellCommand.cpp

* Disable part sendings and fetches before ALTER. [#CLICKHOUSE-3343]

* Update ExecutableDictionarySource.cpp

* Update ExecutableDictionarySource.cpp

* Miscellaneous changes after merge [#CLICKHOUSE-2].

* Improve tests: allow redefine some values (clickhouse path, ports, ...)

* Received signal Segmentation fault (#1300) (#1302)

* Received signal Segmentation fault (#1300)

* Add test

* Tests: Use new possibly redefined values from env (in 2 tests)

* Proper fix for the issue: better exception message [#CLICKHOUSE-2].

* Split GatherUtils.cpp for faster compile (#1312)

* Split GatherUtils.cpp for faster compile

* remove GatherUtils.cpp

* 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

* Update ActionBlocker.h

* Fix section tabulation

* Fixed infinite recursion in expression analyzer. [#CLICKHOUSE-3125]

* Update ActionBlocker.h

* Improvement [#CLICKHOUSE-2].

* Try fix strange terminate (#1329)

* Tests: External: rename --use_http  => --no_http and fix

* Try fix strange terminate

* Misc [#CLICKHOUSE-2].

*  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)

* 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

* dbms: Added compression level for ZSTD. [#METR-26742]

* dbms: CompressionSettingsSelector. [#METR-21516]

* dbms: Minor fix. [#METR-21516]

* 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 21:52:23 +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
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
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