Commit Graph

54 Commits

Author SHA1 Message Date
Alexey Milovidov
1d4701b0bc Added some warnings from clang's -Weverything 2019-01-04 15:10:00 +03:00
alexey-milovidov
3a2c85a06c
Merge pull request #3717 from amosbird/arrayjoin
Support unaligned array join.
2018-12-14 21:12:24 +03:00
Amos Bird
86f462acff Support unaligned array join
For left ARRAY JOIN, expand to the greatest size. If all sizes are zero,
resize to one which is the same as the old behavior, i.e. emptyArrayToSingle

For non-left ARRAY JOIN, expand to the greatest size but keep empty if all sizes are zero.
2018-12-12 22:08:28 +08:00
alexey-milovidov
7af621f6f7
Merge pull request #3728 from amosbird/join
Versatile StorageJoin
2018-12-10 23:16:53 +03:00
Amos Bird
3cc0829cc1 Function execution with dry runs
This commit prevents stateful functions like rowNumberInAllBlocks from being modified in getHeader() calls.
2018-12-02 19:02:04 +08:00
Amos Bird
65b654a1b6 Versatile StorageJoin
This commit does the following:

1. StorageJoin with simple keys now supports reading
2. StorageJoin can be created with Join settings applied. Syntax is
similar to MergeTree and Kafka
3. Left Any StorageJoin with one simple key can be used as a
dictionary-like structure by function joinGet.

Examples are listed in the related test file.
2018-12-02 16:49:39 +08:00
Alexey Milovidov
5a0feee45e Removed "conditional computations" feature, because it is not ready #2272 2018-11-26 04:39:04 +03:00
Nikolai Kochetov
5a211b1ab7 More comments. 2018-09-27 18:16:47 +03:00
Nikolai Kochetov
d526859011 Added cache for low cardinality function result. [#CLICKHOUSE-3904] 2018-09-25 16:48:52 +03:00
alesapin
0bd32876e9 Initialize compilation_cache pointer in ALL constructors 2018-09-14 13:08:38 +03:00
alexey-milovidov
20d5ddd58c
Merge branch 'master' into alter-update 2018-09-10 17:17:10 +03:00
alesapin
e815260363 CLICKHOUSE-3800: Improve cache and turn on compilation by default 2018-09-07 23:17:40 +03:00
Alexey Zatelepin
133c9c7c37 Merge branch 'master' into alter-update
Conflicts:
	docs/en/query_language/alter.md
2018-09-07 19:11:02 +03:00
Alexander Sapin
03174e131d Merge remote-tracking branch 'upstream/master' 2018-09-06 12:39:42 +03:00
alesapin
2647c13c6b CLICKHOUSE-3800: Fix naming, move compiled cache size setting to config.xml 2018-09-05 14:37:41 +03:00
Nikolai Kochetov
3c6db8ebc1 Fix prewhere with aliased columns. [#CLICKHOUSE-3944] 2018-09-04 21:28:01 +03:00
Alexey Zatelepin
4f91833e67 Merge branch 'master' into alter-update
Conflicts:
	dbms/src/Parsers/ASTIdentifier.cpp
2018-09-04 17:39:08 +03:00
alesapin
11d248ba10 Resolve conflict 2018-09-03 13:11:10 +03:00
alesapin
ac6ab62c6f CLICKHOUSE-3800: Remove use after free of context 2018-08-31 13:27:08 +03:00
alesapin
6e64067a70 CLICKHOUSE-3800: Move cache to context, change hashing algorithm, add drop instruction for compiled expressions cache 2018-08-30 19:31:20 +03:00
Alexey Zatelepin
dc2a4c21e9 execute ALTER UPDATE [#CLICKHOUSE-13] 2018-08-30 16:56:43 +03:00
alesapin
647446c45e CLICKHOUSE-3800: More correct compilated function call counter 2018-08-29 23:05:31 +03:00
alesapin
1a85271702 CLICKHOUSE-3800: Add expression cache 2018-08-28 20:06:42 +03:00
Alexey Milovidov
5b257c588f Enabling -Wshadow [#CLICKHOUSE-2] 2018-08-27 20:42:13 +03:00
Alexey Milovidov
2016374d20 Merging #2226 2018-08-05 10:05:43 +03:00
Nikolai Kochetov
368e7d0b08 Added joined_block_actions to SubqueryForSet for join subquery. [#CLICKHOUSE-3761]
3Added joined_block_actions to join expression action.
2018-07-30 22:41:27 +03:00
Nikolai Kochetov
cc613d7ad3 Added JOIN keys to the list of needed columns for JOIN expression action. 2018-07-27 19:02:20 +03:00
Nikolai Kochetov
6e5e57353a Review fixes. [#CLICKHOUSE-3694] #2156 2018-06-29 19:18:50 +03:00
Nikolai Kochetov
ba4cf6faf0 Merged with master. 2018-06-25 15:08:21 +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
210a389592 Getting rid of measure action, other small fixes applied. 2018-04-30 21:33:32 +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
af7ecd4c4a Move function compilation before insertion of REMOVE_COLUMNs 2018-04-25 16:01:06 +03:00
pyos
b2077a466a Inline jit-compilable functions into other jit-compilable functions 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
Tsarkova Anastasia
12c8014e5c Conditional computations. 2018-04-24 09:16:39 +02:00
Nikolai Kochetov
7a62bb9267 added comments and fixed tests build 2018-04-23 22:41:10 +03: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
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
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
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
fcabe8b888 Removed questionable code (2) [#CLICKHOUSE-2]. 2017-12-26 00:32:33 +03:00
Alexey Milovidov
a71b04e377 Fixed "join_use_nulls" mode #1544 2017-12-25 03:38:45 +03:00