Commit Graph

21219 Commits

Author SHA1 Message Date
malkfilipp
62f85c0a3a Switch to tuples 2019-09-11 11:41:57 +03:00
Amos Bird
bf799fef92 Build fix 2019-09-11 10:53:56 +08:00
Azat Khuzhin
6c646a6978
Missing <chrono> for gtest_sensitive_data_masker
I guess that <chrono> had been included somewhere before in primary env.
2019-09-11 02:04:11 +03:00
alexey-milovidov
a446ec5e61
Merge pull request #6882 from clemrodriguez/issue-6825
Fix too early MySQL connection closure in MySQLBlockInputStreamream.cpp
2019-09-11 02:03:20 +03:00
alexey-milovidov
254102c5bd
Merge pull request #6602 from amosbird/object-library
Split libdbms.so using object library
2019-09-11 02:00:13 +03:00
malkfilipp
b63d2422d0 Change versions comparing from string to number 2019-09-11 01:29:21 +03:00
Akazz
7b65dfb867 Build fixed 2019-09-11 01:21:08 +03:00
alexey-milovidov
8fa72c6804
Update Client.cpp 2019-09-10 23:10:23 +03:00
Akazz
40a9495267 Some formatting + minor change 2019-09-10 22:58:04 +03:00
malkfilipp
058c04e759 Add a warning if the client is older than the server 2019-09-10 22:28:33 +03:00
akuzm
ab85d145a2
Merge pull request #6873 from yandex/aku/internal-iteration
Use internal iteration over hash tables in Aggregator.
2019-09-10 22:02:53 +03:00
Amos Bird
8f28a36c17 Use internal iteration over hash tables in Aggregator.
For compound hash tables such as the future StringHashMap, an
iterator-based API might be inefficient for iterating over a table or
for merging two tables, because:

1) the key has to be converted to a general format from a from a
   component-specific format, which may differ between the components;

2) the information about the component of the compound hash table to
   which the value belongs is lost, and has to be recalculated if the
   value is reinserted.

A more efficient approach is to use internal iteration, that is,
map-like functions, which avoids unnecessary conversions when iterating,
and allows to use an efficient component-wise approach when merging.
2019-09-10 21:52:53 +03:00
Amos Bird
a1310ffbe6 Split libdbms.so using object library
Now the linking time of incremental builds are around 1-2 seconds
2019-09-11 01:56:01 +08:00
Alexander Kuzmenkov
160e0faf77 Do not use iterator::getValue() in Aggregator.
Use separate key and "mapped" value references instead. This is
important for hash tables that do not store the key/"mapped" pair
directly, and cannot provide this interface without some runtime
overhead.
2019-09-10 20:12:30 +03:00
Alexander Kuzmenkov
8e9a8584e0 Do not provide mutable key access in hash map cells.
We don't need it anymore after we changed the hash table key memory
management to use callbacks. Removing this interface is important for
hash maps that do not store the key, such as FixedHashMap or the
prospective compound StringHashMap.
2019-09-10 20:12:30 +03:00
Nikolai Kochetov
e9e0bd82b9 Change number of aggregating streams. 2019-09-10 20:08:06 +03:00
Nikolai Kochetov
bcc764e2cd Use header in native format created in InterpreterSelectQuery. Fill missed columns in Native format. 2019-09-10 19:45:53 +03:00
Nikolai Kochetov
7ddc8a6dde Use header in native format created in InterpreterSelectQuery. Fill missed columns in Native format. 2019-09-10 19:41:05 +03:00
Nikolai Kochetov
8dd8ab7d1f Use header in native format created in InterpreterSelectQuery. Fill missed columns in Native format. 2019-09-10 19:31:41 +03:00
Nikolai Kochetov
071b5dd514 Add LowCardinality conversion to Native format if types of columns are not equals. 2019-09-10 17:30:13 +03:00
Nikolai Kochetov
30394113a1 Add LowCardinality conversion to Native format if types of columns are not equals. 2019-09-10 17:16:31 +03:00
Nikolai Kochetov
8734c8339e Fix race in PipelineExecutor. 2019-09-10 16:12:18 +03:00
akazz
33f462d011 Dropped some garbage lines 2019-09-10 15:37:14 +03:00
akazz
4f71fe715c Strong exception safety guarantee:
Based on std::list<>::emplace_back() and std::unordered_map<>::emplace()
provide strong exception safety, RWLockImpl is now changed to provide
the same level of exception safety.
2019-09-10 15:33:45 +03:00
Nikolai Kochetov
7b0a6aec05 Fix raice in PipelineExecutor. 2019-09-10 15:14:47 +03:00
Nikolai Kochetov
3646124873 Fix raice in PipelineExecutor. 2019-09-10 14:17:55 +03:00
Nikolai Kochetov
a9d41d580a Fix asan crash in PipelineExecutor. 2019-09-10 12:50:38 +03:00
Nikolai Kochetov
72fea5bf97 Added ThreadsQueue to PipelineExecutor. 2019-09-10 11:50:31 +03:00
Nikolai Kochetov
73bda85998 Added ThreadsQueue to PipelineExecutor. 2019-09-10 11:45:48 +03:00
Clément Rodriguez
10be7809cd
Fix connection to early MySQL connection closure in MySQLBlockInputStream.cpp 2019-09-10 10:21:13 +02:00
Nikolai Kochetov
5165bbd88a Fix asan crash in PipelineExecutor. 2019-09-10 11:03:02 +03:00
proller
54a5b801b7 Build fixes (Orc, ...) (#6835)
* Fix build

* cmake: fix cpuinfo

* Fix includes after processors merge

Conflicts:
	dbms/src/Processors/Formats/Impl/CapnProtoRowInputFormat.cpp
	dbms/src/Processors/Formats/Impl/ParquetBlockOutputFormat.cpp
	dbms/src/Processors/Formats/Impl/ProtobufRowInputFormat.cpp
	dbms/src/Processors/Formats/Impl/ProtobufRowOutputFormat.cpp

* Fix build in gcc8

* fix test link

* fix test link

* Fix test link

* link fix

* Fix includes after processors merge 2

Conflicts:
	dbms/src/Processors/Formats/Impl/ParquetBlockInputFormat.cpp

* Fix includes after processors merge 3

* link fix

* Fix likely/unlikely conflict with cython

* Fix conflict with protobuf/stubs/atomicops.h

* remove unlikely.h

* Fix macos build (do not use timer_t)

* wip

* Fix build (orc, ...)

* Missing files

* Try fix

* fix hdfs

* Fix llvm 7.1 find
2019-09-10 00:40:40 +03:00
Nikolai Kochetov
eeba24b238 Try to fix race in PipelineExecutor. 2019-09-09 20:56:58 +03:00
Nikolai Kochetov
423a5c35e8 Try to fix race in PipelineExecutor. 2019-09-09 20:12:26 +03:00
Nikolai Kochetov
da798142a5 Try to fix race in PipelineExecutor. 2019-09-09 20:10:37 +03:00
Ivan
6c32fc3fc1
Store offsets manually for each message (#6872) 2019-09-09 19:59:51 +03:00
Nikolai Kochetov
9df1235046 Pin sources to streams in PipelineExecutor. 2019-09-09 19:53:02 +03:00
Nikolai Kochetov
818696a9a7 Pin sources to streams in PipelineExecutor. 2019-09-09 19:29:11 +03:00
Nikolai Kochetov
3a849c3c5f Pin sources to streams in PipelineExecutor. 2019-09-09 18:43:19 +03:00
Nikolai Kochetov
038aa82305 Update TCPHandler 2019-09-09 17:57:12 +03:00
Nikolai Kochetov
c9cca3ba8b Merged with master 2019-09-09 16:20:30 +03:00
Nikolai Kochetov
04d2f32e17 Check thread is joinable in PipelineExecutor. 2019-09-09 15:09:48 +03:00
Yuriy
6700314ce5 destroying context after executeQuery 2019-09-09 04:04:37 +03:00
alexey-milovidov
8389200229
Merge pull request #6832 from CurtizJ/merging_input_function
Merging #5450 (table function input).
2019-09-07 20:16:45 +03:00
alexey-milovidov
25de2e12a2
Merge pull request #6399 from Enmk/replica_recovery_interval
Improvements for failover of Distributed queries
2019-09-07 03:21:30 +03:00
alexey-milovidov
b7cbd33886
Merge pull request #6729 from yandex/aku/key-holder
Key memory management for compound hash tables.
2019-09-07 03:09:18 +03:00
alexey-milovidov
b3e30d51c3
Update HashTableKeyHolder.h 2019-09-07 03:09:07 +03:00
alexey-milovidov
46e7b4f925
Merge pull request #6853 from yandex/pipe-capacity-very-old-kernels
Returned support for very old Linux kernels (that lack of F_GETPIPE_SZ fcntl)
2019-09-07 03:01:42 +03:00
Olga Khvostikova
e8d8dbc40b
Merge pull request #6855 from yandex/code-cleanup-storagefile
Minor code cleanup in StorageFile
2019-09-07 01:34:27 +03:00
alexey-milovidov
be8341d174
Merge pull request #6851 from Akazz/minor_fixes_in_tests-1
Fixing a few things in stateless tests
2019-09-06 22:00:54 +03:00
stavrolia
f533485d19 Minor code cleanup 2019-09-06 21:29:41 +03:00
alexey-milovidov
00edf4fac3
Update HashTable.h 2019-09-06 21:19:50 +03:00
alexey-milovidov
805bd31641
Update dbms/src/Common/HashTable/HashTable.h
Co-Authored-By: akuzm <36882414+akuzm@users.noreply.github.com>
2019-09-06 21:12:31 +03:00
filimonov
526afd44ed Make SensitiveDataMasker a singleton. (#6810)
Among other things, it is used to filter logs, which are being written even after the global server context is deinitialized, so we can't keep masker there.
2019-09-06 20:48:27 +03:00
alexey-milovidov
2ffc99b893
Merge pull request #6846 from yandex/aku/fixed-hash-table
Cosmetic change: remove redundant functions from FixedHashTable
2019-09-06 20:20:26 +03:00
alexey-milovidov
71ed9477dc
Update FixedHashTable.h 2019-09-06 20:20:19 +03:00
alexey-milovidov
c90dfc1e48
Merge pull request #6837 from filimonov/fix_some_pvs_reported_issues
Fix some pvs reported issues
2019-09-06 20:15:14 +03:00
Alexey Milovidov
1c3fab8f2c Returned support for very old Linux kernels (that lack of F_GETPIPE_SZ fcntl) 2019-09-06 20:10:28 +03:00
Nikolai Kochetov
3bd5d84ecc Update PipelineExecutor. 2019-09-06 19:04:18 +03:00
akazz
f511337028 Fixing minor things 2019-09-06 18:54:33 +03:00
akazz
0f9b91a663 Cosmetic stuff 2019-09-06 18:45:49 +03:00
akazz
e7235cdcfd Minor changes 2019-09-06 18:13:22 +03:00
Alexander Kuzmenkov
cacf6d3282 Key memory management for compound hash tables.
Some aggregation methods initially emplace a temporary StringRef key
into a hash table. Then, if the key was not seen before, they make a
persistent copy of the key and update the hash table with it. This
approach is not suitable for compound hash tables, because the logic of
when the persistent key is needed is more complex, and is contained
within the hash table itself.

In this commit, we switch to managing key memory with callbacks passed
to the hash table, that allow it to request a persistent copy of the key
if it is needed. This should be more appropriate for compound hash
tables.

This commit prepares for StringHashMap PR #5417.
2019-09-06 18:05:28 +03:00
robot-clickhouse
04d2bb9cfd Auto version update to [19.15.1.1] [54426] 2019-09-06 17:58:33 +03:00
robot-clickhouse
f2b775b02e Auto version update to [19.14.1.1274] [54425] 2019-09-06 17:58:04 +03:00
Alexander Kuzmenkov
05095111a1 Cosmetic change: remove redundant functions from FixedHashTable 2019-09-06 17:47:32 +03:00
akazz
13631d2da3 Removed some garbage 2019-09-06 16:58:37 +03:00
Nikolai Kochetov
32cc3a4bee Revert enumerate streams. 2019-09-06 16:28:49 +03:00
Anton Popov
69da4f30b3
Merge branch 'master' into merging_input_function 2019-09-06 16:20:00 +03:00
filimonov
f505549b43
changed wrong pvs suppression code 2019-09-06 14:46:42 +02:00
Nikolai Kochetov
52305cefbc Merge branch 'merging-aggregated-processors' into processors-2 2019-09-06 15:21:17 +03:00
Nikolai Kochetov
d10b7d7a2b Added ConvertingAggregatedToChunksTransform. 2019-09-06 15:19:59 +03:00
alesapin
571ed1bb25
Merge pull request #6840 from filimonov/history_file_from_env
Ability to change history path by changing env
2019-09-06 13:22:49 +03:00
alexey-milovidov
3d8ec8fb33
Merge pull request #6823 from yandex/fancyqlx-master
Merge #6167
2019-09-06 03:18:26 +03:00
alexey-milovidov
05a1a7ac71
Update InterpreterSelectQuery.cpp 2019-09-06 03:18:06 +03:00
alexey-milovidov
18dcb3753d
Merge pull request #6824 from 4ertus2/mjoin
Refactoring (ExpressionAnalyzer & SubqueryForSet)
2019-09-06 03:17:16 +03:00
Mikhail Filimonov
34f393c17e Ability to change history path by changing env 2019-09-06 01:35:25 +02:00
Denis Zhuravlev
50c32490be
Update arrayElement.cpp
Typo in error message ( is -> are )
2019-09-05 19:41:27 -03:00
Olga Khvostikova
4129d8cf60
Merge pull request #6092 from yandex/globs-in-file-one-more-attempt
Globs in storage file and HDFS
2019-09-05 23:05:37 +03:00
Olga Khvostikova
f90642ce23
Merge pull request #6610 from CurtizJ/merging_with_ties_and_with_fill
WITH TIES modifier for LIMIT and WITH FILL modifier for ORDER BY. (continuation of #5069)
2019-09-05 22:45:48 +03:00
akazz
32c77cd933 Dropped weak_ptrs! 2019-09-05 21:09:33 +03:00
stavrolia
5e37510aae Better 2019-09-05 21:09:19 +03:00
Mikhail Filimonov
b40204a360 PVS https://clickhouse-test-reports.s3.yandex.net/0/2cda8f1563e9b2d11f75c68db817c3f68ace1160/pvs_studio_report/pvs-studio-html-report/sources/InterpreterSelectQuery.cpp_24.html#ln430 2019-09-05 19:23:36 +02:00
Mikhail Filimonov
622ea38b21 PVS false positive https://clickhouse-test-reports.s3.yandex.net/0/2cda8f1563e9b2d11f75c68db817c3f68ace1160/pvs_studio_report/pvs-studio-html-report/sources/Context.cpp_21.html#ln1226 2019-09-05 18:59:15 +02:00
Mikhail Filimonov
cfb0431994 PVS https://clickhouse-test-reports.s3.yandex.net/0/2cda8f1563e9b2d11f75c68db817c3f68ace1160/pvs_studio_report/pvs-studio-html-report/sources/executeQuery.cpp_26.html#ln33 2019-09-05 18:57:13 +02:00
akazz
9b55e66755 WIP - About to give up storing weak_ptrs! 2019-09-05 18:19:36 +03:00
akazz
ab6ae7c82b Refactored Clients -> Referers 2019-09-05 18:14:17 +03:00
stavrolia
587a780ba2 Better 2019-09-05 17:42:17 +03:00
CurtizJ
b04cea7463 minor fixes of table function input 2019-09-05 16:17:01 +03:00
akazz
d374a6fb58 Better 2019-09-05 15:49:20 +03:00
akazz
838957f0e2 Cosmetics 2019-09-05 15:45:44 +03:00
akazz
54b4db36eb Changed FastPath + better diagnostics 2019-09-05 15:20:10 +03:00
Vasily Nemkov
c2fc71b5e5 Post-PR fixes
Renamed settings, updated docs.
2019-09-05 13:35:36 +03:00
Nikolai Kochetov
e1e600b8b3 Update test with sample and prewhere. 2019-09-05 10:42:14 +03:00
Alexey Milovidov
a4c1d64aba Allowed to run test with the server run from source tree 2019-09-05 07:50:08 +03:00
Ivan
ab7df6b6dd
Fix kafka tests (#6805)
* Commit offsets more precisely
* Get rid of DelimitedReadBuffer since read buffers don't line up well
* Increase timeouts
2019-09-05 00:25:33 +03:00
stavrolia
5d6959173c Improvement 2019-09-04 22:55:56 +03:00
alexey-milovidov
b310d755fe
Merge pull request #6819 from infinivision/fix_6761_bitmap_mem_leak
fix bitmapSubsetInRange memory leak
2019-09-04 19:58:49 +03:00
Nikolai Kochetov
0d1846baab Update test create table if not exists sample_prewhere 2019-09-04 19:46:10 +03:00
chertus
a395be3e91 minor changes 2019-09-04 19:37:05 +03:00