Commit Graph

151 Commits

Author SHA1 Message Date
Alexey Zatelepin
dc5809ed8d get rid of unneeded variable [#CLICKHOUSE-3000] 2017-08-31 23:32:03 +03:00
Alexey Zatelepin
645e4b7a53 generalize MinMax index [#CLICKHOUSE-3000] 2017-08-31 23:32:03 +03:00
Alexey Zatelepin
be1c62d7f8 split partition and minmax index [#CLICKHOUSE-3000] 2017-08-31 23:32:03 +03:00
Alexey Zatelepin
99969ab77a Introduce MergeTreePartitionIndex. Isolate its loading code. [#CLICKHOUSE-3000] 2017-08-31 23:32:03 +03:00
Alexey Milovidov
8d7937cc30 Fixed bad translation [#CLICKHOUSE-2]. 2017-08-29 17:08:25 +03:00
Alexey Zatelepin
f25f0cd759 reduce number of places where partitioning by month is assumed [#CLICKHOUSE-3000] 2017-08-15 22:30:52 +03:00
proller
700d4e0904 Fix boost 1.64 and gcc7+ compile errors (#1040)
* PerformanceTest: use getMultiple*FromConfig, fix debug helpers

* Missing file

* clnag-format of Split ComplexKeyCacheDictionary

* Requested changes

* Fix boost 1.64 and gcc7+ compile errors

* More fixes
2017-07-28 23:41:51 +03:00
alexey-milovidov
d4d266fa18 ColumnConst unification (#1011)
* ColumnConst: unification (incomplete) [#CLICKHOUSE-3150].

* ColumnConst: unification (incomplete) [#CLICKHOUSE-3150].

* ColumnConst: unification (incomplete) [#CLICKHOUSE-3150].

* ColumnConst: unification (incomplete) [#CLICKHOUSE-3150].

* ColumnConst: unification (incomplete) [#CLICKHOUSE-3150].

* ColumnConst: unification (incomplete) [#CLICKHOUSE-3150].

* ColumnConst: unification (incomplete) [#CLICKHOUSE-3150].

* ColumnConst: unification (incomplete) [#CLICKHOUSE-3150].

* ColumnConst: unification (incomplete) [#CLICKHOUSE-3150].

* ColumnConst: unification (incomplete) [#CLICKHOUSE-3150].

* ColumnConst: unification (incomplete) [#CLICKHOUSE-3150].

* ColumnConst: unification (incomplete) [#CLICKHOUSE-3150].

* ColumnConst: unification (incomplete) [#CLICKHOUSE-3150].

* ColumnConst: unification (incomplete) [#CLICKHOUSE-3150].

* Fixed error in ColumnArray::replicateGeneric [#CLICKHOUSE-3150].

* ColumnConst: unification (incomplete) [#CLICKHOUSE-3150].

* ColumnConst: unification (incomplete) [#CLICKHOUSE-3150].

* ColumnConst: unification (incomplete) [#CLICKHOUSE-3150].

* ColumnConst: unification (incomplete) [#CLICKHOUSE-3150].

* ColumnConst: unification (incomplete) [#CLICKHOUSE-3150].

* ColumnConst: unification (incomplete) [#CLICKHOUSE-3150].

* ColumnConst: unification (incomplete) [#CLICKHOUSE-3150].

* ColumnConst: unification (incomplete) [#CLICKHOUSE-3150].

* ColumnConst: unification (incomplete) [#CLICKHOUSE-3150].

* ColumnConst: unification (incomplete) [#CLICKHOUSE-3150].

* ColumnConst: unification (incomplete) [#CLICKHOUSE-3150].

* ColumnConst: unification (incomplete) [#CLICKHOUSE-3150].

* ColumnConst: unification (incomplete) [#CLICKHOUSE-3150].
2017-07-21 09:35:58 +03:00
Alexey Milovidov
9406b6a5aa Get rid of ASTSet, because it is not really an AST and it lead to bugs [#CLICKHOUSE-3148]. 2017-07-15 06:48:36 +03:00
Nikolai Kochetov
8c65d6013e added preferred_max_column_in_block_size_bytes setting, added filtration ratio prediction [#CLICKHOUSE-3065] 2017-07-13 21:45:09 +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
Alexey Milovidov
80080f1ad6 Small refinements [#CLICKHOUSE-2]. 2017-06-02 18:54:39 +03:00
Alexey Milovidov
a77369d082 Preparation: Storages do not modify query [#CLICKHOUSE-31]. 2017-05-25 04:12:41 +03:00
Alexey Milovidov
48f65e9097 Preparation: untangling [#CLICKHOUSE-31]. 2017-05-25 00:06:29 +03:00
Vitaliy Lyudvichenko
f519100946 Split base and derived class implementations. [#CLICKHOUSE-2902] 2017-04-15 06:48:24 +03:00
Vitaliy Lyudvichenko
4b566304ca Tests are passed. [#CLICKHOUSE-2902] 2017-04-15 06:48:24 +03:00
Vitaliy Lyudvichenko
82af2278fc Avoid code duplication near MergeTreeBlockInputStream. [#CLICKHOUSE-2]
Add preferred_block_size_bytes for non-uniform reader. [#CLICKHOUSE-2902]

Make enums test more deterministic. [#CLICKHOUSE-2]

Refactored MergeTree readers.

Tabs -> spaces.

Move include/DB/ -> src/.
2017-04-15 06:48:24 +03:00
Alexey Milovidov
310736cd7e Moved headers and sources to same place [#CLICKHOUSE-3]. 2017-04-01 12:22:42 +03:00
Alexey Milovidov
137ad95929 Changed tabs to spaces in code [#CLICKHOUSE-3]. 2017-04-01 11:35:09 +03:00
Alexey Milovidov
f9b4b2012f Removed zero-width spaces [#CLICKHOUSE-2]. 2017-03-13 21:02:45 +03:00
Alexey Milovidov
26788e3938 Formatting [#CLICKHOUSE-2]. 2017-03-13 21:01:46 +03:00
Alexey Milovidov
a6a18db6da Merge branch 'translate/comments' of https://github.com/f1yegor/ClickHouse into f1yegor-translate/comments 2017-03-13 20:51:22 +03:00
f1yegor
401425bb89 translate comments 2017-03-12 20:18:07 +01:00
Alexey Milovidov
7532a1d564 Added support for NULLS FIRST and LAST in ORDER BY [#CLICKHOUSE-2882]. 2017-03-12 15:56:59 +03:00
alexey-milovidov
6d5bfc8c6f Refactoring of numeric DataTypes (#581)
* Better code [#CLICKHOUSE-2].

* Addition to prev. revision [#CLICKHOUSE-2].

* Addition to prev. revision [#CLICKHOUSE-2].

* Addition to prev. revision [#CLICKHOUSE-2].
2017-03-12 14:13:45 +04:00
Alexey Milovidov
5c1ae060a4 Miscellaneous [#CLICKHOUSE-2761]. 2017-01-20 05:22:18 +03:00
Alexey Milovidov
58e5dad1a1 Squashed commit of the following:
commit e712f469a5
Author: Alexey Milovidov <milovidov@yandex-team.ru>
Date:   Sat Jan 14 11:59:13 2017 +0300

    Less dependencies [#CLICKHOUSE-2]

commit 2a00282308
Author: Alexey Milovidov <milovidov@yandex-team.ru>
Date:   Sat Jan 14 11:58:30 2017 +0300

    Less dependencies [#CLICKHOUSE-2]

commit 9e06f407c8
Author: Alexey Milovidov <milovidov@yandex-team.ru>
Date:   Sat Jan 14 11:55:14 2017 +0300

    Less dependencies [#CLICKHOUSE-2]

commit 9581620f1e
Author: Alexey Milovidov <milovidov@yandex-team.ru>
Date:   Sat Jan 14 11:54:22 2017 +0300

    Less dependencies [#CLICKHOUSE-2]

commit 2a8564c68c
Author: Alexey Milovidov <milovidov@yandex-team.ru>
Date:   Sat Jan 14 11:47:34 2017 +0300

    Less dependencies [#CLICKHOUSE-2]

commit cf60632d78
Author: Alexey Milovidov <milovidov@yandex-team.ru>
Date:   Sat Jan 14 11:40:09 2017 +0300

    Less dependencies [#CLICKHOUSE-2]

commit ee3d1dc6e0
Author: Alexey Milovidov <milovidov@yandex-team.ru>
Date:   Sat Jan 14 11:22:49 2017 +0300

    Less dependencies [#CLICKHOUSE-2]

commit 65592ef711
Author: Alexey Milovidov <milovidov@yandex-team.ru>
Date:   Sat Jan 14 11:18:17 2017 +0300

    Less dependencies [#CLICKHOUSE-2]

commit 37972c2573
Author: Alexey Milovidov <milovidov@yandex-team.ru>
Date:   Sat Jan 14 11:17:06 2017 +0300

    Less dependencies [#CLICKHOUSE-2]

commit dd909d1499
Author: Alexey Milovidov <milovidov@yandex-team.ru>
Date:   Sat Jan 14 11:16:28 2017 +0300

    Less dependencies [#CLICKHOUSE-2]

commit 3cf43266ca
Author: Alexey Milovidov <milovidov@yandex-team.ru>
Date:   Sat Jan 14 11:15:42 2017 +0300

    Less dependencies [#CLICKHOUSE-2]

commit 6731a3df96
Author: Alexey Milovidov <milovidov@yandex-team.ru>
Date:   Sat Jan 14 11:13:35 2017 +0300

    Less dependencies [#CLICKHOUSE-2]

commit 1b5727e0d5
Author: Alexey Milovidov <milovidov@yandex-team.ru>
Date:   Sat Jan 14 11:11:18 2017 +0300

    Less dependencies [#CLICKHOUSE-2]

commit bbcf726a55
Author: Alexey Milovidov <milovidov@yandex-team.ru>
Date:   Sat Jan 14 11:09:04 2017 +0300

    Less dependencies [#CLICKHOUSE-2]

commit c03b477d5e
Author: Alexey Milovidov <milovidov@yandex-team.ru>
Date:   Sat Jan 14 11:06:30 2017 +0300

    Less dependencies [#CLICKHOUSE-2]

commit 2986e2fb04
Author: Alexey Milovidov <milovidov@yandex-team.ru>
Date:   Sat Jan 14 11:05:44 2017 +0300

    Less dependencies [#CLICKHOUSE-2]

commit 5d6cdef13d
Author: Alexey Milovidov <milovidov@yandex-team.ru>
Date:   Sat Jan 14 11:04:53 2017 +0300

    Less dependencies [#CLICKHOUSE-2]

commit f2b819b25c
Author: Alexey Milovidov <milovidov@yandex-team.ru>
Date:   Sat Jan 14 11:01:47 2017 +0300

    Less dependencies [#CLICKHOUSE-2]
2017-01-14 12:00:19 +03:00
Vitaliy Lyudvichenko
4f9064ca19 Fixed case when pk column is wrapped by functions. 2016-11-23 22:58:33 +03:00
Vitaliy Lyudvichenko
d27951b4a7 Added requested changes. [#METR-23473] 2016-11-23 16:33:05 +03:00
Vitaliy Lyudvichenko
e07fc7cea5 Fixed Enum usage in PK expressions. [#METR-23473]
Added check for duplicates of column names in CREATE query.
2016-11-23 16:19:15 +03:00
Alexey Milovidov
9018906e1a Better [#METR-2944]. 2016-11-20 15:43:20 +03:00
Alexey Milovidov
9af5ce1e3b Separate compilation of ProfileEvents; comments [#METR-23237]. 2016-10-24 05:02:37 +03:00
Alexey Milovidov
f129e94429 Fixed warnings on clang [#METR-2944]. 2016-08-07 19:17:57 +03:00
Alexey Milovidov
130ec8b58b Compatibility with new parser and AST of tables list [#METR-2944]. 2016-07-22 23:39:28 +03:00
Alexey Milovidov
8c4abcdd43 Using std::shared_ptr for functions and AST [#METR-21503]. 2016-05-28 18:42:22 +03:00
Alexey Milovidov
3c1c9d46f7 Using std::shared_ptr for data types [#METR-21503]. 2016-05-28 15:22:22 +03:00
Alexey Milovidov
4c7eb03b63 Using std::shared_ptr for data types [#METR-21503]. 2016-05-28 13:35:44 +03:00
Alexey Milovidov
be394f2c84 Using std::shared_ptr for data types [#METR-21503]. 2016-05-28 10:48:40 +03:00
Alexey Milovidov
4b7f461e46 Using std::shared_ptr for columns [#METR-21503]. 2016-05-28 08:31:36 +03:00
Alexey Milovidov
07f04d70d3 Merge 2016-04-24 12:44:47 +03:00
Alexey Milovidov
a5d7c41253 Addition [#METR-20644]. 2016-04-15 23:11:03 +03:00
Alexey Milovidov
9f3d9277af Addition to prev. revision [#METR-20644]. 2016-04-15 22:55:07 +03:00
Alexey Milovidov
d6ba48a610 Merge 2016-04-15 22:37:19 +03:00
Alexey Milovidov
2bb5a4749b Merge 2016-04-15 22:09:42 +03:00
Alexey Milovidov
3923c7abce Merge 2016-04-15 20:42:51 +03:00
Alexey Milovidov
d79174b2ce Preparation [#METR-20644]. 2016-04-15 20:13:51 +03:00
Alexey Milovidov
b0e9fd6da3 Improved exception message [#METR-20762]. 2016-04-06 03:31:22 +03:00
Alexey Milovidov
702876f9f0 Fixed suboptimal index usage in point queries [#METR-20607]. 2016-03-27 14:37:25 +03:00
Alexey Milovidov
0536f42f8c Fixing build on clang [#METR-2807]. 2016-03-07 09:49:07 +03:00
Alexey Milovidov
f5247021b1 Fixed error [#METR-20296]. 2016-03-05 06:17:11 +03:00