Commit Graph

2318 Commits

Author SHA1 Message Date
Maksim Kita
5f5470c2cd Removed DenseHashMap, DenseHashSet 2021-08-15 13:32:56 +03:00
Alexey Milovidov
020beb885d Merge branch 'master' into async-reads 2021-08-15 12:08:19 +03:00
Alexey Milovidov
60dccce818 Remove trailing zeros from Decimal serialization #15794 2021-08-15 08:29:31 +03:00
Nikolai Kochetov
6b1030c9b8 Rewrite PushingToViewsBIS part 1. 2021-08-13 19:32:29 +03:00
tavplubix
bd3fe4fb41
Update MemoryTracker.cpp 2021-08-13 13:23:54 +03:00
Nikolai Kochetov
d207fbc699
Merge pull request #27152 from qoega/fix-access-gtest-in-arcadia
Fix arcadia src/Access gtest
2021-08-13 10:51:29 +03:00
Nikolai Kochetov
031c15cb0e Add comment. 2021-08-12 12:18:20 +03:00
Nikolai Kochetov
5e5a6ff654 Merge branch 'master' into qoega-fix-access-gtest-in-arcadia 2021-08-12 12:02:15 +03:00
mergify[bot]
21cbd50ae1
Merge branch 'master' into materialization_log 2021-08-12 08:53:34 +00:00
Kruglov Pavel
918a69e70b
Merge pull request #27174 from fuwhu/feature/add-metric-MaxPushedDDLEntryID
Add metric MaxPushedDDLEntryID
2021-08-12 10:57:03 +03:00
Nikolai Kochetov
739ffe97b6 Fix ya.make. 2021-08-11 21:07:18 +03:00
Nikolai Kochetov
79290f8e2e Another try 2021-08-11 20:49:19 +03:00
Nikolai Kochetov
2117278f88 Another try 2021-08-11 15:21:54 +03:00
benbiti
83ebcd45eb dup codes calc QueryMemoryLimitExceeded 2021-08-11 17:03:07 +08:00
fuwhu
8515f3b3a2 Add metric MaxPushedDDLEntryID. 2021-08-11 11:40:06 +08:00
Nikolai Kochetov
07cc2ec85b Try fix build. 2021-08-10 15:36:40 +03:00
Raúl Marín
820a6e0987 Refactor MV stage metric setup and teardown 2021-08-10 10:49:12 +02:00
Raúl Marín
d1d47658f5 Merge remote-tracking branch 'blessed/master' into materialization_log 2021-08-10 10:49:05 +02:00
Nikolai Kochetov
a1ec7f75c5 Merge branch 'master' into qoega-fix-access-gtest-in-arcadia 2021-08-10 11:31:47 +03:00
Nikolai Kochetov
07a6903009 Try fix build. 2021-08-10 09:35:35 +03:00
Nikolai Kochetov
3794e9e980 Try fix build. 2021-08-09 23:24:33 +03:00
Nikolai Kochetov
c4cf1eae0d Try fix build. 2021-08-09 18:46:39 +03:00
Nikolai Kochetov
8cc493a3cd Try fix build. 2021-08-09 18:09:29 +03:00
Alexey Milovidov
8b9da6fe26 Merge branch 'master' into async-reads 2021-08-09 03:33:32 +03:00
alexey-milovidov
bd78051c2f
Merge pull request #27428 from azat/thread-pool-no-miss
Do not miss exceptions from the ThreadPool
2021-08-09 02:46:50 +03:00
Kseniia Sumarokova
ba220c8e3a
Merge branch 'master' into subquery-operators 2021-08-08 20:18:41 +03:00
Azat Khuzhin
83d871b701 Do not miss exceptions from the ThreadPool 2021-08-08 19:25:43 +03:00
mergify[bot]
8d05b7c5e5
Merge branch 'master' into roaring-memory-tracker 2021-08-08 15:19:57 +00:00
Alexey Milovidov
161aa40206 Fix build; add comments 2021-08-07 19:30:59 +03:00
kssenii
729eba52ea Merge branch 'master' of https://github.com/ClickHouse/ClickHouse into zdikov-subquery-operators 2021-08-07 15:59:58 +00:00
Nikolay Degterinsky
b5a6e18511 Small fixes 2021-08-07 15:15:49 +00:00
Nikolay Degterinsky
9a45458faf Add bzip2 file compression 2021-08-07 00:25:52 +00:00
Anton Popov
3a0d4807a5 Merge branch 'async-insert' of git://github.com/abyss7/ClickHouse into merging-20557 2021-08-06 16:20:02 +03:00
Alexey Milovidov
35062b2c12 Fix compatibility 2021-08-06 02:10:55 +03:00
Alexey Milovidov
a822e2d453 Fix error 2021-08-06 02:06:26 +03:00
Alexey Milovidov
b1eb3fde6c Add comment 2021-08-05 23:51:39 +03:00
Alexey Milovidov
638b229e27 Remove debug headers 2021-08-05 23:50:09 +03:00
Alexey Milovidov
bd776e432f Advancements 2021-08-05 23:36:46 +03:00
Alexey Milovidov
7fa700de00 Merge branch 'master' into roaring-memory-tracker 2021-08-05 22:17:10 +03:00
Alexey Milovidov
0f832fcf8b Add missing file 2021-08-05 14:45:38 +03:00
Raúl Marín
9f32ecca89 Merge remote-tracking branch 'blessed/master' into materialization_log 2021-08-02 16:21:10 +02:00
Alexey Milovidov
2a0cba2b9f Merge branch 'master' into async-reads 2021-08-01 01:25:13 +03:00
alesapin
444ad67663
Merge pull request #26972 from ClickHouse/fix_zookeeper_log_initialization
Fix system.zookeeper_log initialization
2021-07-30 12:24:19 +03:00
PHO
6425dd001a
Add a codec AES_128_GCM_SIV for encrypting columns on disk (#19896)
* Add a codec Encrypted() for encrypting columns on disk

While this is implemented as a compression codec, it does not actually compress data. It instead encrypts data on disk. The key is obtained by executing a user-specified command at the server startup, or if it's not specified the codec refuses to process any data. For now the only supported cipher is 'AES-128-GCM-SIV'.
2021-07-30 12:12:33 +03:00
Alexander Tokmakov
47995a053e fix system.zookeeper_log initialization 2021-07-29 17:48:49 +03:00
Azat Khuzhin
bad1f91f28 Fix reading of custom TLDs (stops processing with lower buffer or bigger file) 2021-07-29 10:36:32 +03:00
Alexey Milovidov
1149058084 Merge branch 'master' into async-reads 2021-07-28 22:29:51 +03:00
Raúl Marín
4a09c54a04 Merge remote-tracking branch 'blessed/master' into materialization_log 2021-07-28 10:38:47 +02:00
Alexander Tokmakov
378dcef813 fixes 2021-07-27 19:57:28 +03:00
Raúl Marín
0d9bf0a08e Avoid havin multiple profilers in the same thread 2021-07-27 16:29:34 +02:00
Raúl Marín
75d18bc79b CI linters and compiler errors 2021-07-27 16:29:34 +02:00
Raúl Marín
fc23e212c2 ThreadStatus: Don't change current thread if it's not this 2021-07-27 16:29:33 +02:00
Raúl Marín
7c1fcc94b0 View log: Make sure to only profile events during view execution 2021-07-27 16:29:33 +02:00
Raúl Marín
6b9ec2a62e WIP 2021-07-27 16:28:28 +02:00
Raúl Marín
efe1938437 WIP: Slow improvements 2021-07-27 16:26:29 +02:00
Raúl Marín
ea5c02a605 WIP 2021-07-27 16:26:27 +02:00
mergify[bot]
2929cf3ba8
Merge branch 'master' into system_zookeeper_log 2021-07-26 08:40:55 +00:00
Alexey Milovidov
5c3f5cb35a Experiment with asynchronous readers 2021-07-26 03:34:36 +03:00
Nikolai Kochetov
5ffd99dfd4
Merge pull request #25674 from amosbird/distributedreturnconnection
Drain connection asynchronously
2021-07-22 11:04:49 +03:00
Alexey Milovidov
2df3e14559 Attempt to add memory tracking to RoaringBitmaps 2021-07-22 02:56:17 +03:00
Vladimir
576b407804
Support conditions in JOIN ON section (#24420)
* Try to enforce table identification in CollectJoinOnKeysMatcher

* Support filtering conditions in JOIN ON for HashJoin

* Correct handle non equi join

* Update test 00878_join_unexpected_results

* Join on filters calculated as one row before join

* Do not lookup key in hash join if condition for row is not hold

* better

* Support filtering conditions in JOIN ON for MergeJoin

* Support Nullable mask in JOIN ON section

* Fix style in Interpreters/TableJoin.cpp

* Change return type of getColumnAsMask in join_common to ColumnPtr

* Handle Nullable(Nothing) type in JOIN ON section, add test cases

* Fix type cast JoinCommon::getColumnAsMask

* Check type if conditions in JOIN ON section, support functions

* Update tests with JOIN ON

* Style changes, add comments for conditions in JOIN ON section

* Add test cases for join on condtions

* JOIN ON key1 = key2 AND (cond1 OR cond2)

* Remove CollectJoinOnKeysVisitor has_join_keys

* Add test cases for join on nullable/lc conditions

* Fix style

* Change error code 48 to 403 in join on tests

* Fix whitespace
2021-07-21 20:03:33 +03:00
Realist007
31e26862b5
Merge branch 'master' into feature/create-simple-lambda-function 2021-07-21 10:33:53 +03:00
ANDREI STAROVEROV
7966bded6c Add storing on disk for created functions 2021-07-20 23:20:23 +03:00
Amos Bird
dbfb699690
Asynchronously drain connections. 2021-07-19 21:53:29 +08:00
alexey-milovidov
b52411a715
Merge pull request #12455 from amosbird/npc
Nullable primary key with correct KeyCondition
2021-07-18 17:52:20 +03:00
alexey-milovidov
38dfe1fc0a
Merge pull request #26172 from ClickHouse/exception_id
Add error id to exceptions
2021-07-17 02:07:17 +03:00
alexey-milovidov
6f13eb49c1
Merge pull request #26320 from Algunenano/profile_sleep_calls
Add profile events for sleep function calls
2021-07-17 01:37:23 +03:00
alexey-milovidov
181f20cfe1
Merge pull request #26368 from ianton-ru/fix_dns_exception
Catch Poco exception in resolveIPAddressImpl
2021-07-16 16:04:55 +03:00
Anton Ivashkin
4dfd6ddcdb Catch Poco exception in resolveIPAddressImpl 2021-07-16 10:47:44 +03:00
Alexey Milovidov
d984fc4301 Fix flaky integration test 2021-07-15 13:35:37 +03:00
Raúl Marín
901e251d53 Add profile events to sleep function calls 2021-07-14 18:44:09 +02:00
vdimir
e2280aad18
Merge branch 'master' into exception_id 2021-07-14 14:50:50 +03:00
Zhichang Yu
fe5d17680e Merge remote-tracking branch 'origin/master' into zero_copy_hdfs 2021-07-14 02:12:28 +00:00
Alexander Tokmakov
590615df66 fix 2021-07-13 22:01:43 +03:00
Alexander Tokmakov
f0ed6be269 Merge branch 'master' into system_zookeeper_log 2021-07-13 20:49:37 +03:00
Ivan Lezhankin
ab26aed6f9 Merge remote-tracking branch 'upstream/master' into async-insert 2021-07-13 13:54:09 +03:00
Vitaly Baranov
e086e5e384
Merge branch 'master' into alexelex-encryption-1 2021-07-13 11:28:41 +03:00
Zhichang Yu
5047c758f4 fix per review 2021-07-13 07:20:20 +00:00
mergify[bot]
b7ae4e4ced
Merge branch 'master' into async-insert 2021-07-12 09:21:37 +00:00
kssenii
aecb344baa Merge branch 'master' of https://github.com/ClickHouse/ClickHouse into g-arslan-add-sqlite-support 2021-07-12 07:55:39 +00:00
alexey-milovidov
8f1d7e67ca
Merge pull request #26003 from ClickHouse/ditch-aio
Remove AIO for sequential reads
2021-07-12 03:25:23 +03:00
Alexey Milovidov
c4f34689ec Merge branch 'master' into exception_id 2021-07-11 22:12:06 +03:00
alesapin
4964bc1230
Merge pull request #26127 from ClickHouse/apply_zookeeper_logs
Fix several bugs in ZooKeeper snapshots deserialization
2021-07-11 10:25:04 +03:00
Alexey Milovidov
30826c7d7d Return O_DIRECT 2021-07-11 03:33:14 +03:00
Alexey Milovidov
81646f8389 Merge branch 'master' into ditch-aio 2021-07-11 03:06:45 +03:00
kssenii
10611ef92a Normal exceptions 2021-07-10 11:00:59 +00:00
Alexey Milovidov
e09467fd5a Merge with #26041 2021-07-10 11:29:54 +03:00
Alexey Milovidov
588c31d9f5 Better messages 2021-07-10 11:18:06 +03:00
Alexey Milovidov
c63237f8e4 Merge branch 'master' into exception_id 2021-07-10 11:14:46 +03:00
alexey-milovidov
0686155b0e
Merge pull request #26128 from kssenii/fix-ch-local-progress
Fix progress for clickhouse-local
2021-07-10 11:10:46 +03:00
Alexey Milovidov
a6d0cda7c1 Merging #24404 2021-07-10 10:12:18 +03:00
alexey-milovidov
7a1a184c48
Merge pull request #24404 from nvartolomei/nv/config-in-place-include
Support for multiple includes in XML based configuration
2021-07-10 10:10:18 +03:00
Alexey Milovidov
1f91c65aca Add error id to exceptions 2021-07-10 05:43:53 +03:00
Alexander Tokmakov
ca45054de5 add enums 2021-07-10 00:18:20 +03:00
kssenii
56c04c604e Remove misleading stderr 2021-07-10 00:00:13 +03:00
Alexander Tokmakov
4165ba2a01 add system.zookeeper_log 2021-07-09 17:05:35 +03:00
kssenii
947bb4a942 Fix progress bar for local 2021-07-09 16:43:00 +03:00
alesapin
b2fb551bd4 Fix several bugs in ZooKeeper snapshots deserialization 2021-07-09 16:00:50 +03:00
alexey-milovidov
c98e131a81
Merge pull request #26072 from vdimir/fix-offset-check-in-window-frame
Fix logical error with signed and unsigned offset in WindowFrame::checkValid
2021-07-09 03:06:15 +03:00
Realist007
50149abfa5
Merge branch 'master' into feature/create-simple-lambda-function 2021-07-09 00:16:26 +03:00
alesapin
c34a769143
Merge pull request #26079 from ClickHouse/fix_abort
Fix abort in ZooKeeper client
2021-07-08 22:58:28 +03:00
alexey-milovidov
9c2aad6c17
Merge pull request #25962 from ClickHouse/network-instrumentation
More instrumentation for network interaction: add counters for recv/send bytes; add gauges for recvs/sends.
2021-07-08 17:20:16 +03:00
alesapin
e621fb644d Fix abort in ZooKeeper client 2021-07-08 16:57:55 +03:00
vdimir
71d0682a2b
Use FieldVisitor to compare offsets in WindowFrame::checkValid 2021-07-08 12:24:08 +03:00
alesapin
e231f6ce5c
Merge pull request #26034 from nvartolomei/nv/zk-watch-metric-drift
Fix for ZK watch metric drift in rare conditions
2021-07-07 14:26:34 +03:00
Azat Khuzhin
5bc0533712 Add a note for padded to 8 bytes keys in StringHashTable 2021-07-07 10:42:33 +03:00
Vladimir
b46ac3dfd1
Merge pull request #25609 from zxc111/master 2021-07-07 09:36:55 +03:00
Nicolae Vartolomei
24f5ad8920 Subtract number of watch callbacks as this is what we actually count 2021-07-06 17:13:30 +01:00
Nicolae Vartolomei
9b3ceda57c Increment ZooKeeperWatch metric only if the callback is registered 2021-07-06 17:10:29 +01:00
vdimir
c6e13e6e2e
Add leading zeros in function bin 2021-07-06 15:19:42 +03:00
mergify[bot]
720660e9e9
Merge branch 'master' into network-instrumentation 2021-07-06 00:54:34 +00:00
Alexey Milovidov
9875adc00b Make it even worse 2021-07-06 01:09:39 +03:00
Alexey Milovidov
21fb6ddea5 Remove AIO for sequential reads 2021-07-05 23:02:24 +03:00
vdimir
231740f2d6
Function bin for uint uses writeBinByte, correct for single zero 2021-07-05 14:44:50 +03:00
bharatnc
8cb5c06813 ErrorCodes.cpp - add error codes for LZ4 encode and decode 2021-07-04 23:19:27 -07:00
Alexey Milovidov
d437ec2e1d Merge branch 'master' into system-metrics 2021-07-05 03:03:07 +03:00
alexey-milovidov
fef7c557f6
Merge pull request #24789 from kitaisreal/compile-aggregation-functions
Compile aggregate functions
2021-07-05 02:57:49 +03:00
Alexey Milovidov
08aca329bd Development 2021-07-05 00:22:58 +03:00
Alexey Milovidov
c4675285bf Development 2021-07-04 23:49:36 +03:00
Alexey Milovidov
0769366441 Remove part of trash 2021-07-04 04:19:19 +03:00
Alexey Milovidov
f6b5dbd666 Merge branch 'master' into system-metrics 2021-07-04 03:27:13 +03:00
Alexey Milovidov
c762e2247d More instrumentation for network interaction: add counters for recv/send bytes; add gauges for recvs/sends. 2021-07-04 00:00:50 +03:00
ANDREI STAROVEROV
3bf0db519e Improve tests and validation of new functions 2021-07-03 23:17:02 +03:00
Realist007
d99e7059cd
Merge branch 'master' into feature/create-simple-lambda-function 2021-07-03 19:04:10 +03:00
zxc111
ace487278f refactory hex/unhex/bin/unbin 2021-07-03 02:08:17 +08:00
zxc111
12aea188b0 add bin/unbin support 2021-07-02 23:13:47 +08:00
Alexey Milovidov
2866d45681 Add support for queries with null quoted identifier and ON CLUSTER 2021-07-02 02:01:13 +03:00
Maksim Kita
3fe559b31f Compile aggregate functions 2021-07-01 22:56:35 +03:00
Maksim Kita
53dc831a60
Update configReadClient.cpp 2021-06-30 12:42:44 +03:00
Anton Ivashkin
8aae56f24a Minor fixes based on code review result 2021-06-30 12:06:11 +03:00
alexey-milovidov
48348e6375
Update configReadClient.cpp 2021-06-29 21:12:10 +03:00
Anton Ivashkin
955c031474 Fix start clickhouse-client with unreadable working directory 2021-06-29 17:37:12 +03:00
alesapin
cdc95fa98a
Merge pull request #25428 from ClickHouse/zookeeper_snapshots
Tool for conversion of ZooKeeper data into clickhouse-keeper snapshot
2021-06-29 12:58:45 +03:00
Ivan Lezhankin
1bb41593d1 Merge remote-tracking branch 'upstream/master' into async-insert 2021-06-28 22:55:56 +03:00
Azat Khuzhin
e590d9c8bb Add comments for VERSION_REVISION vs DBMS_TCP_PROTOCOL_VERSION 2021-06-28 22:01:14 +03:00
mergify[bot]
04814114e7
Merge branch 'master' into zookeeper_snapshots 2021-06-28 14:17:32 +00:00
alexey-milovidov
0a26687115
Merge pull request #23864 from azat/dist-split-batch-and-retry
Add ability to split distributed batch on failures (i.e. due to memory limits)
2021-06-27 19:28:26 +03:00
Azat Khuzhin
8262e251c4 Fix getStackSize() stack address on osx
Should fix the following exception under osx:

  Stack size too large. Stack address: 0x700001a58000, frame address: 0x700001a53f40, stack size: 540864, maximum stack size: 524288 (version 21.7.1.1)
2021-06-24 10:48:43 +03:00
Azat Khuzhin
3c76986311 Fix alternative stack under osx (MINSIGSTKSZ is 32K)
Fixes: #25632
2021-06-24 00:33:33 +03:00
Azat Khuzhin
3bd53c68f9 Try to split the batch in case of broken batch too
Broken batches may be because of abnormal server shutdown (and lack of
fsync), and ignoring the whole batch is not great in this case, so apply
the same split logic here too.

v2: rename exception
v3: catch missing exception
v4: fix marking the file as broken multiple times (fixes
test_insert_distributed_async_send with setting enabled)
2021-06-23 02:48:47 +03:00
Azat Khuzhin
a0209178cc Add ability to split distributed batch on failures
Add distributed_directory_monitor_split_batch_on_failure setting (OFF by
default), that will split the batch and send files one by one in case of
retriable errors.

v2: more error codes
2021-06-23 02:48:47 +03:00
alesapin
6b815b4f17 Merge branch 'master' into zookeeper_snapshots 2021-06-22 13:50:27 +03:00
alesapin
bf0a4864ac Add support for set/get ACL commands 2021-06-22 13:49:35 +03:00
Realist007
673a813cfa
Merge branch 'master' into feature/create-simple-lambda-function 2021-06-21 22:41:12 +03:00
alesapin
731edc9a6d Fixes in ACLs 2021-06-21 18:45:45 +03:00
alesapin
76cee4e3cf Debugging 2021-06-21 16:58:39 +03:00
kssenii
7d3dee172c FIx progress 2021-06-21 12:19:25 +00:00
alexey-milovidov
8ba6a5393f
Merge pull request #25509 from azat/fix-altstack
Fix alternative stack for SIGSEGV handling
2021-06-21 12:10:00 +03:00
alexey-milovidov
d2c86e52e6
Update checkStackSize.cpp 2021-06-21 12:09:14 +03:00
alexey-milovidov
f37faf02fa
Update checkStackSize.cpp 2021-06-21 12:08:30 +03:00
alexey-milovidov
9a4125dd7c
Update ThreadStatus.cpp 2021-06-21 12:06:41 +03:00
Azat Khuzhin
12eadc2b5e Add a guard page for alternative signal handling stack 2021-06-20 20:08:50 +03:00
Azat Khuzhin
4dcbf3a5c5 Replace __pthread_get_minstack() with a const 2021-06-20 14:03:04 +03:00
Mike Kot
4c391f8e99
SYSTEM RESTORE REPLICA replica [ON CLUSTER cluster] (#13652)
* initial commit: add setting and stub

* typo

* added test stub

* fix

* wip merging new integration test and code proto

* adding steps interpreters

* adding firstly proposed solution (moving parts etc)

* added checking zookeeper path existence

* fixing the include

* fixing and sorting includes

* fixing outdated struct

* fix the name

* added ast ptr as level of indirection

* fix ref

* updating the changes

* working on test stub

* fix iterator -> reference

* revert rocksdb submodule update

* fixed show privileges test

* updated the test stub

* replaced rand() with thread_local_rng(), updated the tests

updated the test

fixed test config path

test fix

removed error messages

fixed the test

updated the test

fixed string literal

fixed literal

typo: =

* fixed the empty replica error message

* updated the test and the code with logs

* updated the possible test cases, updated

* added the code/test milestone comments

* updated the test (added more testcases)

* replaced native assert with CH one

* individual replicas recursive delete fix

* updated the AS db.name AST

* two small logging fixes

* manually generated AST fixes

* Updated the test, added the possible algo change

* Some thoughts about optimizing the solution:

ALTER MOVE PARTITION .. TO TABLE -> move to detached/ + ALTER ... ATTACH

* fix

* Removed the replica sync in test as it's invalid

* Some test tweaks

* tmp

* Rewrote the algo by using the executeQuery instead of

hand-crafting the ASTPtr.

Two questions still active.

* tr: logging active parts

* Extracted the parts moving algo into a separate helper function

* Fixed the test data and the queries slightly

* Replaced query to system.parts to direct invocation,

started building the test that breaks on various parts.

* Added the case for tables when at least one replica is alive

* Updated the test to test replicas restoration by detaching/attaching

* Altered the test to check restoration without replica restart

* Added the tables swap in the start if the server failed last time

* Hotfix when only /replicas/replica... path was deleted

* Restore ZK paths while creating a replicated MergeTree table

* Updated the docs, fixed the algo for individual replicas restoration case

* Initial parts table storage fix, tests sync fix

* Reverted individual replica restoration to general algo

* Slightly optimised getDataParts

* Trying another solution with parts detaching

* Rewrote algo without any steps, added ON CLUSTER support

* Attaching parts from other replica on restoration

* Getting part checksums from ZK

* Removed ON CLUSTER, finished working solution

* Multiple small changes after review

* Fixing parallel test

* Supporting rewritten form on cluster

* Test fix

* Moar logging

* Using source replica as checksum provider

* improve test, remove some code from parser

* Trying solution with move to detached + forget

* Moving all parts (not only Committed) to detached

* Edited docs for RESTORE REPLICA

* Re-merging

* minor fixes

Co-authored-by: Alexander Tokmakov <avtokmakov@yandex-team.ru>
2021-06-20 11:24:43 +03:00
Azat Khuzhin
9a3a1397e6 Fix alternative stack for SIGSEGV handling
Previous stack size of 4096 wasn't enough, and this lead to that on
SIGSEGV signal handler may overwrite some TLS data (like in the
following example [1]) and in real binary "current_thread" was
overwritten, and this leads to lack of query-id on SIGSEGV, like here
[2].

  [1]: https://gist.github.com/azat/2ee360fd4f2828d363b0926431afacc6
  [2]: https://clickhouse-test-reports.s3.yandex.net/24411/79563953201ce6249a8fd49e22be3902ca4ee43a/fuzzer_ubsan/report.html#fail1

Fix this by using __pthread_get_minstack() that takes TLS block into
account. Yes it is private, but let's try (like rust tried).

This patch will also decrease TLS, since now the per-thread stack will
be allocated in the heap, not on the stack of each thread.

Refs: https://sourceware.org/legacy-ml/libc-alpha/2012-06/msg00335.html
Refs: https://maskray.me/blog/2021-02-14-all-about-thread-local-storage
Refs: https://sourceware.org/bugzilla/show_bug.cgi?id=11787
2021-06-19 22:47:01 +03:00
Azat Khuzhin
57960746e2 Add getStackSize() helper 2021-06-19 20:09:01 +03:00
Realist007
60c9f7fc5d
Merge branch 'master' into feature/create-simple-lambda-function 2021-06-19 17:54:03 +03:00
Amos Bird
f2ed5ef42b
Nullable primary key with correct KeyCondition 2021-06-18 23:04:24 +08:00
Kseniia Sumarokova
4fe722d1a4
Merge pull request #25431 from vitlibar/no-underscore_before-preprocessed_configs
Fix underscore before preprocessed configs.
2021-06-18 17:53:03 +03:00
kssenii
f7029b168b Generate ya make 2021-06-18 10:56:24 +03:00
kssenii
bdc8fe1ca0 Merge branch 'master' of github.com:ClickHouse/ClickHouse into progress-bar 2021-06-18 09:33:29 +03:00
Latysheva Alexandra
48d3419160
Merge branch 'master' into alexelex-encryption-1 2021-06-18 11:28:08 +06:00
Vitaly Baranov
fc3d77bd66 Fix underscore before preprocessed configs. 2021-06-18 06:14:11 +03:00
Kseniia Sumarokova
47cb288834
Update src/Common/ProgressIndication.h
Co-authored-by: Alexander Kuzmenkov <36882414+akuzm@users.noreply.github.com>
2021-06-18 00:24:28 +03:00
Ivan Lezhankin
37365589ed Merge branch 'master' into async-insert 2021-06-17 16:57:45 +03:00
Maksim Kita
67e9b85951 Merge ext into common 2021-06-16 23:28:41 +03:00
mergify[bot]
7959d92029
Merge branch 'master' into minor-changes-3 2021-06-15 18:07:24 +00:00
Alexey Milovidov
4e982a3ae6 Merge branch 'master' into minor-changes-3 2021-06-15 00:45:45 +03:00
alexey-milovidov
2370c8b3a1
Merge pull request #25260 from ClickHouse/fix-topk-memory-tracking
Fix memory tracking of aggregate function `topK`
2021-06-15 00:41:12 +03:00
Azat Khuzhin
92765a3595 Fix clang-tidy warnings in VersionNumber (use Int64 over long) 2021-06-14 10:42:50 +03:00
Azat Khuzhin
40abdaf24a Drop unnecessary qualified namespace 2021-06-14 10:38:26 +03:00
Azat Khuzhin
b5a2fad993 More generic VersionNumber 2021-06-14 10:38:26 +03:00
Azat Khuzhin
055e9d87f0 Use VersionNumber for detecting renameat2() 2021-06-14 10:38:26 +03:00
Azat Khuzhin
1b5ca07ff4 Convert VersionNumber::fromString() to constructor 2021-06-14 10:38:26 +03:00
Azat Khuzhin
ba05bf3977 Use LOGICAL_ERROR instead of introducing BAD_VERSION
But note, that tests with EXPECT_EXIT() does not work with --gtest_filter:

a) only this test is included into unit_tests_dbms

   $ src/unit_tests_dbms --gtest_filter=VersionNumber*
   Running main() from ../contrib/googletest/googletest/src/gtest_main.cc
   Note: Google Test filter = VersionNumber*
   [==========] Running 2 tests from 1 test suite.
   [----------] Global test environment set-up.
   [----------] 2 tests from VersionNumber
   [ RUN      ] VersionNumber.VersionNumber
   [       OK ] VersionNumber.VersionNumber (0 ms)
   [ RUN      ] VersionNumber.fromString
   Segmentation fault (core dumped)

   (gdb) bt
   0  0x00007fffda323d22 in raise () from /usr/lib/libc.so.6
   1  0x00007fffda30d862 in abort () from /usr/lib/libc.so.6
   2  0x00007fffdbe686f5 in DB::handle_error_code (msg=..., code=49, remote=false, trace=...) at Exception.cpp:49
   3  0x00007fffdbe68846 in DB::Exception::Exception (this=0x7fffd5c5a240, msg=..., code=49, remote_=false) at Exception.cpp:60
   4  0x00007fffe26b2cb3 in DB::Exception::Exception<unsigned long> (this=0x7fffd5c5a240, code=49, fmt=..., args=@0x7fffffffc7e8: 4) at Exception.h:40
   5  0x00007fffdbf4d201 in DB::VersionNumber::VersionNumber (this=0x7fffffffcc20, vec=...) at VersionNumber.cpp:17
   6  0x00007fffdbf4d650 in DB::VersionNumber::fromString (version=..., strict=true) at VersionNumber.cpp:57
   7  0x00005555555db53d in VersionNumber_fromString_Test::TestBody (this=0x7fffd5c12330) at gtest_version_number.cpp:24

b) regular build

   $ src/unit_tests_dbms --gtest_filter=VersionNumber*
   Running main() from ../contrib/googletest/googletest/src/gtest_main.cc
   Note: Google Test filter = VersionNumber*
   [==========] Running 2 tests from 1 test suite.
   [----------] Global test environment set-up.
   [----------] 2 tests from VersionNumber
   [ RUN      ] VersionNumber.VersionNumber
   [       OK ] VersionNumber.VersionNumber (0 ms)
   [ RUN      ] VersionNumber.fromString
   [       OK ] VersionNumber.fromString (495 ms)
   [----------] 2 tests from VersionNumber (495 ms total)

   [----------] Global test environment tear-down
   Segmentation fault (core dumped)

   (gdb) bt
   0  testing::TestInfo::should_run (this=0xe0) at gtest.h:760
   1  0x00007ffff7f6edd5 in testing::TestSuite::ShouldRunTest (test_info=0xe0) at gtest.h:1009
   2  0x00007ffff7f6ebb2 in testing::internal::CountIf<std::__1::vector<testing::TestInfo*, std::__1::allocator<testing::TestInfo*> >, bool (*)(testing::TestInfo const*)> (c=..., predicate=0x7ffff7f6edc0 <testing::TestSuite::ShouldRunTest(testing::TestInfo const*)>)
      at gtest-internal-inl.h:294
   3  0x00007ffff7f41ae5 in testing::TestSuite::test_to_run_count (this=0x7fffd5028500) at gtest.cc:2919
   4  0x00007ffff7f41719 in testing::internal::SumOverTestSuiteList (case_list=..., method=(int (testing::TestSuite::*)(const testing::TestSuite * const)) 0x7ffff7f41ac0 <testing::TestSuite::test_to_run_count() const>) at gtest.cc:377
   5  0x00007ffff7f41ab9 in testing::internal::UnitTestImpl::test_to_run_count (this=0x7fffd5d5c000) at gtest.cc:1012
   6  0x00007ffff7f4b59d in testing::UnitTest::test_to_run_count (this=0x7ffff7fbcb80 <testing::UnitTest::GetInstance()::instance>) at gtest.cc:5059
   7  0x00007ffff7f4c4ed in testing::internal::PrettyUnitTestResultPrinter::OnTestIterationEnd (this=0x7fffd5ca4a68, unit_test=...) at gtest.cc:3589
   8  0x00007ffff7f4daf9 in testing::internal::TestEventRepeater::OnTestIterationEnd (this=0x7fffd5c83770, unit_test=..., iteration=0) at gtest.cc:3852
   9  0x00007ffff7f57570 in testing::internal::UnitTestImpl::RunAllTests (this=0x7fffd5d5c000) at gtest.cc:5737
   10 0x00007ffff7fa3a84 in testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool> (object=0x7fffd5d5c000,
      method=(bool (testing::internal::UnitTestImpl::*)(testing::internal::UnitTestImpl * const)) 0x7ffff7f56f20 <testing::internal::UnitTestImpl::RunAllTests()>, location=0x7ffff7f11d9b "auxiliary test code (environments or event listeners)") at gtest.cc:2589
   11 0x00007ffff7f71788 in testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool> (object=0x7fffd5d5c000,
      method=(bool (testing::internal::UnitTestImpl::*)(testing::internal::UnitTestImpl * const)) 0x7ffff7f56f20 <testing::internal::UnitTestImpl::RunAllTests()>, location=0x7ffff7f11d9b "auxiliary test code (environments or event listeners)") at gtest.cc:2625
   12 0x00007ffff7f56ea3 in testing::UnitTest::Run (this=0x7ffff7fbcb80 <testing::UnitTest::GetInstance()::instance>) at gtest.cc:5291
2021-06-14 10:38:26 +03:00
Azat Khuzhin
c08daa3ca5 Detect linux version at runtime (for worked nested epoll)
The #22109 adds the check but at compilation time, which is pointless,
move the check into runtime.

Remember nested epoll is required for
async_socket_for_remote/use_hedged_requests, otherwise remote queries
may stuck.
2021-06-14 10:38:26 +03:00
Alexey Milovidov
447d7bb8cd Minor changes 2021-06-14 07:13:35 +03:00
Alexey Milovidov
cae9b25074 Minor change 2021-06-14 06:05:27 +03:00
Alexey Milovidov
dbff1edcd3 Fix memory tracking of aggregate function topK 2021-06-14 05:26:05 +03:00
mergify[bot]
9cfedd9c64
Merge branch 'master' into progress-bar 2021-06-12 01:15:23 +00:00
Ivan Lezhankin
2c7cb41a69 Merge remote-tracking branch 'upstream/master' into async-insert 2021-06-11 20:04:26 +03:00
Nikolai Kochetov
4185c5954f
Merge pull request #25152 from ClickHouse/move-code-in-more-local-place
Move code to more appropriate place
2021-06-10 11:08:27 +03:00
Alexey Milovidov
6c5b2b827c Move code to more appropriate place 2021-06-10 02:58:51 +03:00
alexey-milovidov
3ff7b5af3a
Merge pull request #24763 from azat/config-processor-xml-default
Process config w/o extensions as XML format
2021-06-10 02:48:40 +03:00
alexey-milovidov
0636f40349
Merge pull request #25127 from ClickHouse/fix-partition-hash-for-uuid
Revert old UUID hash used for partition ID.
2021-06-10 02:31:01 +03:00
Nikolai Kochetov
8dc7ba4eff Fix spelling 2021-06-09 19:42:19 +03:00
Realist007
2b3a8ec259
Merge branch 'master' into feature/create-simple-lambda-function 2021-06-09 19:34:47 +03:00
Nikolai Kochetov
9548f198fe Fix build. 2021-06-09 19:11:04 +03:00
Nikolai Kochetov
12791431da Revert old UUID hash used for partition ID. 2021-06-09 16:51:40 +03:00
mergify[bot]
3a47feedb0
Merge branch 'master' into progress-bar 2021-06-09 08:04:48 +00:00
Ivan Lezhankin
973cea73b7 Merge branch 'master' into async-insert 2021-06-08 15:10:30 +03:00
mergify[bot]
b1deed7659
Merge branch 'master' into config-processor-xml-default 2021-06-08 00:54:17 +00:00
Latysheva Alexandra
1a2cbe9275
Merge branch 'master' into alexelex-encryption-1 2021-06-07 21:18:54 +06:00
Azat Khuzhin
8ec874dc33 Add writeRetry helper 2021-06-07 09:38:15 +03:00
Alexey Milovidov
8d85145725 Remove experimental compression codecs 2021-06-06 02:26:52 +03:00
Alexey Milovidov
17962459f5 Merge branch 'master' into issue-16775 2021-06-06 02:18:28 +03:00
Vitaly Baranov
d715395751
Merge pull request #24480 from BoloniniD/yaml-fuzz
Add fuzzing tests for YAMLParser
2021-06-04 10:21:09 +03:00
alexey-milovidov
c58fb0ec3a
Merge pull request #24833 from ClickHouse/simplify-pipe-size
Simplify code around TraceCollector, alternative to #24829
2021-06-04 01:13:26 +03:00
mergify[bot]
9fddf3a144
Merge branch 'master' into simplify-pipe-size 2021-06-02 22:14:41 +00:00
alesapin
7030828d02
Update src/Common/Throttler.cpp
Co-authored-by: Nikita Mikhaylov <mikhaylovnikitka@gmail.com>
2021-06-02 23:02:08 +03:00
alesapin
4a1bf51ad1
Merge branch 'master' into limited_fetches 2021-06-02 23:01:47 +03:00
Ivan Lezhankin
791cbcf0b1 Merge remote-tracking branch 'upstream/master' into async-insert 2021-06-02 18:50:37 +03:00
Ivan Lezhankin
84c23dc060 Merge branch 'master' into async-insert 2021-06-02 18:06:21 +03:00
alesapin
f7babe5cd9 Fix build and better test 2021-06-02 11:22:44 +03:00
elevankoff
4b85c8e31f Small style changes 2021-06-02 08:00:10 +00:00
alesapin
1c0973162d
Merge pull request #24803 from ClickHouse/followupfix_zookeeper_timeouts
Don't capture temporary references in ZooKeeper client callbacks.
2021-06-02 01:08:17 +03:00
alesapin
feed2636f4 Add exponential smoothing to Throttler 2021-06-02 01:07:29 +03:00
alesapin
c3321bef30 Merge branch 'master' into limited_fetches 2021-06-01 13:09:02 +03:00
Alexey Milovidov
feae36636c Simplify code around TraceCollector, alternative to #24829 2021-06-01 11:54:05 +03:00
kssenii
de277f8ac4 Merge branch 'master' of https://github.com/ClickHouse/ClickHouse into progress-bar 2021-06-01 07:58:19 +00:00
alesapin
4e038b2a61 Remove copy-paste and rename (review fixes) 2021-06-01 10:30:06 +03:00
tavplubix
e9ff0b6d70
Merge pull request #23657 from kssenii/poco-file-to-std-fs
Poco::File to std::filesystem
2021-05-31 23:17:02 +03:00
mergify[bot]
08eca33d81
Merge branch 'master' into progress-bar 2021-05-31 19:54:20 +00:00
Nikolai Kochetov
497fdf4413
Merge pull request #24808 from ClickHouse/make-context-ptr-const
Make ContextPtr const by default.
2021-05-31 21:26:19 +03:00
Nikolai Kochetov
c2aaa29a17 Fix build. 2021-05-31 19:07:45 +03:00
BoloniniD
655f8c4b1c More fixes 2021-05-31 18:50:28 +03:00
Nikolai Kochetov
afc1fe7f3d Make ContextPtr const by default. 2021-05-31 17:49:02 +03:00
alesapin
ccebba13e1 Comment 2021-05-31 16:11:32 +03:00
alesapin
2fe75e33ee Replace Poco::Event with std future in synchronous calls in ZooKeeper client 2021-05-31 16:03:30 +03:00
Azat Khuzhin
e3cbd4a5df Improve "Cannot schedule a task" error message 2021-05-31 10:24:05 +03:00
BoloniniD
93754ca8b6 Fix stylecheck 2021-05-31 09:34:10 +03:00
BoloniniD
52e4c01aba Additional fixes after review 2021-05-31 01:42:13 +03:00
Azat Khuzhin
eb08bb0669 Case-insensitive config extensions 2021-05-30 20:08:37 +03:00
Azat Khuzhin
1cda2bb2f0 Process config w/o extensions as XML format
I'm using such hack to hide the password:

    $ clickhouse-client --config <(echo '<config><password></password></config>')

But this had been broken in #21858

v2: add a test
v3: fail for unsupported extensions
2021-05-30 20:08:21 +03:00
alesapin
07afb42e79
Merge pull request #24448 from ClickHouse/keeper_auth
Add ACL system to Keeper
2021-05-30 16:17:40 +03:00
alesapin
294c9f6718
Merge pull request #24722 from ClickHouse/block_allocator_earlier
Block memory tracker earlier in `tryLogCurrentException`
2021-05-30 16:12:59 +03:00
alesapin
41328a4129
Merge pull request #24721 from ClickHouse/dont_wait_forever_in_zookeeper
Remove endless `wait` from ZooKeeper client
2021-05-30 16:12:10 +03:00
kssenii
69816e6eff Fix checks 2021-05-30 15:44:58 +03:00
BoloniniD
733610dece Fixes after review 2021-05-30 14:09:50 +03:00
Kirill Ershov
42f6314c9a
Add INTERSECT and EXCEPT 2021-05-29 22:51:58 +03:00
Kirill Ershov
3f9e9a7025
Add INTERSECT and EXCEPT 2021-05-29 22:41:46 +03:00
kssenii
db9f4762eb Merge branch 'master' of github.com:ClickHouse/ClickHouse into poco-file-to-std-fs 2021-05-29 01:15:43 +03:00
kssenii
0a3589524e File movement 2021-05-29 00:57:53 +03:00
kssenii
2a631aaf08 Final fixes 2021-05-29 00:34:44 +03:00
Maksim Kita
8e192bef55 MemoryTracker enable throw logical error 2021-05-28 20:22:17 +03:00
alesapin
97aef92df8
Merge pull request #24489 from vdimir/log-fname-file-checker
Log file name on error in FileChecker ctor
2021-05-28 17:44:20 +03:00
alesapin
945050fe7c Block allocator earlier in 2021-05-28 17:34:16 +03:00
alesapin
b79e2ee8f3 Remove endless wait from ZooKeeper client 2021-05-28 17:14:04 +03:00
alexey-milovidov
27cf84fcc7
Merge pull request #24587 from nikitamikhaylov/reopen-enable-tests-and-examples
Enable tests, utils and examples in builds with clang-tidy
2021-05-28 09:36:18 +03:00
Nikita Mikhaylov
c127c433c2 better 2021-05-27 23:43:00 +03:00
Anton Popov
bce3a49ff5
fix style check 2021-05-27 16:02:13 +03:00
alesapin
2985def91d Add tests 2021-05-27 15:54:47 +03:00
kssenii
a0d8d689d3 Merge branch 'master' of github.com:ClickHouse/ClickHouse into poco-file-to-std-fs 2021-05-27 15:44:12 +03:00
kssenii
f66c67a979 Fixes 2021-05-27 15:42:46 +03:00
Maksim Kita
5e65aff3fd
Merge pull request #24466 from kitaisreal/dictionaries-update-file-paths-restrictions
Dictionaries update file path restrictions
2021-05-27 13:46:47 +03:00
alesapin
75dad2cdd7
Merge pull request #24533 from ClickHouse/watch_requests_read
Make `get/check/read/list` requests always read in Keeper
2021-05-27 11:16:36 +03:00
Maksim Kita
e5b78723bb
Merge pull request #24483 from kitaisreal/memory-tracker-new-no-throw
MemoryTracker new no throw
2021-05-27 10:35:55 +03:00
Nikita Mikhaylov
0d3462afc8
Merge pull request #24457 from nikitamikhaylov/thread-pool-deadlock
Try to fix deadlock in ThreadPool
2021-05-27 02:51:50 +03:00
Nikita Mikhaylov
5eb47ccaa8
Merge pull request #24518 from georgthegreat/cxxabi-peerdir
Do not peerdir enabled-by-default libcxxabi-parts
2021-05-27 02:44:07 +03:00
Maksim Kita
b26783b308 Dictionaries update file path restrictions 2021-05-27 00:17:45 +03:00