Commit Graph

2419 Commits

Author SHA1 Message Date
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
pyos
e96a5e8344 Implement JIT compilation, without a loop for now.
It actually seems to work, so long as you only have one row that is. E.g.

    > select something(cast(number + 6 as Float64), cast(number + 2 as Float64)) from system.numbers limit 1';
    8

with this IR:

    define void @"something(CAST(plus(number, 6), 'Float64'), CAST(plus(number, 2), 'Float64'))"(void**, i8*, double*) {
    entry:
      %3 = load void*, void** %0
      %4 = bitcast void* %3 to double*
      %5 = load double, double* %4
      %6 = getelementptr void*, void** %0, i32 1
      %7 = load void*, void** %6
      %8 = bitcast void* %7 to double*
      %9 = load double, double* %8
      %10 = fadd double %5, %9
      store double %10, double* %2
      ret void
    }
2018-04-25 13:37:25 +03:00
pyos
b398ffbaba Map all number types to LLVM types.
The example from the previous commit doesn't need a cast to Float64 anymore.
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
Alexey Milovidov
499b67642f Allow to startup with replicated tables in readonly mode when there is no ZooKeeper configured [#CLICKHOUSE-2] 2018-04-21 21:41:06 +03:00
Alexey Milovidov
c087449023 Fixed error #2246 2018-04-20 22:14:04 +03:00
Alexey Milovidov
6b88a2a7a5 Better info in log #2246 2018-04-20 04:14:04 +03:00
Alexey Milovidov
70be882b64 Renamed PK to Key where it's appropriate #2246 2018-04-20 03:27:25 +03:00
Alexey Milovidov
d71b3a95ef Renamed PK to Key where it's appropriate #2246 2018-04-20 03:20:50 +03:00
Alexey Milovidov
ce0ac3f8f8 Fixed error with Sets, part 2 #2246 2018-04-20 00:34:04 +03:00
Alexey Milovidov
a6c194fa6d Insignificant change #2246 2018-04-19 23:32:56 +03:00
Alexey Milovidov
41428e4a11 Allowed to read files by table function "file" inside "user_files_path" #2164 2018-04-19 08:32:09 +03:00
Alexey Milovidov
b4bf2f0c09 Added comment [#CLICKHOUSE-2] 2018-04-19 00:14:47 +03:00
Alexey Milovidov
b6fcb808fe Updated old code [#CLICKHOUSE-2] 2018-04-18 23:18:18 +03:00
Alexey Milovidov
3eff0184fa Added set size checking when set from subquery is used for index; removed harmful feature for special support of (a, b) IN (SELECT (a, b)) instead of (a, b) IN (SELECT a, b) [#CLICKHOUSE-2] 2018-04-18 22:38:40 +03:00
Alexey Milovidov
3bb2fa4702 Fixed bad code [#CLICKHOUSE-2] 2018-04-18 21:44:02 +03:00
alexey-milovidov
089e71d9a5
Merge pull request #2235 from yandex/small-enhancements
Small enhancements
2018-04-17 22:45:01 +03:00
Vitaliy Lyudvichenko
400ad55754 Support allow_databases in distributed DDL. [#CLICKHOUSE-3]
Resolves #2189
2018-04-17 22:33:58 +03:00
Vitaliy Lyudvichenko
5536bf202c Allow SELECT FROM system.processes while max_queries limit is exceeded. [#CLICKHOUSE-3670] 2018-04-17 20:08:15 +03:00
Vitaliy Lyudvichenko
604c7071c3 Fixed a long lock of ProcessList when KILL QUERY is called. [#CLICKHOUSE-3706] 2018-04-17 18:16:32 +03:00
Vitaliy Lyudvichenko
f642d0828e Avoid freezing of KILL QUERY. [#CLICKHOUSE-3706] 2018-04-17 17:29:52 +03:00
alexey-milovidov
17dd218338
Merge pull request #2202 from proller/fix15
CLICKHOUSE-3700: Fix empty password on replica query
2018-04-16 23:18:47 +03:00
proller
42cb1540a1
Update ClientInfo.h 2018-04-16 23:12:44 +03:00
Nikolai Kochetov
9e05052c2a merged with master 2018-04-16 18:35:11 +03:00
Nikolai Kochetov
7b8a306e34 minor fixes 2018-04-16 18:11:13 +03:00
proller
157067b127 CLICKHOUSE-3700: Fix empty password on replica query 2018-04-10 17:49:52 +03:00
proller
c26b3bdef1
Fix split shared build; fix build without system odbc libs (#2191)
* Fix split shared build

* Fix build without system odbc libs

* Move dbms/src/Common/iostream_debug_helpers.h -> libs/libcommon/include/common/iostream_debug_helpers.h

* Fix build with libiodbc
2018-04-09 06:52:39 -07:00
Alexey Milovidov
f02239a307 Fixed linkage of tests [#CLICKHOUSE-2] 2018-04-08 07:54:23 +03:00
proller
07b81c875e CLICKHOUSE-3444: show error for old query on replace_running_query (#2127)
* Add tests

* Fix test

* Fix test build

* CLICKHOUSE-3444: show error for replace_running_query

* fix naming

* fix

* fix test

* Update IProfilingBlockInputStream.cpp
2018-04-07 06:49:49 +03:00
Alexey Milovidov
30dd11f8ca Removed (obsolete) special handling for Arrays in the left hand side of IN (continued) #2113 2018-04-06 03:25:14 +03:00
Alexey Milovidov
6452a3bb76 Removed (obsolete) special handling for Arrays in the left hand side of IN [#CLICKHOUSE-2] 2018-04-05 23:52:01 +03:00
Nikolai Kochetov
dc22b881a7 added columns_added_by_join into in with pk [#CLICKHOUSE-3680] 2018-04-04 22:38:42 +03:00
Nikolai Kochetov
fde23f7975 added array_join_columns [#CLICKHOUSE-3680] 2018-04-04 22:38:42 +03:00
Nikolai Kochetov
7d0602c279 added columns from array join to aggregated_columns [#CLICKHOUSE-3680] 2018-04-04 22:38:42 +03:00
Alexey Milovidov
76e822274a Better exception messages [#CLICKHOUSE-2] 2018-04-04 00:29:11 +03:00
Nikolai Kochetov
4f7d262997 added aggregated_columns to mayBenefitFromIndexForIn [#CLICKHOUSE-3680] 2018-04-04 00:17:22 +03:00
Alexey Milovidov
f5652b4477 Modifications after removing libzookeeper; initialize ZooKeeper session lazily [#CLICKHOUSE-2] 2018-04-03 22:43:33 +03:00
Alexey Milovidov
08170d0d77 Modifications after removing libzookeeper [#CLICKHOUSE-2] 2018-04-03 21:24:18 +03:00
Alexey Milovidov
2310bd7947 Miscellaneous [#CLICKHOUSE-2] 2018-04-03 20:35:48 +03:00
Alexey Milovidov
205d648e0d Fixed error with timeout of distributed queries, part 1 #217 [#CLICKHOUSE-1942] 2018-04-02 21:01:25 +03:00
alexey-milovidov
428ee63a04
Merge branch 'master' into libzookeeper-rewrite 2018-04-01 17:31:20 +03:00
alexey-milovidov
10e5d63d76
Merge pull request #2131 from ClickHouse-Ninja/system-log-prepare-table-on-each-flush
SystemLog: проверка структуры и существования таблицы при каждом flush
2018-03-29 23:55:14 +03:00
alexey-milovidov
30838f4d9f
Update SystemLog.h 2018-03-29 23:54:57 +03:00
Kirill Shvakov
b742908731 SystemLog: execute prepareTable() on each flush
Merge remote-tracking branch 'upstream/master' into system-log-prepare-table-on-each-flush

#2131 deleted excessive logging

Revert "#2131 deleted excessive logging"

This reverts commit d78a46d958.

Revert "SystemLog: execute prepareTable()  on each flush"

This reverts commit 7f60bb0a9b.

SystemLog: execute prepareTable() on each flush
2018-03-29 16:57:16 +03:00
Vitaliy Lyudvichenko
63eee94319
Add max_network_bandwidth_for_all_users setting. [#CLICKHOUSE-2] (#2137) 2018-03-29 16:24:36 +03:00
proller
a6f9df105c Allow use encryption for distributed tables (#2065)
* Allow use encryption for distributed tables

* wip

* fix

* rename encryption to secure

* Fix DirectoryMonitor with +secure

* fix

* fix

* Update DirectoryMonitor.cpp

* Update DirectoryMonitor.cpp
2018-03-29 04:41:06 +03:00
alexey-milovidov
a220a43b8e
Merge branch 'master' into fix-detach-database 2018-03-29 03:01:07 +03:00
alexey-milovidov
ca5fd1e9de
Merge pull request #2033 from yandex/show-create-database
Show create database
2018-03-28 05:29:36 +03:00
alexey-milovidov
e3cbd3306c
Merge pull request #2081 from yandex/stricter-mutable-column-semantic-2
&& - qualified IColumn::mutate
2018-03-28 05:27:35 +03:00