Commit Graph

376 Commits

Author SHA1 Message Date
Amos Bird
ea84430864 Get rid of useless std::move to get NRVO
http://eel.is/c++draft/class.copy.elision#:constructor,copy,elision

Some quote:

> Speaking of RVO, return std::move(w); prohibits it. It means "use move constructor or fail to compile", whereas return w; means "use RVO, and if you can't, use move constructor, and if you can't, use copy constructor, and if you can't, fail to compile."

There is one exception to this rule:
```cpp
Block FilterBlockInputStream::removeFilterIfNeed(Block && block)
{
    if (block && remove_filter)
        block.erase(static_cast<size_t>(filter_column));

    return std::move(block);
}
```

because references are not eligible for NRVO, which is another rule "always move rvalue references and forward universal references" that takes precedence.
2018-08-27 22:15:48 +08:00
Alexey Milovidov
6779de62d1 Enabling -Wextra-semi [#CLICKHOUSE-2] 2018-08-26 03:44:23 +03:00
chertus
53ec40eeee some decimal field improvements CLICKHOUSE-3765 2018-08-24 19:35:00 +03:00
Alexey Milovidov
6043ea02de Style #2913 2018-08-24 08:25:00 +03:00
Alexey Milovidov
1437e5cbe3 Fix style [#CLICKHOUSE-2] 2018-08-24 03:07:25 +03:00
chertus
cbb80f52c2 own DecimalField for Decimal32/64/128, better field comparison CLICKHOUSE-3765 2018-08-23 17:03:37 +03:00
Nikolai Kochetov
a475bb1c9f Merge branch 'master' into low-cardinality-group-by 2018-08-21 17:28:10 +03:00
Alexey Milovidov
7d76c3fd4f Miscellaneous [#CLICKHOUSE-3765] 2018-08-21 07:31:35 +03:00
Alexey Milovidov
15c971a225 Decimal: fixed error [#CLICKHOUSE-3765] 2018-08-21 07:00:50 +03:00
Alexey Milovidov
be80ac893e Whitespace [#CLICKHOUSE-3621] 2018-08-21 06:40:09 +03:00
zhang2014
3b0f0ac01e ISSUES-2846 fix build failure with gcc 8.1 2018-08-15 11:51:03 +08:00
alexey-milovidov
c376b2d476
Merge pull request #2869 from yandex/low-cardinality-fixes
LowCardinality fixes
2018-08-14 22:36:19 +03:00
Nikolai Kochetov
f61fdf2076 Better const resolution for LowCardinality type. [#CLICKHOUSE-3621] 2018-08-14 20:19:40 +03:00
chertus
241b05c80a merge master 2018-08-14 15:50:28 +03:00
Nikolai Kochetov
5379c52b9e Support Aggregator for LowCardinality single key. 2018-08-13 19:23:40 +03:00
alexey-milovidov
f538bd2113
Merge branch 'master' into decimal 2018-08-13 11:57:42 +03:00
chertus
01c8b1d7bb decimal field extraction (from column or type) 2018-08-10 17:57:55 +03:00
Nikolai Kochetov
4a62ab9d5c Merged with master. 2018-08-10 16:53:08 +03:00
Alexey Milovidov
36db216abf Preparation for extra warnings [#CLICKHOUSE-2] 2018-08-10 07:02:56 +03:00
chertus
479166283e DecField (in progress) 2018-08-09 19:32:01 +03:00
Nikolai Kochetov
4fd3d57e79 Less compiler warnings. 2018-08-09 13:52:54 +03:00
Nikolai Kochetov
79db5b261f Less compiler warnings. 2018-08-09 13:52:46 +03:00
Nikolai Kochetov
f4d9d50168 Merged with master. 2018-08-08 15:01:18 +03:00
Nikolai Kochetov
e83268a7f4 Optimize mapUniqueIndex for ColumnWIthDictionary. 2018-08-07 21:12:04 +03:00
Nikolai Kochetov
01209533f7 Optimize reverse index for ColumnUnique. 2018-08-07 21:10:16 +03:00
Nikolai Kochetov
3f4348a88b Use HashTableWithSavedHash for strings in ColumnUnique. 2018-08-07 21:09:55 +03:00
Nikolai Kochetov
a109d8f002 Disabled checks for index values in ColumnWithDictionary. 2018-08-07 21:09:49 +03:00
chertus
de68022fc5 rewrite Decimal with own data type 2018-08-07 16:57:28 +03:00
chenxing.xc
4acc441179 fix aligned states review comments 2018-08-05 18:12:06 +08:00
chenxing.xc
202894e191 Merge remote-tracking branch 'rb/master' 2018-08-05 17:59:58 +08:00
chenxing.xc
90d8290d28 aligned aggregate state 2018-08-05 16:45:15 +08:00
chertus
b9fd87eff7 Merge branch 'master' into decimal 2018-07-27 20:31:33 +03:00
chertus
c1c149d74b decimal comparisons 2018-07-25 22:38:21 +03:00
chertus
5ec47b4a1c decimal (in progress) 2018-07-20 22:05:07 +03:00
Nikolai Kochetov
df379afde4 Reserve memory for HashTable in ColumnUnique. 2018-07-20 19:16:33 +03:00
alexey-milovidov
c9dc058345
Update Collator.cpp 2018-07-20 18:49:47 +03:00
alesapin
fae9c33282 CLICKHOUSE-3791: Add system table collations 2018-07-20 16:17:16 +03:00
Nikolai Kochetov
bf26fda38d Added canBeExecutedOnDefaultArguments into IFunction. Don't run function on defaults is this flag is true. 2018-07-20 13:19:07 +03:00
Nikolai Kochetov
9c763f8090 Make DatsTypeWithDictionary independent from index type. 2018-07-20 13:16:27 +03:00
Nikolai Kochetov
c542cb6314 Expanding indexes for ColumnUnique. 2018-07-20 13:15:55 +03:00
Nikolai Kochetov
bf3327da8b Removed nullable column from ColumnUnique. Added IColumnUnique::getNestedNotNullableColumn(). 2018-06-26 20:38:32 +03:00
Nikolai Kochetov
9f591b8d02 Merged with master. 2018-06-26 17:41:29 +03:00
Nikolai Kochetov
f191eb8ae9 Fix ColumnWithDictionary::getPremutation limit 2018-06-26 17:12:34 +03:00
Nikolai Kochetov
f56d16769b Added pre and post serialization for IDataType BinaryBulkWithMultipleStreams. Supported dictionary serialization format with single global dictionary (limited wit max_dictionary_size) and additional keys which are stored per granule. Changed IDataType::enumerateStream interface. Added (de)serialization params for binary bulk with multiple stream (de)serialization. Changed IColumn::index interface. 2018-06-26 17:12:21 +03:00
Nikolai Kochetov
12bf5ef565 Added IColumn::convertToFullColumnIfWithDictionary; supported FilterDescription for ColumnWithDictionary 2018-06-26 17:12:15 +03:00
Nikolai Kochetov
96df20f6b5 Fixed ColumnUnique::compareAt implementation; deprecated several metods for IColumnUnique 2018-06-21 16:29:09 +03:00
Nikolai Kochetov
f88584d748 Added DeserializeBinaryBulkState which stores reading state for ColumnWithDictionary. 2018-06-21 16:28:53 +03:00
Alexey Milovidov
7f294007cb Removed string size overestimation #2428 2018-06-13 03:51:23 +03:00
Alexey Milovidov
b9b89a5590 Less dependencies [#CLICKHOUSE-2] 2018-06-05 22:46:49 +03:00
Nikolai Kochetov
caa86bc59a Fixed ColumnWithDictionary::serializeBinaryBulkWithMultipleStreams, added more comments. 2018-06-05 13:10:44 +03:00
Alexey Milovidov
f5adbceed2 Non significant changes according to clang's -Weverything, part 3 [#CLICKHOUSE-2] 2018-06-03 23:39:06 +03:00
Alexey Milovidov
1c2b024c39 Non significant changes according to clang's -Weverything, part 2 [#CLICKHOUSE-2] 2018-06-03 20:43:56 +03:00
Alexey Milovidov
734cebdf09 Non significant changes according to clang's -Weverything, part 1 [#CLICKHOUSE-2] 2018-06-03 19:51:31 +03:00
Nikolai Kochetov
937cb2db29 Merged with master. 2018-05-21 14:38:50 +03:00
Alexey Zatelepin
d31b897ba7 validate mutation commands [#CLICKHOUSE-3688] 2018-05-16 05:46:15 +03:00
Alexey Milovidov
fb91bba279 Miscellaneous [#CLICKHOUSE-2] 2018-05-16 03:34:56 +03:00
Alexey Milovidov
63625c0a30 Fixed code #2272 2018-05-06 14:33:03 +03:00
Alexey Milovidov
04d1c8c449 Fixed code #2272 2018-05-06 14:29:17 +03:00
Alexey Milovidov
53f03a4909 Merge branch 'llvm-jit' of https://github.com/pyos/ClickHouse into pyos-llvm-jit 2018-05-06 12:22:42 +03:00
Nikolai Kochetov
6fe65a4740 added DataTypeWithDictionary serialization per granule 2018-05-04 23:17:27 +03:00
Nikolai Kochetov
387227409a added DataTypeWithDictionary serialization per granule 2018-05-04 23:13:29 +03:00
Nikolai Kochetov
bfc42259cb added DataTypeWithDictionary serialization per granule 2018-05-04 23:11:32 +03:00
Nikolai Kochetov
726780868e added DataTypeWithDictionary serialization per granule 2018-05-04 21:56:28 +03:00
Nikolai Kochetov
310931a8a5 added DataTypeWithDictionary serialization per granule 2018-05-04 19:28:53 +03:00
Nikolai Kochetov
9c696f40b9 Fixed ColumnWithDictionsry insert functions. Added insertFromFullColumn and insertRangeFromFullColumn. 2018-05-04 13:48:09 +03:00
KochetovNicolai
e0addcdfec
Update ColumnVector.cpp
Fixed memset bytes count.
2018-05-03 20:29:53 +03:00
Nikolai Kochetov
e2416cfa6f Moved DataTypeWithDictionary implementation to DataTypeWithDictionary.cpp 2018-05-03 20:25:10 +03:00
Nikolai Kochetov
7788d30dca Moved DataTypeWithDictionary implementation to DataTypeWithDictionary.cpp 2018-05-03 20:23:18 +03:00
Nikolai Kochetov
5d1c25df25 Moved DataTypeWithDictionary implementation to DataTypeWithDictionary.cpp 2018-05-03 19:28:14 +03:00
Nikolai Kochetov
ba0a5af437 added IColumn::select 2018-05-03 15:51:26 +03:00
Nikolai Kochetov
97fbd37cb0 added IColumn::select 2018-05-03 15:47:14 +03:00
Nikolai Kochetov
882ddff7d4 added IColumn::select 2018-05-03 14:59:01 +03:00
Nikolai Kochetov
b662dcdd0a added IColumn::select 2018-05-03 13:53:00 +03:00
pyos
27f12eeaa3 Merge branch 'master' of https://github.com/yandex/ClickHouse into llvm-jit 2018-05-01 22:51:37 +03:00
Tsarkova Anastasia
210a389592 Getting rid of measure action, other small fixes applied. 2018-04-30 21:33:32 +02:00
pyos
d59b0d7ec0 Add IColumn::getRawData to fixed-contiguous columns 2018-04-25 18:16:48 +03:00
Tsarkova Anastasia
12c8014e5c Conditional computations. 2018-04-24 09:16:39 +02:00
Nikolai Kochetov
8625686205 added IColumn::select 2018-04-23 20:19:24 +03:00
Nikolai Kochetov
e6e29eef29 added IColumn::select 2018-04-23 20:02:50 +03:00
Nikolai Kochetov
387c32e1ec added IColumn::select 2018-04-23 20:01:28 +03:00
Nikolai Kochetov
8470a091bb added IColumn::select 2018-04-23 19:59:11 +03:00
Nikolai Kochetov
4aaf56d9a2 added IColumn::select 2018-04-23 19:55:26 +03:00
Nikolai Kochetov
61e14b8a83 added IColumn::select 2018-04-23 19:51:27 +03:00
Nikolai Kochetov
44807df50f added IColumn::select 2018-04-23 19:48:46 +03:00
Nikolai Kochetov
4369613435 added IColumn::select 2018-04-23 19:40:25 +03:00
Nikolai Kochetov
2119469c51 added IColumn::select 2018-04-19 00:00:47 +03:00
Nikolai Kochetov
e9bc071837 default implementation for functions with ColumnWithDictionary arguments 2018-04-17 20:47:27 +03:00
Nikolai Kochetov
cdc8bbea7e fix build 2018-04-17 15:41:16 +03:00
Nikolai Kochetov
d97e7362db fix build 2018-04-17 14:28:35 +03:00
Nikolai Kochetov
7f9454cc77 fix build 2018-04-17 14:12:11 +03:00
Nikolai Kochetov
b8957e4d97 fix build 2018-04-17 13:45:05 +03:00
Nikolai Kochetov
c6a3fec726 Merge branch 'master' into data-type-with-dictionary 2018-04-17 13:44:19 +03:00
Nikolai Kochetov
0f0d5b3c0c added DataTypeWithDictionary [#CLICKHOUSE-3621] 2018-04-17 13:43:46 +03:00
Nikolai Kochetov
a163459d83 added ColumnWithDictionary [#CLICKHOUSE-3621] 2018-04-17 13:43:40 +03:00
Nikolai Kochetov
b7ee1be6df added ColumnUnique [#CLICKHOUSE-3621] 2018-04-17 13:43:02 +03:00
alexey-milovidov
f358dc4125
Update ColumnString.h 2018-03-30 00:15:14 +03:00
alexey-milovidov
db53190854
Update ColumnString.h 2018-03-29 23:21:40 +03:00
Brett Hoerner
fef91af96f Fix build when using GCC 7.3.1: -Wmaybe-uninitialized error
Before adding this ignore you would receive the following when using GCC
7.3.1:

[ 82%] Building CXX object dbms/src/Storages/System/CMakeFiles/clickhouse_storages_system.dir/StorageSystemAsynchronousMetrics.cpp.o
In file included from /ClickHouse/dbms/src/Storages/System/StorageSystemAsynchronousMetrics.cpp:5:0:
/ClickHouse/dbms/src/Columns/ColumnString.h: In member function ‘virtual DB::BlockInputStreams DB::StorageSystemAsynchronousMetrics::read(const Names&, const DB::SelectQueryInfo&, const DB::Context&, DB::QueryProcessingStage::Enum&, size_t, unsigned int)’:
/ClickHouse/dbms/src/Columns/ColumnString.h:96:45: error: ‘*((void*)&<anonymous> +8)’ may be used uninitialized in this function [-Werror=maybe-uninitialized]
         const size_t size_to_append = s.size() + 1;
                                       ~~~~~~^~
cc1plus: all warnings being treated as errors
make[2]: *** [dbms/src/Storages/System/CMakeFiles/clickhouse_storages_system.dir/build.make:63: dbms/src/Storages/System/CMakeFiles/clickhouse_storages_system.dir/StorageSystemAsynchronousMetrics.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:9105: dbms/src/Storages/System/CMakeFiles/clickhouse_storages_system.dir/all] Error 2
make: *** [Makefile:163: all] Error 2
2018-03-29 12:02:09 -05:00
Nikolai Kochetov
cc2c1f5171 removed createImmutable 2018-03-23 22:24:55 +03:00
Nikolai Kochetov
5c91eecb2b fix test 2018-03-21 21:43:17 +03:00