Commit Graph

21110 Commits

Author SHA1 Message Date
Guillaume Tassery
2402e84bfc Merge branch 'master' of github.com:PerformanceVision/ClickHouse into move_partition 2019-09-13 11:20:40 +02: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
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
Clément Rodriguez
10be7809cd
Fix connection to early MySQL connection closure in MySQLBlockInputStream.cpp 2019-09-10 10:21:13 +02: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
Ivan
6c32fc3fc1
Store offsets manually for each message (#6872) 2019-09-09 19:59:51 +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
akazz
f511337028 Fixing minor things 2019-09-06 18:54:33 +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
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
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
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
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
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