Commit Graph

11299 Commits

Author SHA1 Message Date
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
Vitaliy Lyudvichenko
b46a2a6eab Fixed infinite sleeping of low-priority queries. [#CLICKHOUSE-2] 2017-07-09 03:53:13 +03:00
Alexey Milovidov
4b31fd9a9c Style [#CLICKHOUSE-2]. 2017-07-08 19:09:32 +03:00
Alexey Milovidov
3ff4c8cf3e Fixed errors in readme [#CLICKHOUSE-3]. 2017-07-07 19:50:50 +03:00
Alexey Milovidov
4e2fb88469 Fixed bad file permission [#CLICKHOUSE-3]. 2017-07-07 19:44:23 +03:00
Alexey Milovidov
65456fb39b Fixed error on the website (tnx. Avriche) [#CLICKHOUSE-3] 2017-07-07 19:27:52 +03:00
Vitaliy Lyudvichenko
7150e9447a Fixed multiIf in case of empty arguments. [#CLICKHOUSE-3119] 2017-07-07 17:42:37 +03:00
Nikolai Kochetov
2f08ba9e94 added FormatSettingsJSON.h 2017-07-06 18:11:12 +03:00
Guillaume Tassery
2ec96fe822 Make UUID as a strong type 2017-07-06 16:50:29 +02:00
Nikolai Kochetov
d6001618f0 disabled exception during overriding settings with same value in readonly mode [#CLICKHOUSE-3041] 2017-07-06 17:42:31 +03:00
robot-metrika-test
2d478cd371 Auto version update to [54248] 2017-07-05 21:47:14 +03:00
Liu Cong
08e43b149a Fix a typo of 'Columns/ColumnVector.h': metod => method 2017-07-05 20:46:37 +03:00
Nikolai Kochetov
c99a9b1c55 moved FilterColumnsBlockInputStream implementation to .cpp [#CLICKHOUSE-3111] 2017-07-05 20:14:17 +03:00
alexey-milovidov
85bdb472ea Update FilterColumnsBlockInputStream.h 2017-07-05 20:14:17 +03:00
alexey-milovidov
7bc0e40135 Update FilterColumnsBlockInputStream.h 2017-07-05 20:14:17 +03:00
Nikolai Kochetov
f1ec4cd863 added FilterColumnsBlockInputStream into StorageMerge [#CLICKHOUSE-3111] 2017-07-05 20:14:17 +03:00
robot-metrika-test
f1ce8c437b Auto version update to [54247] 2017-07-05 19:42:46 +03:00
Alexey Milovidov
66638c4158 Fixed error in StorageDictionary [#CLICKHOUSE-2]. 2017-07-05 19:36:45 +03:00
Guillaume Tassery
c6a5083419 Fix comparison of UInt128 to Float64 2017-07-05 18:29:16 +02:00
Nikolai Kochetov
13b275a174 updated FormatSettingsJSON 2017-07-05 19:28:57 +03:00
robot-metrika-test
25e9a1f7a6 Auto version update to [54246] 2017-07-05 18:22:35 +03:00
Nikolay Volosatov
e7886ee79a fix ipv6 for server docker image 2017-07-05 17:11:22 +03:00
Guillaume Tassery
b90734920e Adapt UInt128 operator 2017-07-05 12:09:24 +02:00
Nikolai Kochetov
ebbca0001f added FormatSettingsJSON [#CLICKHOUSE-3060] 2017-07-04 19:26:38 +03:00
Guillaume Tassery
aeeb81fadf Rename field in UInt128 2017-07-04 18:10:36 +02:00
Alexey Milovidov
4852863238 Added a note about testing versions [#CLICKHOUSE-2]. 2017-07-04 15:53:50 +03:00
Alexey Milovidov
032d12d431 Fixed translation error [#CLICKHOUSE-2]. 2017-07-04 15:46:31 +03:00
Guillaume Tassery
cba9815981 Change Uuid to UUID datatype and make UInt128 a generic type 2017-07-04 12:42:53 +02:00
Alexey Milovidov
06f343c89e Misc [#CLICKHOUSE-3115]. 2017-07-04 00:04:40 +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 Milovidov
15cf838250 Cosmetics [#CLICKHOUSE-2] 2017-07-03 21:29:56 +03:00
Alexey Milovidov
c170b6f0d2 Removed useless code [#CLICKHOUSE-3111]. 2017-07-03 20:34:27 +03:00
Guillaume Tassery
d6ab06437a Remove mention of UUID type for dictonnary 2017-07-03 18:08:32 +02:00
Alexey Milovidov
5a015a1475 Misc fixes after merge [#CLICKHOUSE-3]. 2017-07-03 17:17:46 +03:00
Alexey Milovidov
a38bf1cbb3 Fixed bad code after merge [#CLICKHOUSE-3]. 2017-07-03 17:16:20 +03:00
Alexey Milovidov
320b1e635b Fixed build after merge [#CLICKHOUSE-3]. 2017-07-03 17:14:44 +03:00
Alexey Milovidov
43daa720a4 Fixed build after merge [#CLICKHOUSE-3]. 2017-07-03 17:09:32 +03:00
Marek Vavruša
d27bed228b Parser: fix CREATE VIEW IF EXISTS #934
The else branch forgot to consume whitespace after
CREATE token, and after VIEW token.
2017-07-03 17:01:43 +03:00
Maxim Fridental
e30c9242bc Implement functions findClusterIndex and findClusterValue. 2017-07-03 17:01:21 +03:00
BayoNet
f17c3afef7 New part "Server configuration parameters" of the document is added.
Other changes are made related to this new part.
2017-07-03 17:00:45 +03:00
Ilya Khomutov
afdd286846 fix typo in russian docs 2017-07-03 17:00:03 +03:00
Alexey Milovidov
65cde992f5 Merge branch 'master' of github.com:yandex/ClickHouse 2017-07-02 23:51:40 +03:00
Keiji Yoshida
71ac924572 Fix a dead link on website/index.html 2017-07-01 18:42:56 +03:00
Guillaume Tassery
525851ec68 sync master 2017-06-30 22:21:42 +02:00
Guillaume Tassery
1231952fca Implement UUID type and toUuid function 2017-06-30 22:01:27 +02:00
Alexey Zatelepin
9de4d8facb allow loading missing setting from config [#CLICKHOUSE-3091] 2017-06-28 19:56:35 +03:00
Alexey Milovidov
21c9ede548 Fixed garbage [#CLICKHOUSE-2]. 2017-06-28 16:20:57 +03:00
robot-metrika-test
44cdfb4c76 Auto version update to [54244] 2017-06-28 15:35:06 +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
Alexey Milovidov
2b67782845 Applied clang-format [#CLICKHOUSE-2]. 2017-06-28 15:30:23 +03:00