Commit Graph

196 Commits

Author SHA1 Message Date
Alexey Milovidov
9da677719c Fixed code #2272 2018-05-06 14:34:16 +03:00
Alexey Milovidov
04d1c8c449 Fixed code #2272 2018-05-06 14:29:17 +03:00
pyos
accbbdb9e3 Add a setting that disables jit-compilation 2018-05-03 00:48:20 +03:00
pyos
27f12eeaa3 Merge branch 'master' of https://github.com/yandex/ClickHouse into llvm-jit 2018-05-01 22:51:37 +03:00
Tsarkova Anastasia
fe0753a128 Minor fixes, adding test case. 2018-05-01 15:24:43 +02:00
Tsarkova Anastasia
210a389592 Getting rid of measure action, other small fixes applied. 2018-04-30 21:33:32 +02:00
pyos
7529aa55a4 Fix a bug that limited inlining depth at 2 2018-04-30 01:23:27 +03:00
Tsarkova Anastasia
a99ff6f380 Fix tests. 2018-04-29 23:48:33 +02:00
Tsarkova Anastasia
2c96b1c684 Add comments. Change projection restoring function. 2018-04-29 15:49:58 +02:00
pyos
4641e2960f Move ExpressionActions::compileFunctions to ExpressionJIT.cpp.
This means ExpressionJIT.h only has to expose one function.
2018-04-29 13:39:01 +03:00
pyos
b4d527ee85 Inline compile-time constants into jitted functions. 2018-04-26 14:30:16 +03:00
pyos
c419d5a1a5 Poison only columns actually used by ARRAY_JOIN and JOIN 2018-04-25 16:01:06 +03:00
pyos
af7ecd4c4a Move function compilation before insertion of REMOVE_COLUMNs 2018-04-25 16:01:06 +03:00
pyos
0da110234c Do not compile the jit if USE_EMBEDDED_COMPILER is disabled 2018-04-25 16:01:00 +03:00
pyos
4bd0906613 Fix some comments 2018-04-25 13:37:26 +03:00
pyos
b2077a466a Inline jit-compilable functions into other jit-compilable functions 2018-04-25 13:37:26 +03:00
pyos
407008a4d9 Separate jit-compilability checks from actual compilation 2018-04-25 13:37:25 +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
Tsarkova Anastasia
12c8014e5c Conditional computations. 2018-04-24 09:16:39 +02:00
Nikolai Kochetov
233ac6c599 style fixes 2018-04-20 22:38:34 +03:00
Nikolai Kochetov
325f16f8a5 fix perf 2018-04-13 23:09:13 +03:00
Alexey Milovidov
5ff433b670 Merged Limits to Settings [#CLICKHOUSE-2021] 2018-03-11 03:15:26 +03:00
Alexey Milovidov
3f8ef38b41 Fixed wording #245 2018-03-10 02:23:15 +03:00
zhang2014
4a38e97ed6 Merge branch 'master' into fix/ISSUES-1386 2018-03-02 18:03:18 +08:00
zhang2014
6f3d67be30 ISSUES-1386 fix failed test 2018-02-22 19:28:02 +08:00
Alexey Milovidov
72aac966b1 Fixed error with order of columns in FULL JOIN that may lead to segfault [#CLICKHOUSE-2] 2018-02-21 11:16:01 +03:00
Alexey Milovidov
ee4b5d2527 Added method "getHeader" in IBlockOutputStream: development [#CLICKHOUSE-2] 2018-02-19 23:23:25 +03:00
Alexey Milovidov
afe09d3138 Removed unused code [#CLICKHOUSE-2] 2018-02-18 06:46:18 +03:00
Alexey Milovidov
df4853a13a Header in every stream: development [#CLICKHOUSE-2] 2018-02-18 03:37:22 +03:00
Nikolai Kochetov
27179b375a removed prerequisites [#CLICKHOUSE-3550] 2018-02-08 20:18:52 +03:00
Nikolai Kochetov
583ff32fe8 changed IFunction 2018-02-08 20:18:15 +03:00
Alexey Milovidov
fcdd5de47d Revert "Removed questionable code (2) [#CLICKHOUSE-2]."
This reverts commit fcabe8b888.
2017-12-28 07:39:19 +03:00
Alexey Milovidov
0fa9383d3e Revert "Addition to prev. revision [#CLICKHOUSE-2]"
This reverts commit bc4a5794d9.
2017-12-28 07:39:01 +03:00
Alexey Milovidov
014641a5d9 Addition to prev. revision [#CLICKHOUSE-2] 2017-12-26 01:51:11 +03:00
Alexey Milovidov
c89041ce63 Removed questionable code (2) [#CLICKHOUSE-2]. 2017-12-26 01:51:04 +03:00
Alexey Milovidov
ec71908b00 Revert "Removed questionable code (2) [#CLICKHOUSE-2]."
This reverts commit fcabe8b888.
2017-12-26 00:57:29 +03:00
Alexey Milovidov
827e82efa6 Revert "Addition to prev. revision [#CLICKHOUSE-2]"
This reverts commit bc4a5794d9.
2017-12-26 00:57:19 +03:00
Alexey Milovidov
bc4a5794d9 Addition to prev. revision [#CLICKHOUSE-2] 2017-12-26 00:50:55 +03:00
Alexey Milovidov
fcabe8b888 Removed questionable code (2) [#CLICKHOUSE-2]. 2017-12-26 00:32:33 +03:00
Alexey Milovidov
7c802ee3de Better semantic of sharing columns: development [#CLICKHOUSE-2]. 2017-12-18 05:37:08 +03:00
Alexey Milovidov
6f7d2b99ea Better semantic of sharing columns: development [#CLICKHOUSE-2]. 2017-12-17 13:14:12 +03:00
Alexey Milovidov
d0ca8b2533 Better semantic of sharing columns: development [#CLICKHOUSE-2]. 2017-12-15 21:23:05 +03:00
Alexey Milovidov
b2aff7521b Better semantic of sharing columns: development [#CLICKHOUSE-2]. 2017-12-15 06:47:43 +03:00
Alexey Milovidov
3def5f03f5 Cleanup semantics of data types [#CLICKHOUSE-2]. 2017-12-09 19:17:37 +03:00
Alexey Milovidov
d2cfda4d9b Cleanup semantics of data types [#CLICKHOUSE-2]. 2017-12-09 19:17:37 +03:00
Nikolai Kochetov
75be0b81d8 removed typeid_cast from IColumn.h 2017-07-13 23:58:19 +03:00
Alexey Milovidov
53364dcc8d Fixed totally wrong code; implemented function emptyArrayToSingle for generic case [#CLICKHOUSE-2963]. 2017-04-19 08:08:22 +03:00
Alexey Milovidov
3de78d093b Fixed LEFT ARRAY JOIN for constant arrays [#CLICKHOUSE-2946]. 2017-04-19 07:03:11 +03:00
f1yegor
b4c23f122a Translated comments 2017-04-02 20:37:49 +03:00
Alexey Milovidov
310736cd7e Moved headers and sources to same place [#CLICKHOUSE-3]. 2017-04-01 12:22:42 +03:00
Alexey Milovidov
137ad95929 Changed tabs to spaces in code [#CLICKHOUSE-3]. 2017-04-01 11:35:09 +03:00
Alexey Milovidov
4e67e05835 Fixed error [#CLICKHOUSE-2]. 2017-03-14 03:14:19 +03:00
Alexey Milovidov
58e5dad1a1 Squashed commit of the following:
commit e712f469a5
Author: Alexey Milovidov <milovidov@yandex-team.ru>
Date:   Sat Jan 14 11:59:13 2017 +0300

    Less dependencies [#CLICKHOUSE-2]

commit 2a00282308
Author: Alexey Milovidov <milovidov@yandex-team.ru>
Date:   Sat Jan 14 11:58:30 2017 +0300

    Less dependencies [#CLICKHOUSE-2]

commit 9e06f407c8
Author: Alexey Milovidov <milovidov@yandex-team.ru>
Date:   Sat Jan 14 11:55:14 2017 +0300

    Less dependencies [#CLICKHOUSE-2]

commit 9581620f1e
Author: Alexey Milovidov <milovidov@yandex-team.ru>
Date:   Sat Jan 14 11:54:22 2017 +0300

    Less dependencies [#CLICKHOUSE-2]

commit 2a8564c68c
Author: Alexey Milovidov <milovidov@yandex-team.ru>
Date:   Sat Jan 14 11:47:34 2017 +0300

    Less dependencies [#CLICKHOUSE-2]

commit cf60632d78
Author: Alexey Milovidov <milovidov@yandex-team.ru>
Date:   Sat Jan 14 11:40:09 2017 +0300

    Less dependencies [#CLICKHOUSE-2]

commit ee3d1dc6e0
Author: Alexey Milovidov <milovidov@yandex-team.ru>
Date:   Sat Jan 14 11:22:49 2017 +0300

    Less dependencies [#CLICKHOUSE-2]

commit 65592ef711
Author: Alexey Milovidov <milovidov@yandex-team.ru>
Date:   Sat Jan 14 11:18:17 2017 +0300

    Less dependencies [#CLICKHOUSE-2]

commit 37972c2573
Author: Alexey Milovidov <milovidov@yandex-team.ru>
Date:   Sat Jan 14 11:17:06 2017 +0300

    Less dependencies [#CLICKHOUSE-2]

commit dd909d1499
Author: Alexey Milovidov <milovidov@yandex-team.ru>
Date:   Sat Jan 14 11:16:28 2017 +0300

    Less dependencies [#CLICKHOUSE-2]

commit 3cf43266ca
Author: Alexey Milovidov <milovidov@yandex-team.ru>
Date:   Sat Jan 14 11:15:42 2017 +0300

    Less dependencies [#CLICKHOUSE-2]

commit 6731a3df96
Author: Alexey Milovidov <milovidov@yandex-team.ru>
Date:   Sat Jan 14 11:13:35 2017 +0300

    Less dependencies [#CLICKHOUSE-2]

commit 1b5727e0d5
Author: Alexey Milovidov <milovidov@yandex-team.ru>
Date:   Sat Jan 14 11:11:18 2017 +0300

    Less dependencies [#CLICKHOUSE-2]

commit bbcf726a55
Author: Alexey Milovidov <milovidov@yandex-team.ru>
Date:   Sat Jan 14 11:09:04 2017 +0300

    Less dependencies [#CLICKHOUSE-2]

commit c03b477d5e
Author: Alexey Milovidov <milovidov@yandex-team.ru>
Date:   Sat Jan 14 11:06:30 2017 +0300

    Less dependencies [#CLICKHOUSE-2]

commit 2986e2fb04
Author: Alexey Milovidov <milovidov@yandex-team.ru>
Date:   Sat Jan 14 11:05:44 2017 +0300

    Less dependencies [#CLICKHOUSE-2]

commit 5d6cdef13d
Author: Alexey Milovidov <milovidov@yandex-team.ru>
Date:   Sat Jan 14 11:04:53 2017 +0300

    Less dependencies [#CLICKHOUSE-2]

commit f2b819b25c
Author: Alexey Milovidov <milovidov@yandex-team.ru>
Date:   Sat Jan 14 11:01:47 2017 +0300

    Less dependencies [#CLICKHOUSE-2]
2017-01-14 12:00:19 +03:00
Alexey Milovidov
d6735c2a23 Function "sleep": do not sleep during query analyze [#METR-21574]. 2017-01-04 06:37:59 +03:00
Alexey Milovidov
ca37f28b5f Renamed methods Block::rows and Block::rowsInFirstColumn [#METR-2944]. 2017-01-02 23:45:27 +03:00
Alexey Milovidov
2b4f3b5d34 Renamed method (less confusion) [#METR-2944]. 2017-01-02 23:12:12 +03:00
Alexey Milovidov
9af5ce1e3b Separate compilation of ProfileEvents; comments [#METR-23237]. 2016-10-24 05:02:37 +03:00
Alexey Milovidov
61b9996d9e Better [#METR-22173]. 2016-08-05 05:28:34 +03:00
Alexey Milovidov
fb5981871a Avoid copying ColumnWithTypeAndName [#METR-22173]. 2016-08-05 02:35:07 +03:00
Alexey Milovidov
130ec8b58b Compatibility with new parser and AST of tables list [#METR-2944]. 2016-07-22 23:39:28 +03:00
Alexey Milovidov
be394f2c84 Using std::shared_ptr for data types [#METR-21503]. 2016-05-28 10:48:40 +03:00
Alexey Milovidov
4b7f461e46 Using std::shared_ptr for columns [#METR-21503]. 2016-05-28 08:31:36 +03:00
Vladimir Chebotarev
866c8929e2 dbms, contrib: GCC 6 build fixes [#METR-20000] 2016-05-23 03:41:26 +03:00
Alexey Milovidov
ab1b725779 dbms: less dependencies [#METR-2944]. 2016-01-13 03:32:59 +03:00
Alexey Milovidov
13c7d0983a dbms: cutting dependency [#METR-2944].. 2016-01-12 00:46:36 +03:00
Alexey Milovidov
a419ce1052 Preparation to build with in-tree Poco library [#METR-19593]. 2016-01-07 22:52:21 +03:00
Andrey Mironov
49236beee8 dbms: CAST(expression AS type) [#METR-19265] 2015-12-25 15:06:16 +03:00
Alexey Milovidov
c9a8f19def dbms: fixed error with tuples of consts [#METR-18586]. 2015-10-29 00:21:18 +03:00
Alexey Milovidov
23144fb2c1 Revert "dbms: fixed error with ARRAY JOIN, ORDER BY and LIMIT when no aggregation and joined arrays is not used before ORDER BY [#METR-18534]."
This reverts commit d5a33de26e7f69f65d7c056394e6a1d70b3a3f2a.
2015-10-27 03:50:01 +03:00
Alexey Milovidov
6affd9f342 dbms: fixed error with ARRAY JOIN, ORDER BY and LIMIT when no aggregation and joined arrays is not used before ORDER BY [#METR-18534]. 2015-10-23 22:05:21 +03:00
Alexey Milovidov
6f00b5949c dbms: fixed ARRAY JOIN when joined array is not used, but original is used [#METR-18406]. 2015-10-22 23:56:52 +03:00
Alexey Milovidov
fc745dbfa1 dbms: fixed error with removing temporary columns [#METR-18448]. 2015-10-15 19:10:08 +03:00
Alexey Milovidov
a2e53d50ec dbms: addition to prev. revision [#METR-18361]. 2015-10-08 06:49:04 +03:00
Alexey Milovidov
a62fdf0e24 dbms: removing temporary columns early [#METR-18361]. 2015-10-08 06:41:11 +03:00
Alexey Milovidov
382d73270b dbms: Better exception message [#METR-18306]. 2015-10-06 23:03:10 +03:00
Alexey Milovidov
fefd3791f1 Moved files [#METR-17973]. 2015-10-05 03:33:43 +03:00
Alexey Milovidov
0439ef5f7f dbms: implemented LEFT ARRAY JOIN [#METR-17474]. 2015-07-26 13:54:45 +03:00
Alexey Milovidov
c0e029bb1b dbms: renamed ColumnWithNameAndType to ColumnWithTypeAndName for clarification [#METR-2944]. 2015-07-17 04:27:35 +03:00
Alexey Milovidov
26813667eb dbms: allowed to compare Date and DateTime with constant string [#METR-2944]. 2015-06-12 10:46:58 +03:00
Alexey Milovidov
cb562a1d97 dbms: don't calculate constant expressions for every block [#METR-16164]. 2015-05-03 11:07:31 +03:00
Alexey Milovidov
1e55d7aa60 dbms: removed debug output [#METR-2944]. 2015-04-28 07:37:35 +03:00
Alexey Milovidov
9077eb4f3c dbms: preparation [#METR-15418]. 2015-04-19 01:30:43 +03:00
Alexey Milovidov
c89b7dcf92 dbms: implementation of WITH TOTALS inside JOINed subqueries [#METR-15417]. 2015-04-16 12:55:24 +03:00
Alexey Milovidov
7c74a112a0 dbms: tiny improvement [#METR-2944]. 2015-03-25 04:45:42 +03:00
Alexey Milovidov
1e18ff37c6 dbms: fixed error with JOIN [#METR-14847]. 2015-01-31 00:19:35 +03:00
Alexey Milovidov
eee2f04d70 dbms: addition to prev. revision [#METR-2944]. 2014-08-23 00:16:16 +04:00
Alexey Milovidov
bae467c493 dbms: preparation [#METR-2944]. 2014-08-23 00:14:53 +04:00
Alexey Milovidov
a98ea4d558 dbms: tiny modifications [#METR-2944]. 2014-08-22 23:51:55 +04:00
Alexey Milovidov
80f163eb08 dbms: removed debug output [#METR-11370]. 2014-07-16 06:13:26 +04:00
Michael Kolupaev
0a67d151bd dbms: updated all usages of NamesAndTypesPair to new field names. [#METR-10202] 2014-07-09 15:54:26 +04:00
Alexey Milovidov
ecb1cf9b33 dbms: ExpressionAnalyzer: better [#METR-11370]. 2014-07-04 23:13:38 +04:00
Alexey Milovidov
108a7850a5 dbms: improved performance on short queries [#METR-11571]. 2014-06-26 04:58:14 +04:00
Alexey Milovidov
d67b11211a dbms: added support for ANY INNER JOIN [#METR-11370]. 2014-06-18 22:31:35 +04:00
Alexey Milovidov
b8ee43e5c5 dbms: removed debug output [#METR-11370]. 2014-06-17 00:01:42 +04:00
Alexey Milovidov
29e8538f25 dbms: JOINs: development [#METR-11370]. 2014-06-13 13:07:20 +04:00
Alexey Milovidov
870f766798 dbms: JOINs: development [#METR-11370]. 2014-06-13 10:39:15 +04:00
Alexey Milovidov
bfff8ab715 dbms: JOINs: development [#METR-11370]. 2014-06-13 06:05:05 +04:00
Alexey Milovidov
c7c2d4ad8d dbms: better [#METR-11370]. 2014-06-13 01:14:06 +04:00
Alexey Milovidov
a7c8921eb2 dbms: little more readable [#METR-11370]. 2014-06-12 22:41:09 +04:00
Michael Kolupaev
4cee45e004 dbms: better optimization of ARRAY JOIN; tests for it. [#METR-11017] 2014-04-30 23:19:35 +04:00