Commit Graph

339 Commits

Author SHA1 Message Date
Alexey Milovidov
f910b5e9de Added comment #2957 2018-09-02 03:34:34 +03:00
alexey-milovidov
a05cdfbb45
Merge branch 'master' into extra-warnings 2018-08-31 03:03:44 +03:00
proller
e30d93a0f2 Better debug helpers (#2983)
* Better debug helpers

* fix
2018-08-29 03:03:07 +03:00
Alexey Milovidov
f9b6483f95 Checkpoint [#CLICKHOUSE-2] 2018-08-27 21:21:34 +03:00
Alexey Milovidov
ad5855b7c1 Compatibility with old CMake [#CLICKHOUSE-2] 2018-08-27 19:49:40 +03:00
Alexey Milovidov
e5a2dd8624 Merge branch 'master' into extra-warnings 2018-08-27 19:19:04 +03:00
proller
3acce3bff9 Build fix (#2944)
* Build fix

* Better sample build scripts

* zlib apple fix

* fix

* fix

* better so version

* SPLIT_SHARED -> LINK_MODE

* clean
2018-08-27 17:39:20 +03:00
Alexey Milovidov
252a00e25b Enabling -Wshadow [#CLICKHOUSE-2] 2018-08-27 10:57:42 +03:00
Alexey Milovidov
eed804ba94 Enabling extra warnings [#CLICKHOUSE-2] 2018-08-26 15:38:45 +03:00
Alexey Milovidov
b3c51070d4 Enabling -Wshadow-uncaptured-local [#CLICKHOUSE-2] 2018-08-26 05:41:05 +03:00
Alexey Milovidov
b44343d83d Enabling -Wshadow [#CLICKHOUSE-2] 2018-08-26 05:00:11 +03:00
Alexey Milovidov
e726fa89f8 Enabling -Wzero-as-null-pointer-constant [#CLICKHOUSE-2] 2018-08-26 04:58:56 +03:00
Alexey Milovidov
a1a70d4a65 Enabling -Wzero-as-null-pointer-constant [#CLICKHOUSE-2] 2018-08-26 04:56:34 +03:00
Alexey Milovidov
936c21de1f Enabling -Wzero-as-null-pointer-constant [#CLICKHOUSE-2] 2018-08-26 04:42:02 +03:00
Alexey Milovidov
595bd32f41 Enabling -Wzero-as-null-pointer-constant [#CLICKHOUSE-2] 2018-08-26 04:41:08 +03:00
Alexey Milovidov
d252542e9a Enabling -Wzero-as-null-pointer-constant [#CLICKHOUSE-2] 2018-08-26 04:37:22 +03:00
Alexey Milovidov
c0202bfbc9 Enabling -Wunused-exception-parameter [#CLICKHOUSE-2] 2018-08-26 04:31:56 +03:00
Alexey Milovidov
4877cf31aa Enabling -Winconsistent-missing-destructor-override [#CLICKHOUSE-2] 2018-08-26 04:25:35 +03:00
Alexey Milovidov
589ee74c7d Enabling -Wcomma [#CLICKHOUSE-2] 2018-08-26 04:19:11 +03:00
Alexey Milovidov
8c48fb14de Enabling -Wredundant-parens [#CLICKHOUSE-2] 2018-08-26 04:15:49 +03:00
Alexey Milovidov
3d0f62fb31 Enable some warnings from -Weverything [#CLICKHOUSE-2] 2018-08-26 03:39:11 +03:00
proller
159cdbbb3e Try fix build (link order) 2018-08-20 18:34:37 +03:00
Alexey Milovidov
9c3cd25f6e Fixed link order #1983 2018-08-10 07:53:45 +03:00
Alexey Milovidov
b6d6b57cec Revert "Fixed link order #2807"
This reverts commit 2f2fafb74a.
2018-08-10 00:01:59 +03:00
Alexey Milovidov
2f2fafb74a Fixed link order #2807 2018-08-09 23:43:28 +03:00
Alexey Milovidov
e523f9a2c8 Fixed names [#CLICKHOUSE-2] 2018-08-05 11:54:57 +03:00
Alexander Marshalov
154d7e3228 Added SETTINGS clause for Kafka storage engine 2018-08-03 21:51:28 +03:00
proller
f477942c66 Cmake: test for liblld 2018-07-21 03:11:56 +03:00
proller
7be750afe9 Apple build fixes 2018-07-20 20:21:03 +03:00
proller
a31adcfdea Allow use unbundled cpuid (#2543)
* Wait test server startup for 5s

* clean

* Allow use system libcpuid

* cpuid: move include/cpuid/ -> include/libcpuid/

* fix
2018-06-21 20:35:03 +03:00
proller
fbe7df73a2
CLICKHOUSE-3762 Build fixes (#2488)
CONTRIB-254
2018-06-19 21:09:09 +03:00
alexey-milovidov
fafecb3c25
Better modularity of formats. (#2492)
* Formats: better modularity (development) #2447

* Formats: better modularity (development) #2447

* Formats: better modularity (development) #2447

* Formats: better modularity (development) #2447

* Formats: better modularity (development) #2447

* Formats: better modularity (development): removed very old tests #2447

* Formats: better modularity (development) #2447

* Formats: better modularity (development) #2447

* Formats: better modularity (development) #2447

* Formats: better modularity (development) #2447

* Formats: better modularity (development) #2447

* Formats: better modularity (development) #2447

* Formats: better modularity (development) #2447

* Formats: better modularity (development) #2447
2018-06-10 22:22:49 +03:00
proller
347579ce46 Cmake: mark system includes as SYSTEM (#1449)
* contrib: cctz as submodule. update cctz.

* pbuilder: add ubuntu bionic, devel

* Cmake: mark system includes as SYSTEM

* Build fixes

* fix

* Fix package without compiler

* Better

* fix

* fix

* fix

* Build fix

* fix

* fix

* fix

* Cmake: Add SYSTEM to includes for external libs
2018-06-06 23:21:58 +03:00
Alexey Milovidov
51044279e5 Squashed #2471 2018-06-05 23:09:51 +03:00
proller
4d12a823da Use copy-headers from cmake. (working compiler test without package install) (#2456)
* Try use copy-headers from cmake [WIP]

* Using internal compiler without install

* 32bit Compile fix

* Fixes

* fix

* clean

* fix

* clean
2018-06-04 23:26:17 +03:00
proller
ead9493741 Build fixes 2018-05-29 20:54:48 +03:00
proller
221c833cfc Temporary use copy-headers from debian package 2018-05-29 18:13:30 +03:00
proller
060e965215
Try fix copy_headers (#2435) 2018-05-29 01:17:10 +03:00
proller
ab3ab7f52d clickhouse-test-server: use random ports (#2425)
* Fix internal compiler includes with new clang

* debug copy_headers.sh

* Fix copy_headers.sh

* Use copy-headers from cmake

* Update rules

* pbuildeR: use random ports for testing

* critical fix

* clickhouse-test-server: use random ports

* fix

* fix
2018-05-25 23:52:20 +03:00
proller
68ba523b23 Compile and doc fixes (#2410)
* Try fix travis

* fix

* Fix clickhouse-local shared-split link

* fix

* fix

* fix

* Build fixes

* Fix tinfo

* fix

* tinfo -> termcap

* termcap fix

* Better llvm version detect

* fix

* Debian postinst fix
Tests: use /usr/local if exists

* Compile and doc fixes

* fix

* fix

* fix

* macos fixes

* fix

* wip

* Update demangle.h

* Update demangle.cpp
2018-05-25 21:13:48 +03:00
proller
5665709bb9 Use copy-headers from cmake (#2412)
* Fix internal compiler includes with new clang

* debug copy_headers.sh

* Fix copy_headers.sh

* Use copy-headers from cmake

* Update rules
2018-05-25 01:20:37 +03:00
proller
445f8800c3
Build fixes [WIP] (#2374) 2018-05-17 20:55:07 +03:00
Alexey Milovidov
3e79e8974f Addition to prev. revision [#CLICKHOUSE-2] 2018-05-15 00:37:56 +03:00
proller
fb911f7cfa Allow force disable libs: poco netssl poco mongodb, poco data odbc 2018-05-14 21:36:01 +03:00
proller
aa1552ebf2 Build fixes 2018-05-14 20:25:32 +03:00
proller
7deceb5783 Build fixes 2018-05-14 14:52:41 +03:00
proller
0b386381ac Build fixes 2018-05-11 21:00:24 +03:00
Alexey Milovidov
b1b95454cc Make warning suppressions more local #2277 2018-05-06 12:29:57 +03:00
pyos
4970b06b57 Remove outdated comments 2018-04-30 02:21:45 +03:00
pyos
979c4d959f Let jit-compilable functions deal with NULLs themselves.
And provide a default implementation of compile() for nullable columns
that actually works and is consistent with execute().
2018-04-28 00:34:27 +03:00
pyos
a9e0b6de9f Use system LLVMConfig.cmake with minor tweaks.
Should fix Travis build, finally.
2018-04-26 22:45:39 +03:00
pyos
854f85dd9b Put #if USE_EMBEDDED_COMPILER in ExpressionJIT.{cpp,h} 2018-04-25 18:19:22 +03:00
pyos
3789eba5c4 Fix CMakeFiles syntax 2018-04-25 13:37:26 +03:00
pyos
2b1be27b1b Add missing option to CMakeFiles.txt 2018-04-25 13:37:26 +03:00
pyos
851684de51 Add a JIT interface for row-wise default-nullable functions.
Not actually implemented, though. It does print out some jit-compiled stuff,
but that's about it. For example, this query:

    select number from system.numbers where something(cast(number as Float64)) == 4

results in this on server's stderr:

    define double @"something(CAST(number, 'Float64'))"(void**, i8*, void*) {
    "something(CAST(number, 'Float64'))":
      ret double 1.234500e+04
    }

(and an exception, because that's what the non-jitted method does.)

As one may notice, this function neither reads the input (first argument;
tuple of arrays) nor writes the output (third argument; array), instead
returning some general nonsense.

In addition, `#if USE_EMBEDDED_COMPILER` doesn't work for some reason,
including LLVM headers requires -Wno-unused-parameter, this probably only
works on LLVM 5.0 due to rampant API instability, and I'm definitely
no expert on CMake. In short, there's still a long way to go.
2018-04-25 13:37:25 +03:00
Alexey Milovidov
3f264f07e9 Removed excessive library dependencies #2180 2018-04-07 05:29:12 +03:00
proller
e933d1a1ee
Cmake fixes (#2177)
* cmake fixes

* Fix test server config
2018-04-06 05:07:40 -07:00
Vitaliy Lyudvichenko
ce8de108ed Better timeouts handling. [#CLICKHOUSE-2] 2018-04-04 22:44:38 +03:00
proller
e58b0830e6
Prepare to new poco (PocoData renamed to PocoSQL) (#2158) 2018-04-03 04:48:40 -07:00
proller
caf83a650e libs: compiling with msvc2017 (#1996)
* Allow use bundled *ssl library

* fix

* Add submodule

* Fixes

* fix

* fixes

* fixes

* fix

* fix

* update poco

* fix warnings

* fix

* fix

* Build fixes

* Build fixes

* fix

* fix

* fix

* fix

* fix

* fix

* fix

* add bat

* no zookeeper in dbms

* update boost

* fixes

* fixes

* fix

* fix

* fix

* fix

* try fix

* try fix

* fix

* fix

* fix

* fix

* fix

* fix

* fix

* fix

* Better

* fix

* dh verbose

* fix

* dh verbose

* fix

* clean

* Update LocalDate.h

* Update LocalDateTime.h
2018-03-23 19:05:14 +03:00
Alexey Milovidov
651a312896 Added ProfileEvent for table function executions [#CLICKHOUSE-3615] 2018-03-02 08:03:28 +03:00
proller
f749405bf0 libressl as submodule (#1983)
* Allow use bundled *ssl library

* fix

* Add submodule

* Fixes

* fix

* fixes

* fixes

* fix

* fix

* update poco

* fix warnings

* fix

* fix
2018-03-02 03:17:25 +03:00
proller
d6a1f8470f CLICKHOUSE-3553 Rebuild loggers on every config change (#1973)
* Macos test fix

* Fix freebsd build

* CLICKHOUSE-3553 Rebuild loggers on every config change

* rename clickhouse_common_configprocessor -> clickhouse_common_config; move Server/ConfigReloader.cpp -> Common/Config/

* CLICKHOUSE-3553 Set new level to all loggers on reload

* Dont use hash

* Update BaseDaemon.h
2018-02-28 23:34:25 +03:00
proller
0e7c49fe9b
Build fixes (#1970)
* Macos test fix

* Fix freebsd build
2018-02-27 20:17:02 +03:00
proller
cf9a33d04f CLICKHOUSE-3600 Use correct lld version, cmake fixes (#1968)
* Allow build without rt library

* fix

* Cmake misc

* CLICKHOUSE-3600 Use correct lld version

* CLICKHOUSE-3600 Use correct lld version

* Use libllvm same version as clang

* fix

* Fix build with iodbc

* Fix iodbc build

* Fix gold find

* Fix empty lines
2018-02-26 21:34:22 +03:00
proller
63b3bccb04 Test and build fixes (#1822)
* Fix travis

* try

* try

* Disable macos

* Travis enable macos

* Fix

* fast_finish: true

* fix

*  fxi

* fix openssl

* fix

* fix

* Fix

* try travis

* fix

* fix

* Cmake: dont filter platform-depended files in cmake

* misc

* renamed:    tests/server_wrapper.sh -> tests/clickhouse-test-serve

* install clickhouse-test-server

* clickhouse-test-server wip

* wip
2018-01-26 12:03:38 +03:00
proller
c430af5fb8 Freebsd fixes 2018-01-21 02:23:19 +03:00
proller
ee8272561a
More builder fixes (#1801)
* fix boost

* Fix gtest

* fix gtest

* fix

* fix gtest

* fix
2018-01-20 05:35:16 +03:00
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