Commit Graph

388 Commits

Author SHA1 Message Date
Azat Khuzhin
3be3b0a280 Fix incorrect Exceptions
Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
2023-12-24 21:26:32 +01:00
Antonio Andelic
c43b84c68d
Typo 2023-11-23 13:12:16 +01:00
Antonio Andelic
953a8d774a Close interserver connection on exception that happened before first authentication 2023-11-23 11:43:03 +00:00
Nikolay Degterinsky
44289c5f19
Merge pull request #56957 from evillique/resubmit-better-except
Resubmit: Better except for SSL authentication
2023-11-19 16:00:18 +01:00
Nikolay Degterinsky
6eedd1649d Resubmit: Better except for SSL authentication 2023-11-18 17:56:05 +00:00
Alexey Milovidov
3bbb329dd0 Fix tests 2023-11-16 00:13:05 +01:00
Alexey Milovidov
1ea74cee3a Early disconnect if there is authentication failure with interserver secret 2023-11-15 15:04:07 +01:00
Alexey Milovidov
82c461031e Fix build 2023-11-13 10:09:23 +01:00
kssenii
9178fd4ad1 Fix case with replicated database 2023-11-07 16:02:51 +01:00
Azat Khuzhin
8556929f50 Fix mixing of send_timeout and receive_timeout
I've noticed this in one of production setups, where lots of queries are
executed with distributed_group_by_no_merge=2 (automatically vai
optimize_skip_unused_shards optimization) and
optimize_aggregation_in_order=1, with this two settings initiator may
not read from some shards (i.e. X) for quite long period of time,
because it reads from other shards (i.e. Y) and it does not need
any data from X yet (due to it read everything in order), and this will
lead to query timeout, so timeouts had been increased.

Previously both timeouts had been tuned, but this leads to connection
hungs in case of abnormal machine reboots. So it is better to tune only
send_timeout (and this should be enough, since the only problem is the
sender) and this will allow to see that the connection is broken on the
initiator once it will read from this shard.

but after changing only send_timeout, the query still timedout, and the
reason is this place, which swaps this timeouts.

It had been introduced in 134efcd, with a comment:

    NOTE: We use send_timeout for the receive timeout and vice versa (change arguments ordering in TimeoutSetter),
     because send_timeout is client-side setting which has opposite meaning on the server side.

But it sounds odd to me, it may only make sense with the
clickhouse-client, since any other driver does not implement any server
settings.

Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
2023-10-26 19:36:12 +02:00
Alexey Milovidov
5217d64551 Remove garbage 2023-10-22 01:53:50 +02:00
Alexey Milovidov
7ec4b99e94 Revert partial result 2023-10-21 03:14:22 +02:00
Anton Popov
5819bcd07a
Support asynchronous inserts for native protocol (#54730)
* support async insert for native protocol

* use separate queue for async inserts via native protocol

* fix test

* better logging for async inserts and more tests

* disable mixed internal and external data in async inserts

* fix tests

* fix quota in async inserts

* disable async insert for secondary query of distributed
2023-10-20 18:39:48 +02:00
vdimir
3f3feea0b7
Add setting allow_experimental_partial_result 2023-09-28 09:40:56 +00:00
Robert Schulze
cde10fe7b5
Merge remote-tracking branch 'rschu1ze/master' into clang-tidy-reenable-checks 2023-09-26 18:59:41 +00:00
George Gamezardashvili
0ce30ab6d5
SSH keys authentication (#41109)
Added new type of authentication based on SSH keys. It works only for Native TCP protocol.

Co-authored-by: Nikita Mikhaylov <nikitamikhaylov@clickhouse.com>
Co-authored-by: Robert Schulze <robert@clickhouse.com>
2023-09-26 17:50:19 +02:00
Robert Schulze
9fff447716
Re-enable clang-tidy checks 2023-09-26 09:34:12 +00:00
Nikolai Kochetov
9b936c44db
Revert "Revert "Add settings for real-time updates during query execution"" 2023-09-09 12:29:39 +02:00
Alexey Milovidov
03a755732a
Revert "Add settings for real-time updates during query execution" 2023-09-09 03:10:23 +03:00
Nikolai Kochetov
0095124791
Merge pull request #48607 from alexX512/master
Add settings for real-time updates during query execution
2023-09-08 09:05:33 +02:00
Raúl Marín
e192d4c624
Fix summary reporting with parallel replicas with LIMIT (#53050) 2023-09-04 15:53:06 +02:00
alexX512
36b8932b37 Merge branch 'master' of github.com:ClickHouse/ClickHouse 2023-08-31 21:40:50 +00:00
Alexey Gerasimchuck
f7d1041e61 minor improvement 2023-08-30 06:14:39 +00:00
Alexey Gerasimchuck
be2f80cc1c minor corrections 2023-08-29 23:59:36 +00:00
Alexey Gerasimchuck
a1687e618b backward compatibility changes + fixes 2023-08-29 23:50:41 +00:00
alexX512
b3ba00f443 Merge branch 'master' of github.com:ClickHouse/ClickHouse 2023-08-29 10:59:29 +00:00
Alexey Gerasimchuck
e9757abea6 Added validate_tcp_client_information setting 2023-08-29 00:15:55 +00:00
Alexey Gerasimchuck
3140958132 Added client_info validation 2023-08-22 03:52:57 +00:00
Alexander Tokmakov
78d8557a56 fix 2023-08-15 15:37:09 +02:00
Alexey Milovidov
fa9abc5038 Better usage of ccache 2023-08-09 05:02:50 +02:00
alexX512
0d84226914 Merge branch 'master' of github.com:ClickHouse/ClickHouse 2023-08-02 19:18:59 +00:00
Alexey Gerasimchuck
e58b3cfd32 Implemented max sessions for user 2023-07-30 22:09:03 +00:00
alexX512
c403f56e09 Merge branch 'master' of github.com:ClickHouse/ClickHouse 2023-07-21 17:56:53 +00:00
Vitaly Baranov
815a3857de Remove non-const function Context::getClientInfo(). 2023-07-17 15:02:07 +02:00
Robert Schulze
271297823a
Allow var-int encoded 64-bit integers with MSB=1
Resolves: #51486

Until now, it was illegal to encode 64-bit (unsigned) integers with
MSB=1, i.e. values > (1ULL<<63) - 1, as var-int. In more detail, the
var-int code used by ClickHouse server and client spent at most 9 bytes
per value such that 9 * 7 = 63 bits could be encoded. Some 3rd party
clients (e.g. Rust clickhouse-rs) had the same limitation, whereas other
clients understand the full range (Python clickhouse-driver).

PRs #47608 and #48628 added sanity checks as asserts or exceptions
during var-int encoding on the server side. This was considered okay as
such huge integers so far occurred only during testing (usually fuzzing)
but not in practice.

Issue #51486 is a new fuzzing issue where the exception thrown from the
sanity check led to a half-baked progress packet and as a result, a
logical error / server crash.

The only fix which is not another bandaid is to allow the full range in
var-int coding. Clients will have to allow the full range too, a note
will be added to the changelog. (the alternative was to create another
protocol version but as var-int is used all over the place this was
considered infeasible)

Review note: this is the relevant commit.
2023-07-06 20:23:23 +00:00
Robert Schulze
43c97d76bf
Merge pull request #44149 from zvonand/zvonand-implicit-tz
Session time zones
2023-06-23 14:28:49 +02:00
Alexey Milovidov
75ef844f99
Fix long test functions_bad_arguments (#51310)
Co-authored-by: Nikita Mikhaylov <mikhaylovnikitka@gmail.com>
2023-06-23 13:51:40 +02:00
Andrey Zvonov
b4f2e4020d
Merge branch 'master' into zvonand-implicit-tz 2023-06-21 13:41:35 +02:00
Robert Schulze
1aa158909e
enable_qpl_deflate_codec --> enable_deflate_qpl_codec 2023-06-09 12:43:33 +00:00
jinjunzh
f1192d59af
refine patch according to comments 2023-06-09 12:43:15 +00:00
jinjunzh
056ca4f555
Add extensive testing cases for deflate qpl codec 2023-06-09 12:42:59 +00:00
Andrey Zvonov
d95be4162f
Merge branch 'master' into zvonand-implicit-tz 2023-06-08 18:34:45 +03:00
Antonio Andelic
b11f744252
Correctly disable async insert with deduplication when it's not needed (#50663)
* Correctly disable async insert when it's not used

* Better

* Add comment

* Better

* Fix tests

---------

Co-authored-by: Nikita Mikhaylov <mikhaylovnikitka@gmail.com>
2023-06-07 20:33:08 +02:00
zvonand
d4cec1f0e0 fix client thread attachment + make better tests 2023-05-30 01:30:01 +02:00
Andrey Zvonov
9237b904be
Merge branch 'master' into zvonand-implicit-tz 2023-05-10 01:25:33 +02:00
alexX512
f3f9e29509 Merge branch 'master' of github.com:ClickHouse/ClickHouse 2023-05-06 14:35:29 +00:00
Dmitry Novik
2536dfad3a Fix build 2023-05-05 18:21:25 +00:00
Dmitry Novik
951bef4fd2 Fixmemory counting in TCPHandler 2023-05-05 15:10:50 +00:00
zvonand
8338d54c34 Merge branch 'master' of github.com:ClickHouse/ClickHouse into zvonand-implicit-tz 2023-05-05 15:50:26 +02:00
alexX512
2cd1b37f9b Add support for connection of partial result processors with multiple ports 2023-05-02 07:26:36 +00:00