Commit Graph

8974 Commits

Author SHA1 Message Date
proller
8dd5c9dac2 Cmake: fix build without downloaded submodules (#1379) 2017-10-20 20:59:44 +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
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