pyos
a1eb938ed2
Inline nullable number constants into compiled code.
...
Also, protect against some segfaults during compilation by checking
correctness of the type returned by compile().
2018-04-28 17:12:00 +03:00
BayoNet
c3a47815ab
Codeblock formatting is fixed
2018-04-28 14:53:59 +03:00
BayoNet
38c0442ee6
Changes in accordance with comments from the developers.
2018-04-28 14:45:37 +03:00
pyos
ccc895d162
Represent nullable types as pairs instead of pointers.
...
Turns out LLVM has insertvalue & extractvalue for struct in registers. This is
faster than pointers because null checks are now subject to more optimizations.
2018-04-28 14:12:23 +03:00
BayoNet
1b0d7361cc
Merge remote-tracking branch 'upstream/master'
2018-04-28 11:13:06 +03:00
BayoNet
7558684e33
Multiple formatting and links fixes.
2018-04-28 10:58:16 +03:00
pyos
5c75342d54
Check nativity of all types *before* calling isCompilable
2018-04-28 01:03:52 +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
alexey-milovidov
093c054b1f
Merge pull request #2263 from luc1ph3r/arbitrary-csv-delimiter
...
Support an arbitrary CSV delimiter
2018-04-27 13:13:09 -07:00
alexey-milovidov
96e2dfa790
Update SettingsCommon.h
2018-04-27 13:12:26 -07:00
pyos
49b61cd27d
Refactor LLVMFunction to make extending to DataTypeNullable easier
2018-04-27 18:44:38 +03:00
Ivan Blinkov
98d4f80820
Merge branch 'master' of https://github.com/yandex/ClickHouse into CLICKHOUSE-2720
2018-04-27 10:00:22 +03:00
Ivan Zhukov
a9653e5759
Add a test for CSV input and output formatting
2018-04-27 03:49:44 +03:00
Vitaliy Lyudvichenko
b43e02cf4a
Update CHANGELOG_RU.md
2018-04-27 03:05:05 +03:00
Vitaliy Lyudvichenko
03eea193bc
Update CHANGELOG.md
2018-04-27 03:04:39 +03:00
Vitaliy Lyudvichenko
921b3c041d
Added EN changelog for 1.1.54380 version
2018-04-27 00:34:09 +03:00
Vitaliy Lyudvichenko
220398e47c
Update CHANGELOG_RU.md
2018-04-27 00:06:01 +03:00
alexey-milovidov
f5d9123d63
Merge pull request #2296 from proller/fix8
...
Test: fill CLICKHOUSE_CONFIG from args.configserver
2018-04-26 13:59:35 -07:00
proller
bef63d1dd0
Test: fill CLICKHOUSE_CONFIG from args.configserver
2018-04-26 23:02:10 +03:00
Vitaliy Lyudvichenko
e152f223c9
Fix nodes leak in case of session expiration. [#CLICKHOUSE-2]
2018-04-26 22:46:45 +03:00
Vitaliy Lyudvichenko
ed25e6d634
Fixed tests isolation. [#CLICKHOUSE-2]
2018-04-26 22:46:45 +03:00
pyos
a9e0b6de9f
Use system LLVMConfig.cmake with minor tweaks.
...
Should fix Travis build, finally.
2018-04-26 22:45:39 +03:00
Vitaliy Lyudvichenko
af82c78a45
Fix nodes leak in case of session expiration. [#CLICKHOUSE-2]
2018-04-26 22:43:51 +03:00
Vitaliy Lyudvichenko
4695511b58
Fixed tests isolation. [#CLICKHOUSE-2]
2018-04-26 22:21:32 +03:00
Ivan Zhukov
4094e21be5
Code review
2018-04-26 20:41:43 +03:00
pyos
b4d527ee85
Inline compile-time constants into jitted functions.
2018-04-26 14:30:16 +03:00
Ivan Blinkov
65accb230f
Merge branch 'master' of https://github.com/yandex/ClickHouse into CLICKHOUSE-2720
2018-04-26 12:11:50 +03:00
pyos
c95f8a669f
Throw in untyped versions of IFunction::{isCompilable,compile}
...
IFunction inherits IFunctionBase for some reason despite not actually knowing
the types, so these two methods make no sense. The versions with DataTypes&
as an argument should be used instead.
2018-04-25 20:07:19 +03:00
pyos
9ae5fe1b6d
Minor style fixes
2018-04-25 18:33:58 +03:00
pyos
854f85dd9b
Put #if USE_EMBEDDED_COMPILER in ExpressionJIT.{cpp,h}
2018-04-25 18:19:22 +03:00
pyos
d59b0d7ec0
Add IColumn::getRawData to fixed-contiguous columns
2018-04-25 18:16:48 +03:00
pyos
6c275c27d0
Remove an unnoticed debug return
2018-04-25 16:44:24 +03:00
pyos
c419d5a1a5
Poison only columns actually used by ARRAY_JOIN and JOIN
2018-04-25 16:01:06 +03:00
pyos
5482282943
Implement informational methods for LLVMFunction
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
162a0c8b33
Fix some comments' style
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
Vitaliy Lyudvichenko
0957fd08a6
Update CHANGELOG_RU.md
2018-04-25 15:16:02 +03:00
Vitaliy Lyudvichenko
be10512066
Add RU changelog for v1.1.54380
2018-04-25 15:09:01 +03:00
pyos
1bece1de46
Support nullable columns (with default behavior) in jitted functions
2018-04-25 13:37:26 +03:00
pyos
4bd0906613
Fix some comments
2018-04-25 13:37:26 +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
df2d2e0b25
Tweak the jit compilation API to be more amenable to lazy computation
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
3810173103
Remove IFunction::createResultColumn.
...
Given that the list of supported types is hardcoded in
LLVMContext::Data::toNativeType, this method is redundant because
LLVMPreparedFunction can create a ColumnVector itself.
2018-04-25 13:37:26 +03:00
pyos
6b526f784c
Enable the default set of LLVM optimization passes
...
I honestly can't tell if they work. LLVM has surprisingly bad API documentation.
2018-04-25 13:37:26 +03:00
pyos
8c8a8f9c0f
Extend the test jit-compilable function to arbitrary numbers
2018-04-25 13:37:25 +03:00
pyos
5f1bf11ede
Implement a loop over the columns in jit-compiled code
2018-04-25 13:37:25 +03:00
pyos
407008a4d9
Separate jit-compilability checks from actual compilation
2018-04-25 13:37:25 +03:00