Commit Graph

572 Commits

Author SHA1 Message Date
Nikolai Kochetov
f1c01118b5 fixed writeSlice for const GenericArraySlice and NumericArraySink [#CLICKHOUSE-2090] 2017-09-01 16:55:05 +03:00
Nikolai Kochetov
6956e12770 added comments to writeSlice functions [#CLICKHOUSE-2090] 2017-09-01 16:03:54 +03:00
Nikolai Kochetov
1da43b683c fixed comment [#CLICKHOUSE-2090] 2017-09-01 15:23:06 +03:00
Nikolai Kochetov
7885c5c032 renamed TypeListNumber to TypeListNumbers [#CLICKHOUSE-2090] 2017-09-01 15:09:08 +03:00
Nikolai Kochetov
7891596579 unified TypeList [#CLICKHOUSE-2090] 2017-09-01 15:05:19 +03:00
Nikolai Kochetov
c695f10c66 hanged & to && in GatherUtils [#CLICKHOUSE-2090] 2017-09-01 14:32:31 +03:00
Nikolai Kochetov
c0b05f2ca9 hanged & to && in GatherUtils [#CLICKHOUSE-2090] 2017-09-01 14:02:26 +03:00
alexey-milovidov
1b8100ae86 Update FunctionsArray.cpp 2017-08-31 20:00:51 +03:00
alexey-milovidov
c6f87d9543 Update GatherUtils.h 2017-08-31 19:24:46 +03:00
Nikolai Kochetov
24e135fbe6 supported arraySlice with 2 arguments, added comments [#CLICKHOUSE-2090] 2017-08-25 16:54:08 +03:00
Nikolai Kochetov
1ec04d1024 supported || for arrayConcat [#CLICKHOUSE-2090] 2017-08-25 16:05:26 +03:00
Nikolai Kochetov
239f4f2d36 merged with master 2017-08-25 15:05:18 +03:00
Nikolai Kochetov
0f4e7f1833 fixed array slice with offset <= -(array length) [#CLICKHOUSE-2090] 2017-08-25 14:29:49 +03:00
Nikolai Kochetov
d213efa974 fixed slice for nullable index [#CLICKHOUSE-2090] 2017-08-24 22:19:37 +03:00
Nikolai Kochetov
d8529e1846 unused type alias [#CLICKHOUSE-2090] 2017-08-24 21:16:25 +03:00
Nikolai Kochetov
09a307b94f removed debug stderr output [#CLICKHOUSE-2090] 2017-08-24 19:46:41 +03:00
Nikolai Kochetov
e6fd55ff42 added arrayPushBack arrayPushFront arrayPopBack arrayPopFront function [#CLICKHOUSE-2090] 2017-08-24 19:46:40 +03:00
Nikolai Kochetov
096d34bb7f added arraySlice function [#CLICKHOUSE-2090] 2017-08-24 19:46:34 +03:00
Nikolai Kochetov
c1479a5594 updated GatherUtils [#CLICKHOUSE-2090] 2017-08-24 19:46:15 +03:00
Nikolai Kochetov
c3fe8bb026 added FunctionArrayConcat [#CLICKHOUSE-2090] 2017-08-24 19:45:13 +03:00
Alexey Milovidov
304ccf29b2 Fixed error; added test [#CLICKHOUSE-2]. 2017-08-18 22:02:50 +03:00
Alexey Milovidov
5d835e88de Merge branch 'master' of github.com:yandex/ClickHouse 2017-08-18 21:45:10 +03:00
Alexey Milovidov
434a7d8f38 Fixed function "substring" with out-of-bound negative offset argument [#CLICKHOUSE-2]. 2017-08-18 21:45:02 +03:00
Vadim Skipin
5f4e833925 Cleanup function factories:
* Switch to std::function to allow more complex creator logic
* Cleanup headers
2017-08-18 21:15:57 +03:00
Alexey Milovidov
f918e22438 Miscellaneous [#CLICKHOUSE-2]. 2017-08-18 19:36:02 +03:00
Alexey Milovidov
c629799500 Fixed insufficient arguments checking [#CLICKHOUSE-3102]. 2017-08-16 17:21:24 +03:00
Alexey Milovidov
2ddf462563 Fixed regression [#CLICKHOUSE-2]. 2017-08-16 00:52:52 +03:00
Alexey Milovidov
986c6c729d Fixed incompatibility [#CLICKHOUSE-2]. 2017-08-14 07:23:38 +03:00
Alexey Milovidov
0ef64e5dfe Fixed error [#CLICKHOUSE-2]. 2017-08-14 02:58:04 +03:00
Alexey Milovidov
1e1dc8828a Miscellaneous [#CLICKHOUSE-2]. 2017-08-13 00:02:45 +03:00
Alexey Milovidov
ce4349b6cd Fixed error when huge sets for IN, JOIN, DISTINCT cannot be created with exception message "Cannot mremap... Bad address" [#CLICKHOUSE-2]. 2017-08-11 02:25:51 +03:00
alexey-milovidov
a122cd613a Update FunctionsExternalDictionaries.h 2017-08-10 06:29:06 +03:00
proller
6ca798a357 Fix infinite loop in dictGetHierarchy if id chain looped 2017-08-10 06:29:06 +03:00
proller
ac178bde1f Cmake: link ltdl with pocoodbc static only. rename ARM -> ARCH_ARM (#1083)
* Cmake: link ltdl with pocoodbc static only. rename ARM -> ARCH_ARM

* Fix lib find order

* Allow define non-contrib cityhash farmhash metrohash

* Fix message

* Cmake: fixes

* clean

* Update CMakeLists.txt
2017-08-09 23:52:55 +03:00
Alexey Milovidov
6edb14ba6b Fixed garbage [#CLICKHOUSE-2]. 2017-08-09 04:35:12 +03:00
Alexey Milovidov
1fc8548018 Fixing garbage (incomplete) [#CLICKHOUSE-2]. 2017-08-09 04:35:12 +03:00
Alexey Milovidov
ff54c93a22 Miscellaneous [#CLICKHOUSE-2]. 2017-08-07 04:37:52 +03:00
Alexey Milovidov
f386788278 Using GatherUtils for function if on arguments of type Array(String) [#CLICKHOUSE-2]. 2017-08-05 07:13:23 +03:00
Alexey Milovidov
5ddc354989 Using GatherUtils for function if on arguments of type Array(String) [#CLICKHOUSE-2]. 2017-08-05 07:13:23 +03:00
Alexey Milovidov
19ff0db9f1 Using GatherUtils for if on numeric arrays [#CLICKHOUSE-2]. 2017-08-05 06:30:54 +03:00
Alexey Milovidov
6648d6dee4 Using GatherUtils for if on numeric arrays [#CLICKHOUSE-2]. 2017-08-05 06:30:54 +03:00
Alexey Milovidov
49bdf266b0 Fixed function if of FixedString arguments [#CLICKHOUSE-3202]. 2017-08-05 05:25:59 +03:00
Alexey Milovidov
03662e3d77 Fixed function if of FixedString arguments [#CLICKHOUSE-3202]. 2017-08-05 05:25:59 +03:00
Alexey Milovidov
dadf5ac400 Fixed function if of FixedString arguments [#CLICKHOUSE-3202]. 2017-08-05 05:25:59 +03:00
Alexey Milovidov
0bb8b32cb9 Fixed function if of FixedString arguments [#CLICKHOUSE-3202]. 2017-08-05 05:25:59 +03:00
Alexey Milovidov
767d025fb3 Fixed function if of FixedString arguments [#CLICKHOUSE-3202]. 2017-08-05 05:25:59 +03:00
proller
d6833a0d55 Cmake: remove global include_directories (#1055)
* Fix .h compile

* Cmake: remove global include_directories

* boost include hide

* fix cctz

* add \n
2017-08-03 15:44:39 +03:00
proller
8f6c2d4e47 Fix .h compile 2017-08-01 18:02:16 +03:00
Alexey Milovidov
a6cb383c4f Fixed build with gcc-7.1 [#CLICKHOUSE-2]. 2017-08-01 04:25:03 +03:00
Alexey Milovidov
6578fb2645 Fixed error [#CLICKHOUSE-3191]. 2017-08-01 00:39:24 +03:00
Alexey Milovidov
306070d2cc Fixed error in one of prev. revisions [#CLICKHOUSE-3150]. 2017-07-30 22:47:32 +03:00
proller
460d66c68d Split FunctionsArray.cpp register (#1043)
* PerformanceTest: use getMultiple*FromConfig, fix debug helpers

* Missing file

* gcc7 fixes

* clnag-format of Split ComplexKeyCacheDictionary

* Requested changes

* Fix boost 1.64 and gcc7+ compile errors

* More fixes

* Fix arm build

* Fix nothrow

* Better arm detection

* Split FunctionsArray.cpp register
2017-07-30 15:31:58 +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
3502d36d7d Fixed build [#CLICKHOUSE-2]. 2017-07-28 02:23:13 +03:00
proller
ff7f3af238 Split FunctionsArithmetic.cpp to generated functions 2017-07-26 21:32:35 +03:00
Alexey Milovidov
3dcb2e6aed Fixed test [#CLICKHOUSE-2]. 2017-07-26 04:21:19 +03:00
Alexey Milovidov
d20c411b0d Fixed linkage [#CLICKHOUSE-2]. 2017-07-25 21:19:22 +03:00
Vitaliy Lyudvichenko
03e5bf9471 Add support of parameters in aggregate function constructors. [#CLICKHOUSE-3084] 2017-07-25 20:04:10 +03:00
Guillaume Tassery
03bbe9938a Function for generate an uuid v4 (#1008)
* Fix compilation error when include FunctionsRandom.h twice

* Implement function for generate UUID V4

* remove isDeterministicInScopeOfQuery for generateUUIDV4

* Uniformize RandX Implementation

* rename generateUUIDV4 into generateUUIDv4

* Modify random function for making it more generic
2017-07-25 20:00:38 +03:00
Alexey Milovidov
f153d5f5db Additions to prev. revision [#CLICKHOUSE-2]. 2017-07-25 01:53:44 +03:00
Alexey Milovidov
b4c610a8e7 Fixed errors [#CLICKHOUSE-2]. 2017-07-25 01:44:13 +03:00
Alexey Milovidov
188ee349bd Fixed errors [#CLICKHOUSE-2]. 2017-07-25 01:44:13 +03:00
Alexey Milovidov
a6df2e7151 Added support for non-constant and negative offset and size for substring function (continued) [#CLICKHOUSE-2]. 2017-07-25 01:44:13 +03:00
Alexey Milovidov
487278e2f5 Added support for non-constant and negative offset and size for substring function (continued) [#CLICKHOUSE-2]. 2017-07-25 01:44:13 +03:00
Alexey Milovidov
3144cbc9c1 Added support for non-constant and negative offset and size for substring function (continued) [#CLICKHOUSE-2]. 2017-07-25 01:44:13 +03:00
Alexey Milovidov
94768fe9bf Added support for non-constant and negative offset and size for substring function (continued) [#CLICKHOUSE-2]. 2017-07-25 01:44:13 +03:00
Alexey Milovidov
52b5bae62f Added support for non-constant and negative offset and size for substring function (continued) [#CLICKHOUSE-2]. 2017-07-25 01:44:13 +03:00
Alexey Milovidov
30ff4a78a6 Added support for non-constant and negative offset and size for substring function (continued) [#CLICKHOUSE-2]. 2017-07-25 01:44:13 +03:00
Alexey Milovidov
14de659c99 Added support for non-constant offset and size for substring function [#CLICKHOUSE-2]. 2017-07-25 01:44:13 +03:00
Alexey Milovidov
0c8e082954 Using GatherUtils (experimental) [#CLICKHOUSE-2]. 2017-07-25 01:44:13 +03:00
Alexey Milovidov
1557fa2e8d Removed "dispatchFor" templates, because gcc 6 cannot compile them (only clang is capable) [#CLICKHOUSE-2]. 2017-07-25 01:44:13 +03:00
Alexey Milovidov
ffbd2f46f9 GatherUtils (experimental) [#CLICKHOUSE-2]. 2017-07-25 01:44:13 +03:00
Alexey Milovidov
9540a2da90 GatherUtils (experimental) [#CLICKHOUSE-2]. 2017-07-25 01:44:13 +03:00
Alexey Milovidov
bfdc108a08 Cleaning old code [#CLICKHOUSE-2]. 2017-07-25 01:44:13 +03:00
Alexey Milovidov
ee81d53bd5 Functions simplification [#CLICKHOUSE-2]. 2017-07-25 01:44:13 +03:00
alexey-milovidov
bbe70e8cfa Update FunctionsStringSearch.cpp 2017-07-24 20:36:16 +03:00
Alexey Milovidov
efaa44bea8 Attempt to improve performance [#CLICKHOUSE-3]. 2017-07-23 09:53:28 +03:00
Alexey Milovidov
a76061e1a9 Fixed MAC address related functions; added test [#CLICKHOUSE-3]. 2017-07-23 09:13:57 +03:00
Alexey Milovidov
31d8ba3b34 Fixed error after merge [#CLICKHOUSE-3150]. 2017-07-21 23:20:22 +03:00
Nikolai Kochetov
5477e7c1f9 added date and time to number functions [#CLICKHOUSE-3132] 2017-07-21 20:51:08 +03:00
Alexey Milovidov
3a0bf8e642 Fixed error after merge [#CLICKHOUSE-3150]. 2017-07-21 09:55:33 +03:00
Alexey Milovidov
e1cc8289b2 Fixed error after merge [#CLICKHOUSE-3150]. 2017-07-21 09:46:50 +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
Vladimir Chebotarev
7254478fde functions: Remote mode for hasColumnInTable. [#CHEBOTAREV-9] 2017-07-20 17:08:42 +03:00
Alexey Milovidov
bfc099ea5f Miscellaneous [#CLICKHOUSE-2]. 2017-07-17 01:41:15 +03:00
Alexey Milovidov
5c3ca0c16e Inverted dependency in DataTypeFactory [#CLICKHOUSE-3149]. 2017-07-16 07:11:11 +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
alexey-milovidov
37985d3cb8 Merge pull request #981 from yandex/reduce-memory-consumprion-during-reading-column-string-from-native-block
Reduce memory consumprion during reading column string from native block
2017-07-14 00:01:50 +03:00
Nikolai Kochetov
75be0b81d8 removed typeid_cast from IColumn.h 2017-07-13 23:58:19 +03:00
Maxim Fridental
82b53b712a findClusterIndex: fix virtual method, improve formatting 2017-07-13 22:39:37 +03:00
Maxim Fridental
ff4df27cad Improve implementation of findClusterIndex and findClusterValue, add test 2017-07-13 22:39:37 +03:00
Nikolai Kochetov
985e449bd3 added IDataType::updateAvgValueSizeHints; renamed PODArray::allocated_size to PODArray::allocated_bytes; renamed renamed IColumn::allocatedSize to IColumn::allocatedBytes; removed IColumn.h from IDataType.h 2017-07-13 19:49:09 +03:00
Alexey Milovidov
33c6e0b804 Removing dependency on functions from client: preparation [#CLICKHOUSE-2]. 2017-07-12 03:42:50 +03:00
Vitaliy Lyudvichenko
b843ea5b3f Resolves #964. Fixed input_format_skip_unknown_fields for negative numbers. [#CLICKHOUSE-3] 2017-07-11 21:36:51 +03:00
Alexey Milovidov
86eb4d2d06 Renamed Singleton to avoid conflicts with Arcadia* codebase [#DEVTOOLS-3343].
* - "Arcadia" is the name of Yandex's monorepo.
2017-07-10 07:34:14 +03:00
alexey-milovidov
b64b243a73 Merge pull request #945 from YiuRULE/master
Implement natively uuid type in Clickhouse
2017-07-10 07:00:45 +03:00
alexey-milovidov
894d09f797 Update IFunction.h 2017-07-09 17:13:51 +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
Vitaliy Lyudvichenko
7150e9447a Fixed multiIf in case of empty arguments. [#CLICKHOUSE-3119] 2017-07-07 17:42:37 +03:00
Guillaume Tassery
2ec96fe822 Make UUID as a strong type 2017-07-06 16:50:29 +02:00