Commit Graph

1914 Commits

Author SHA1 Message Date
Alexey Zatelepin
89939a685a Stream row sources from disk for vertical merge [#CLICKHOUSE-3118] 2017-07-09 21:57:06 +03:00
Marek Vavruša
ff73394124 PKCondition: infer index use with pk subexpression
By default only constraints explicitly matching
primary key expression (or expression wrapped in
a monotonic function) are eligible for part and
range selection. So for example, if index is:

(toStartOfHour(dt), UserID)

Then a query such as this resorts to full scan:

SELECT count() FROM t WHERE dt = now()

Intuitively, only parts with toStartOfHour(now())
could be selected, but it is less trivial to prove.
The primary key currently can be wrapped in a chain
of monotonic functions, so following would work:

toStartOfHour(dt) = toStartOfHour(now()) AND dt = now()

It must be however explicitly stated, if we wanted
to infer that we’d have to know the inverse function,
and prove that the inverse function is monotonic
on given interval. This is not practical as
there is no inverse function that for example undos
rounding, it isn’t strictly monotonic.

There are however functions that don’t transform
output range and preserve monotonicity on the
complete input range, such as rounding or casts
to a same or wider numeric type. This eliminates
the need to find inverse function, as no check for monotonicity over arbitrary interval is needed,
and thus makes this optimisation possible.
2017-07-09 17:13:51 +03:00
Nikolai Kochetov
f1ec4cd863 added FilterColumnsBlockInputStream into StorageMerge [#CLICKHOUSE-3111] 2017-07-05 20:14:17 +03:00
Alexey Milovidov
66638c4158 Fixed error in StorageDictionary [#CLICKHOUSE-2]. 2017-07-05 19:36:45 +03:00
Alexey Milovidov
032d12d431 Fixed translation error [#CLICKHOUSE-2]. 2017-07-04 15:46:31 +03:00
Alexey Milovidov
727ce48c23 Fixed error with selecting number of threads for distributed query processing [#CLICKHOUSE-3115]. 2017-07-04 00:04:10 +03:00
Alexey Zatelepin
9de4d8facb allow loading missing setting from config [#CLICKHOUSE-3091] 2017-06-28 19:56:35 +03:00
Alexey Zatelepin
7cf413dea8 Revert "Raised up limit on max size of parts to merge [#CLICKHOUSE-3091]."
This reverts commit 425156e32c.
2017-06-28 15:32:52 +03:00
Vitaliy Lyudvichenko
97f7b46ebd Fixed CLEAR COLUMN test in case of deduplication rollback. [#CLICKHOUSE-2] 2017-06-26 19:34:38 +03:00
Vitaliy Lyudvichenko
9c0da6e698 Addition to previous commit. Fix error code, rename test tables. [#CLICKHOUSE-2] 2017-06-26 17:35:26 +03:00
Vitaliy Lyudvichenko
49cbc33a6b Fix ZK exception in case of concurrent INSERTs in new partition. [#CLICKHOUSE-2] 2017-06-26 17:21:25 +03:00
Vitaliy Lyudvichenko
b53d6976b3 Fix build after merge. [#CLICKHOUSE-2] 2017-06-26 15:47:15 +03:00
Alexey Milovidov
a48a21f593 Merge branch 'master' into CLICKHOUSE-2896 2017-06-26 11:54:58 +03:00
alexey-milovidov
e122cf0bcf Merge pull request #914 from yandex/database-dictionary
DatabaseDictionary
2017-06-25 22:02:45 +03:00
Alexey Milovidov
8f145da1e8 Preparation [#CLICKHOUSE-2]. 2017-06-25 06:43:59 +03:00
Alexey Milovidov
dbc61a6a43 Added support for SQL-style quoting [#CLICKHOUSE-20]. 2017-06-25 06:43:37 +03:00
Alexey Milovidov
275a1d4651 Improvement [#CLICKHOUSE-3091]. 2017-06-25 05:48:38 +03:00
Alexey Milovidov
90a1ae1062 Fixed error in prev. revision [#CLICKHOUSE-3091]. 2017-06-25 05:22:10 +03:00
Alexey Milovidov
516b095423 Fixed error in prev. revision [#CLICKHOUSE-3091]. 2017-06-25 04:54:25 +03:00
Alexey Milovidov
8228acd3ea Removed obsolete code that was relevant only in extremely rare case of transforming CollapsingMergeTree to ReplicatedCollapsingMergeTree through ATTACHing data parts and while some considerations about data order in table is important [#CLICKHOUSE-3091]. 2017-06-25 03:51:51 +03:00
Alexey Milovidov
3c660fd65b Fixed translation errors [#CLICKHOUSE-3091]. 2017-06-25 03:17:08 +03:00
Alexey Milovidov
28e9e06992 Preparation: locking block number only after write to filesystem; removed obsolete code [#CLICKHOUSE-3091]. 2017-06-25 03:01:10 +03:00
Alexey Milovidov
c7f35997f5 Removed unused variable [#CLICKHOUSE-2]. 2017-06-25 01:36:43 +03:00
proller
4db8d09de9 Reorganize includes. part 1 (#921)
* Make libunwind optional. Allow use custom libcctz

* fix

* Fix

* fix

* Update BaseDaemon.cpp

* Update CMakeLists.txt

* Reorganize includes. part 1

* Update dbms_include.cmake

* Reorganize includes. part 2

* Reorganize includes. part 3

* dbms/src/Common/ThreadPool -> libs/libcommon

* Reorganize includes. part 4

* Fix print_include_directories

* Update thread_creation_latency.cpp

* Update StringRef.h
2017-06-23 23:22:35 +03:00
Nikolai Kochetov
adb632319d DatabaseDictionary creates new storage for every create table query; drop table works untill restart 2017-06-23 18:55:45 +03:00
Alexey Milovidov
061c214c16 Fixed error [#CLICKHOUSE-3074]. 2017-06-23 09:57:55 +03:00
Alexey Milovidov
f409cad0ac Miscellaneous [#CLICKHOUSE-3091]. 2017-06-23 09:18:00 +03:00
Alexey Milovidov
7d732343eb Fixed error in prev. revision [#CLICKHOUSE-3091]. 2017-06-22 22:52:06 +03:00
Alexey Milovidov
425156e32c Raised up limit on max size of parts to merge [#CLICKHOUSE-3091]. 2017-06-22 21:29:40 +03:00
Alexey Milovidov
6eb06774d3 Addition to prev. revision [#CLICKHOUSE-3091]. 2017-06-22 19:29:15 +03:00
Alexey Milovidov
c96719685c Lowered max_delay_to_insert to one second, because higher values are non practical and could be harmful for usual failover logic in client apps [#CLICKHOUSE-3091]. 2017-06-22 19:17:01 +03:00
Alexey Milovidov
941c281221 Updated comment [#CLICKHOUSE-3091]. 2017-06-22 19:09:03 +03:00
Alexey Milovidov
22e7070fb0 Merge branch 'master' of github.com:yandex/ClickHouse 2017-06-22 19:07:57 +03:00
Alexey Milovidov
bb7fc04e2b Whitespaces [#CLICKHOUSE-2]. 2017-06-22 19:07:52 +03:00
Nikolai Kochetov
4c114bc3a1 added DatabaseDictionary 2017-06-22 18:44:19 +03:00
Vitaliy Lyudvichenko
d7db235269 Better names and log messages. [#CLICKHOUSE-2896] 2017-06-22 18:32:09 +03:00
Vitaliy Lyudvichenko
99f502d5e0 Support OPTIMIZE query on non-leader replica. [#CLICKHOUSE-2] 2017-06-22 18:01:08 +03:00
proller
51b41aa0e3 Fix build 2017-06-22 17:14:13 +03:00
Vitaliy Lyudvichenko
eff3588f28 Rename DROP COLUMN FROM PARTITION -> CLEAR COLUMN IN PARTITION. [#CLICKHOUSE-2896] 2017-06-22 16:18:19 +03:00
Alexey Milovidov
4af5a9c7ba Merge branch 'cache_parts_that_cannot_be_merged' 2017-06-22 03:56:44 +03:00
Alexey Milovidov
946c275dfb Added missing case for broken files in StorageDistributed [#CLICKHOUSE-3091]. 2017-06-22 03:56:17 +03:00
Alexey Milovidov
db546dc827 Caching parts that cannot be merged for some time [#CLICKHOUSE-3091]. 2017-06-22 03:28:44 +03:00
Vitaliy Lyudvichenko
53adb891b3 Add replicated DROP COLUMN FROM partition for optimistic case. [#CLICKHOUSE-2896] 2017-06-22 00:56:38 +03:00
Alexey Milovidov
7bdc87adf0 Loosened threshold on broken parts in filesystem [#CLICKHOUSE-3076]. 2017-06-21 22:11:11 +03:00
Alexey Milovidov
5c322f5756 Loosened threshold on amount of replica inconsistency to refuse server startup [#CLICKHOUSE-3076]. 2017-06-21 22:07:08 +03:00
Alexey Milovidov
6df5d556e5 Changed namespace [#DEVTOOLS-3381]. 2017-06-21 11:35:38 +03:00
Alexey Milovidov
604de2bfeb Better [#DEVTOOLS-3381]. 2017-06-21 04:24:05 +03:00
Vitaliy Lyudvichenko
534b766250 CREATE of MergeTree checks that data dir is empty. [#CLICKHOUSE-3083] 2017-06-20 10:49:18 +03:00
Vitaliy Lyudvichenko
a098fb170a Avoid creating multiple global Context. [#CLICKHOUSE-3083] 2017-06-20 10:49:18 +03:00
Георгий Кондратьев
47161f8425 Specify all link dependencies [#DEVTOOLS-3381]
Tested with:

export LDFLAGS="-Wl,--no-undefined"
cmake -DUSE_STATIC_LIBRARIES=OFF -DBUILD_SHARED_LIBS=ON
2017-06-20 00:53:12 +03:00