Azat Khuzhin
e4350e078c
Add ability to distinguish remote exceptions from local
2021-01-20 01:10:17 +03:00
Pavel Kruglov
97b5179e55
Implement HedgedRequests
2021-01-19 22:41:05 +03:00
Azat Khuzhin
cf085b0687
Split RemoteQueryExecutorReadContext into module part
2021-01-16 01:57:36 +03:00
Nikolai Kochetov
af7f5c9518
Merge pull request #17868 from ClickHouse/async-read-from-socket
...
Async read from socket
2020-12-23 12:20:42 +03:00
Nikolai Kochetov
01c8d5dccc
Use replace fiber to callback in ReadBufferFromPocoSocket
2020-12-18 17:24:44 +03:00
nikitamikhaylov
18d52dbc63
better
2020-12-16 14:55:33 +03:00
nikitamikhaylov
4ccdb3ca20
done
2020-12-16 14:55:33 +03:00
Nikolai Kochetov
4c290996dc
Fixing tests.
2020-12-15 21:22:20 +03:00
Nikolai Kochetov
3d6ace5890
Fixing tests.
2020-12-15 21:20:14 +03:00
Nikolai Kochetov
00de8abb0a
Fixing tests.
2020-12-15 00:07:10 +03:00
Nikolai Kochetov
8de5cd5bc7
Merge branch 'master' into async-read-from-socket
2020-12-14 17:45:38 +03:00
Nikolai Kochetov
75ac87c241
Fixing build.
2020-12-14 17:42:12 +03:00
Nikolai Kochetov
e295dfe6e3
Use ucontext for asan
2020-12-14 17:42:08 +03:00
Azat Khuzhin
5b3ab48861
More forward declaration for generic headers
...
The following headers are pretty generic, so use forward declaration as
much as possible:
- Context.h
- Settings.h
- ConnectionTimeouts.h
(Also this shows that some missing some includes -- this has been fixed)
And split ConnectionTimeouts.h into ConnectionTimeoutsContext.h (since
module part cannot be added for it, due to recursive build dependencies
that will be introduced)
Also remove Settings from the RemoteBlockInputStream/RemoteQueryExecutor
and just pass the context, since settings was passed only in speicifc
places, that can allow making a copy of Context (i.e. Copier).
Approx results (How much units will be recompiled after changing file X?):
- ConnectionTimeouts.h
- mainline: 100
- Context.h:
- mainline: ~800
- patched: 415
- Settings.h:
- mainline: 900-1K
- patched: 440 (most of them because of the Context.h)
2020-12-12 17:43:10 +03:00
Nikolai Kochetov
156f44808f
Fixing crash.
2020-12-09 17:11:45 +03:00
Nikolai Kochetov
082a496364
Add async read to RemoteQueryExecutor
2020-12-03 15:21:10 +03:00
Nikolai Kochetov
e3946bc2b5
Add async read to RemoteQueryExecutor.
2020-12-02 20:02:14 +03:00
Pavel Kruglov
5b94dd2f74
Add eof check in receiveHello
2020-11-24 18:15:13 +03:00
Alexey Milovidov
24f4fa6edf
Follow Arcadia ya.make rules
2020-11-17 00:16:50 +03:00
Alexey Milovidov
3df04ce0c2
Follow Arcadia ya.make rules
2020-11-16 21:24:58 +03:00
filimonov
7f7f66a1f1
add comment & restart CI...
2020-11-13 17:45:58 +01:00
filimonov
be16b4ef77
Update Connection.cpp
2020-11-13 12:04:56 +01:00
filimonov
178d8e9b75
Update Connection.cpp
2020-11-12 22:07:19 +01:00
filimonov
8eff47420b
Update Connection.cpp
2020-11-12 18:18:34 +01:00
Alexander Tokmakov
a06be511df
pcg serialization
2020-11-09 16:07:38 +03:00
Alexey Milovidov
fd84d16387
Fix "server failed to start" error
2020-11-07 03:14:53 +03:00
Maxim Akhmedov
3627fabfb9
Remove -g0 form Arcadia build settings.
2020-10-29 17:37:23 +03:00
Amos Bird
d2dcfc3f0d
Refactor processors.
2020-10-12 17:30:05 +08:00
Alexander Kuzmenkov
dde4cf70e1
Merge remote-tracking branch 'origin/master' into HEAD
2020-09-22 14:03:59 +03:00
alexey-milovidov
9b6c62e82b
Merge pull request #14867 from amosbird/lbo
...
Explicit define what first replica is.
2020-09-17 19:37:15 +03:00
Alexander Kuzmenkov
fb64cf210a
straighten the protocol version
2020-09-17 17:37:29 +03:00
Amos Bird
38d53c38f6
Explicit define what first replica is.
2020-09-16 17:54:41 +08:00
Azat Khuzhin
785d1b2a75
OpenSSLHelpers cleanup
...
Add few more specializations for encodeSHA256():
- std::string encodeSHA256(const std::string_view &);
- std::string encodeSHA256(const void *, size_t);
- void encodeSHA256(const void *, size_t, unsigned char *);
2020-09-15 01:36:28 +03:00
Azat Khuzhin
0159c74f21
Secure inter-cluster query execution (with initial_user as current query user) [v3]
...
Add inter-server cluster secret, it is used for Distributed queries
inside cluster, you can configure in the configuration file:
<remote_servers>
<logs>
<shard>
<secret>foobar</secret> <!-- empty -- works as before -->
...
</shard>
</logs>
</remote_servers>
And this will allow clickhouse to make sure that the query was not
faked, and was issued from the node that knows the secret. And since
trust appeared it can use initial_user for query execution, this will
apply correct *_for_user (since with inter-server secret enabled, the
query will be executed from the same user on the shards as on initator,
unlike "default" user w/o it).
v2: Change user to the initial_user for Distributed queries if secret match
v3: Add Protocol::Cluster package
v4: Drop Protocol::Cluster and use plain Protocol::Hello + user marker
v5: Do not use user from Hello for cluster-secure (superfluous)
2020-09-15 01:36:28 +03:00
Alexey Milovidov
e3924b8057
Fix "Arcadia"
2020-09-08 01:14:13 +03:00
alesapin
10c7a6c45e
Add ability to specify Default codec for columns ( #14049 )
...
* Add ability to specify DefaultCompression codec which correspond to settings specified in config.xml
* Fix style
* Rename DefaultCompression to simple Default
* Fix compression codec
* Better codec description representation
* Less strange code and one method
* Fix delta
2020-08-28 20:40:45 +03:00
Vasily Nemkov
f94f786cc3
First attempt to fix data race in ConnectionPoolWithFailover::getStatus()
2020-08-20 23:25:38 +03:00
Nikolai Kochetov
9b67cd9faf
Merge branch 'master' into refactor-pipes-3
2020-08-10 10:50:17 +03:00
Alexey Milovidov
edd89a8610
Fix half of typos
2020-08-08 03:47:03 +03:00
Nikolai Kochetov
20e63d2271
Refactor Pipe [part 6]
2020-08-06 15:24:05 +03:00
Alexey Milovidov
6f690b7c0d
Normalize ya.make files, fix "Arcadia" build
2020-08-02 16:57:38 +03:00
Vitaly Baranov
56665a15f7
Rework and rename the template class SettingsCollection => BaseSettings.
2020-07-31 20:54:18 +03:00
Nikita Mikhaylov
4d49d2c671
another removes
2020-07-30 13:31:14 +03:00
Alexander Kuzmenkov
ac436c79eb
Merge remote-tracking branch 'origin/master' into HEAD
2020-07-07 15:42:11 +03:00
Alexander Kuzmenkov
5c417f45b8
streaming wip
2020-06-30 12:25:23 +03:00
Azat Khuzhin
ebff4eae7d
Add replica priority for load_balancing
...
Make default 1, to match with <weight>
2020-06-29 23:03:28 +03:00
Azat Khuzhin
b8ee2ea7d9
Pass max_ignored_errors/fallback_to_stale_replicas to PoolWithFailoverBase::get() too
2020-06-20 11:46:13 +03:00
Azat Khuzhin
dd054380bf
Drop default values for some arguments of PoolWithFailoverBase::getMany
2020-06-20 11:21:18 +03:00
Azat Khuzhin
caa195c034
Add number of errors to ignore while choosing replicas (distributed_replica_max_ignored_errors)
...
This will allow avoid switching to another replica in case of error
(since error can be temporary).
2020-06-20 11:20:16 +03:00
Nikita Mikhaylov
ff0262626a
Merge pull request #11645 from azat/load-balancing-round-robin
...
Add round_robin load_balancing
2020-06-17 14:34:59 +04:00
Nikita Mikhaylov
9b88065e77
add small comment
2020-06-17 13:33:35 +03:00
Alexey Milovidov
217d05443a
Remove old non-automated test
2020-06-14 20:42:11 +03:00
Azat Khuzhin
0e378590fe
Add load_balancing=round_robin
2020-06-14 01:09:21 +03:00
Alexey Milovidov
25f941020b
Remove namespace pollution
2020-05-31 00:57:37 +03:00
Alexey Milovidov
5aff138956
Preparation for structured logging
2020-05-31 00:35:52 +03:00
Alexey Milovidov
9082a70ee6
Fix clang-tidy
2020-05-24 21:25:58 +03:00
Alexey Milovidov
7e1813825b
Return old names of macros
2020-05-24 01:24:01 +03:00
Alexey Milovidov
bab24879e9
Progress on task
2020-05-24 00:16:05 +03:00
Alexey Milovidov
7c0c328a35
Progress on task
2020-05-24 00:05:47 +03:00
Alexey Milovidov
d2621fee30
Progress on task
2020-05-23 23:57:48 +03:00
Alexey Milovidov
f75587e562
Progress on task
2020-05-23 23:13:34 +03:00
Alexey Milovidov
cd6d3c7509
Progress on task
2020-05-23 22:55:06 +03:00
Alexey Milovidov
eacff92d0e
Progress on task
2020-05-23 22:35:08 +03:00
Alexey Milovidov
86b4d5a86f
Remove duplicate whitespaces (preparation)
2020-05-23 22:09:06 +03:00
Alexey Milovidov
ab0562a574
Make all LOG in single line (preparation)
2020-05-23 22:05:41 +03:00
Alexey Milovidov
45b6abdfee
Progress on task
2020-05-23 21:22:40 +03:00
Alexey Milovidov
9d24908e53
Progress on task
2020-05-23 20:52:11 +03:00
Alexey Milovidov
8d2e80a5e2
find {base,src,programs} -name '*.h' -or -name '*.cpp' | xargs grep -l -P 'LOG_\w+\([^,]+, "[^"]+"\)' | xargs sed -i -r -e 's/(LOG_\w+)\(([^,]+, "[^"]+")\)/\1_FORMATTED(\2)/'
2020-05-23 19:42:39 +03:00
Alexey Milovidov
e884800662
Remove commented code
2020-05-23 19:38:59 +03:00
Azat Khuzhin
d93b9a57f6
Forward declaration for Context as much as possible.
...
Now after changing Context.h 488 modules will be recompiled instead of 582.
2020-05-21 01:53:18 +03:00
Alexey Milovidov
397859ccb8
Fix error
2020-05-17 08:45:20 +03:00
Alexey Milovidov
f4ac1eec04
Merge branch 'master' into quota-key-in-client
2020-05-17 08:15:13 +03:00
Ivan
85d783c247
Poco contrib refactoring ( #10396 )
...
* Remove config_common.h
* Refactor libcpuid contrib
* Remove support for libcpuinfo
* Define USE_CPUID in Arcadia
* Refactor Poco libraries
2020-05-08 17:11:19 +03:00
Alexey Milovidov
99c18c5a09
Check for suspicious codecs #4966
2020-05-04 03:11:49 +03:00
Alexey Milovidov
1d885b3ff9
Merge branch 'master' into quota-key-in-client
2020-04-20 02:15:37 +03:00
Ivan Lezhankin
e230632645
Changes required for auto-sync with Arcadia
2020-04-16 15:31:57 +03:00
Alexey Milovidov
fe59524481
Implemented in a different way
2020-04-15 04:59:14 +03:00
Alexey Milovidov
c22f91db01
Allow to pass quota_key in clickhouse-client
2020-04-15 04:15:05 +03:00
Ivan Lezhankin
06446b4f08
dbms/ → src/
2020-04-03 18:14:31 +03:00