Commit Graph

221 Commits

Author SHA1 Message Date
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
proller
f6d8436f81 Enable travis (#1772)
* Try travis

* wip

* Try travis

* try

* try

* try

* try

* Revert "try"

This reverts commit 7ecd73c2eb.

* try unbundled

* Try unbundled2

* Try undundled3

* Try unbundled4

* Try5

* try gcc7

* try6

* Try clang

* Try min

* try ccache

* try ccache stats

* no sudo

* try clang

* try ccache

* reset changelog

* Try fix clang

* try limit time

* Faster

* try timeout

* try faster

* Try

* try

* try

* try

* try

* try

* ccache

* Fix

* try test

* try test

* Fix try_listen in some vm's

* fix

* test

* fix

* cache timeout

* packages

* fix

* fix

* fix

* try emb compiler

* Try emb compiler

* Revert "try emb compiler"

This reverts commit 471713cabe.

* try

* Revert "Try emb compiler"

This reverts commit 95e632abf6.

* Skip long

* fix

* fix

* ccache

* fix

* debug

* Fxi test

* test fix

* tes fix

* Fix

* Fix link

* Fix odbc link

* Fxi test

* fix  boost unbundled include

* fix test

* fix test

* test fix

* fix tests

* tests

* Test fail
2018-01-15 21:57:10 +03:00
proller
b026eb7797 Use submodule contrib/capnproto, remove include_directories (#1746)
* Add submodule contrib/capnproto

* Use contrib/capnproto, remove include_directories

* Fix include

* Clean

* Fix werror

* Update doc

* Fix

* Final fix

* Fxi
2018-01-11 21:39:52 +03:00
Alexey Milovidov
996eafada9 Revert "Remove hard-coded paths in Interpreters/Compiler.cpp"
This reverts commit 3a97fbd0e7.
2018-01-09 20:49:25 +03:00
proller
694c6ed243 Cmake: move all gtest stuff to one place in dbms/CMakeLists.txt 2018-01-09 20:29:17 +03:00
Roman Tsisyk
3a97fbd0e7 Remove hard-coded paths in Interpreters/Compiler.cpp
Interpreters/Compiler.cpp contained hard-coded paths for system's
includes needed for query compiler. These paths were not portable
between different Linux distros and gcc/clang versions. For example,
Debian/Ubuntu use /usr/lib/gcc/x86_64-linux-gnu/*/include,
RHEL/Fedora use /usr/lib/gcc/x86_64-redhat-linux/*/include,
others use /usr/lib/gcc/*/include (without x86_64-XXX triplet).

Patch 68850012b "Embedded compiler fixes" attempted to fix this problem
by adding CMAKE_LIBRARY_ARCHITECTURE after /usr/lib. Unfortunally,
CMAKE_LIBRARY_ARCHITECTURE is not defined on RHEL/Fedora because someone
decided to omit "-gnu" from x86_64-redhat-linux (see RHBZ#1531678).

Patch 70e35d0bc "Build fixes (#1718)" added a workaround for
undefined CMAKE_LIBRARY_ARCHITECTURE on RHEL/Fedora, but hasn't fixed
problem with missing /usr/lib/gcc/x86_64-redhat-linux/*/include/
in the list of hardcoded paths.

Remove hard-coded paths and get the list of `-isystem` includes directly
from bundled clickhouse-clang.

Other changes:

- Enable RPATH for the build directory to get working binaries
  without installing them by `make install`.
2018-01-09 20:24:25 +03:00
Alexey Milovidov
104b09604a Merging [#CLICKHOUSE-3114] 2017-12-28 00:45:05 +03:00
proller
f9d3c01a01 Add package clickhouse-test, allow testing in pbuilder (#1709)
* Allow 32bit build (with warning)

* Add package clickhouse-test

* Test fixes

* fix

* fix

* clickhouse-test: aloow work in read-only queries dir (--tmp)

* Fix test
2017-12-27 22:01:57 +03:00
Alexey Milovidov
f87cc75734 Fixed build [#CLICKHOUSE-2]. 2017-12-24 13:12:49 +03:00
Alexey Milovidov
acb341b2c9 Unification of aggregate function combinators [#CLICKHOUSE-3511]. 2017-12-24 09:50:11 +03:00
Alexey Milovidov
d7a36519da Simplification of aggregate functions: development [#CLICKHOUSE-2]. 2017-12-21 05:08:25 +03:00
proller
741117a390
Fix freebsd build. Little cmake fixes. (#1634) 2017-12-13 22:07:12 +03:00
Alexey Milovidov
1b60106333 Simplification of Nullable [#CLICKHOUSE-2] 2017-12-08 09:58:48 +03:00
Alexey Milovidov
28d40e2c9a Enabled -Wextra [#CLICKHOUSE-2]. 2017-12-02 06:39:38 +03:00
Alexey Milovidov
c748493a86 Better [#CLICKHOUSE-2]. 2017-12-02 05:47:12 +03:00
Alexey Milovidov
f5ecb2db5d Better [#CLICKHOUSE-2]. 2017-12-01 20:49:12 +03:00
Roman Lipovsky
9ed1ba2441 separate geo dictionaries from geo data providers 2017-11-29 01:15: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
proller
2778f35e48 Lib Parsers 2017-11-21 22:35:54 +03:00
proller
19d102cc4f fix 2017-11-17 22:53:02 +03:00
proller
5ba7e20c03 fixes 2017-11-17 22:40:27 +03:00
proller
aa3dd03389 Split lib dbms to dbms + dbms_common_io 2017-11-17 22:19:49 +03:00
Marek Vavruša
0d942a69c5 DataStreams: added Cap’n Proto format support
Cap'n Proto is a binary message format.
Like Protocol Buffers and Thrift (but unlike JSON or MessagePack), Cap'n Proto messages are strongly-typed and not self-describing. Due to this, it requires a schema setting to specify schema file and the root object. The schema is parsed on runtime and cached for each SQL statement.
2017-10-27 23:03:51 +03:00
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
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
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
proller
2d2a4afa3f Fix stripping debug info from huge .o (-g0) 2017-10-24 16:30:44 +03: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
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
9ccdb5420b Merge branch 'master' into upstream-add-kafka 2017-10-13 23:52:42 +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
011658bb02 contrib: include librdkafka as submodule 2017-10-10 08:33:00 -07:00
Alexey Milovidov
fabfed6f22 Added support for "include-what-you-use" tool [#CLICKHOUSE-2]. 2017-09-10 09:51:27 +03:00
Alexey Milovidov
cd540c2674 Replaced Mersenne Twister to PCG-Random [#CLICKHOUSE-2]. 2017-09-10 02:17:38 +03:00
proller
3269b1da57 libmariadb as submodule (CLICKHOUSE-3261) (#1181)
* Use bundled libmariadbclient (CLICKHOUSE-3261)

* wip

* wip

* wip

* Update docs about git clone. move docs/en/development/build_*.sh -> utils/build/build_debian.sh
2017-08-31 20:11:30 +03:00
proller
c351b367fb Fix sparcehash include (#1084)
* Fix sparcehash include

* Fix re2_st include
2017-08-10 02:11:28 +03:00
proller
ac178bde1f Cmake: link ltdl with pocoodbc static only. rename ARM -> ARCH_ARM (#1083)
* Cmake: link ltdl with pocoodbc static only. rename ARM -> ARCH_ARM

* Fix lib find order

* Allow define non-contrib cityhash farmhash metrohash

* Fix message

* Cmake: fixes

* clean

* Update CMakeLists.txt
2017-08-09 23:52:55 +03:00
proller
465d305479 gcc7 and arm fixes (#1041)
* PerformanceTest: use getMultiple*FromConfig, fix debug helpers

* Missing file

* gcc7 fixes

* clnag-format of Split ComplexKeyCacheDictionary

* Requested changes

* Fix boost 1.64 and gcc7+ compile errors

* More fixes

* Fix arm build

* Fix nothrow

* Better arm detection
2017-07-29 22:58:10 +03:00
Alexey Milovidov
6851a7754a Fixed linkage [#CLICKHOUSE-2]. 2017-07-25 21:32:52 +03:00
Alexey Milovidov
b52d2eab51 Fixed linkage [#CLICKHOUSE-2]. 2017-07-25 21:20:50 +03:00
Alexey Milovidov
d20c411b0d Fixed linkage [#CLICKHOUSE-2]. 2017-07-25 21:19:22 +03:00
proller
4db8d09de9 Reorganize includes. part 1 (#921)
* Make libunwind optional. Allow use custom libcctz

* fix

* Fix

* fix

* Update BaseDaemon.cpp

* Update CMakeLists.txt

* Reorganize includes. part 1

* Update dbms_include.cmake

* Reorganize includes. part 2

* Reorganize includes. part 3

* dbms/src/Common/ThreadPool -> libs/libcommon

* Reorganize includes. part 4

* Fix print_include_directories

* Update thread_creation_latency.cpp

* Update StringRef.h
2017-06-23 23:22:35 +03:00
Alexey Milovidov
05accbdcbe Removed cyclic dependency [#DEVTOOLS-3381]. 2017-06-19 23:06:35 +03:00
Alexey Milovidov
6aa69c06cf Moved tools sources out of library code [#CLICKHOUSE-2]. 2017-06-16 19:20:51 +03:00
Alexey Milovidov
0fcb6300a2 Fixed error in linkage (thanks Orivej) [#DEVTOOLS-3381]. 2017-06-15 23:24:23 +03:00
Alexey Milovidov
a782f81f8f Moved common code from Functions; fixed build after merge [#CLICKHOUSE-2]. 2017-06-13 07:45:30 +03:00
Alexey Milovidov
45c76803a9 Moved table functions to separate library; fixed errors; improved testability [#CLICKHOUSE-31]. 2017-06-10 12:04:31 +03:00
Marek Vavruša
9520234365 Dictionaries/TrieDictionary: IP prefix dictionary
This commit implements a basic IP prefix dictionary
that allows storing IPv4/IPv6 prefixes and
matching them against a single IP address on query
time. This allows for doing IP -> ASN matching and
other similar things on query time.

The implementation is basic for start, using a
simple bitwise trie and reusing interface for
complex key dictionaries (so using tuple instead
of UInt32/FixedString(16) as the key). A faster
bitwise trie implementation (like poptrie) is
desired to improve lookup performance and
memory consumption with large prefix tables.
2017-05-15 10:51:03 +04:00