Commit Graph

3764 Commits

Author SHA1 Message Date
Artur Malchanau
41508e129d
Merge branch 'ClickHouse:master' into arm-clocksource 2023-08-28 10:50:57 +03:00
Kruglov Pavel
d80be4673b
Merge pull request #53692 from Avogar/cache-count
Cache number of rows in files for count in file/s3/url/hdfs/azure functions
2023-08-25 09:08:52 +02:00
Alexander Tokmakov
1eff7bee5e
Merge pull request #53673 from arenadata/ADQM-1105
Added client_info validation to the query packet in TCPHandler.
2023-08-24 21:03:25 +03:00
Kruglov Pavel
44db5fa992
Merge branch 'master' into cache-count 2023-08-24 17:21:18 +02:00
Arthur Passos
2bade7db08
Add global proxy setting (#51749)
* initial impl

* fix env ut

* move ut directory

* make sure no null proxy resolver is returned by ProxyConfigurationResolverProvider

* minor adjustment

* add a few tests, still incomplete

* add proxy support for url table function

* use proxy for select from url as well

* remove optional from return type, just returns empty config

* fix style

* style

* black

* ohg boy

* rm in progress file

* god pls don't let me kill anyone

* ...

* add use_aws guards

* remove hard coded s3 proxy resolver

* add concurrency-mt-unsafe

* aa

* black

* add logging back

* revert change

* imrpove code a bit

* helper functions and separate tests

* for some reason, this env test is not working..

* formatting

* :)

* clangtidy

* lint

* revert some stupid things

* small test adjusmtments

* simplify tests

* rename test

* remove extra line

* freaking style change

* simplify a bit

* fix segfault & remove an extra call

* tightly couple proxy provider with context..

* remove useless include

* rename config prefix parameter

* simplify provider a bit

* organize provider a bit

* add a few comments

* comment out proxy env tests

* fix nullptr in unit tests

* make sure old storage proxy config is properly covered without global context instance

* move a few functions from class to anonymous namespace

* fix no fallback for specific storage conf

* change API to accept http method instead of bool

* implement http/https distinction in listresolver, any still not implemented

* implement http/https distinction in remote resolver

* progress on code, improve tests and add url function working test

* use protcol instead of method for http and https

* small fix

* few more adjustments

* fix style

* black

* move enum to proxyconfiguration

* wip

* fix build

* fix ut

* delete atomicroundrobin class

* remove stale include

* add some tests.. need to spend some more time on the design..

* change design a bit

* progress

* use existing context for tests

* rename aux function and fix ut

* ..

* rename test

* try to simplify tests a bit

* simplify tests a bit more

* attempt to fix tests, accept more than one remote resolver

* use proper log id

* try waiting for resolver

* proper wait logic

* black

* empty

* address a few comments

* refactor tests

* remove old tests

* baclk

* use RAII to set/unset env

* black

* clang tidy

* fix env proxy not respecting any

* use log trace

* fix wrong logic in getRemoteREsolver

* fix wrong logic in getRemoteREsolver

* fix test

* remove unwanted code

* remove ClientConfigurationperRequest and auxilary classes

* remove unwanted code

* remove adapter test

* few adjustments and add test for s3 storage conf  with new proxy settings

* black

* use chassert for context

* Add getenv comment
2023-08-24 16:07:26 +03:00
Kruglov Pavel
592fa77987
Merge branch 'master' into cache-count 2023-08-23 15:18:02 +02:00
Artur Malchanau
97cdd0c276
Fix clang-tidy warning 2023-08-23 15:35:30 +03:00
Artur Malchanau
0fd26152e3
Do not warn about arch_sys_counter clock 2023-08-23 12:51:27 +03:00
Robert Schulze
b70f3dbe41
Same variable name in LocalServer.cpp as in Server.cpp 2023-08-22 15:44:26 +00:00
avogar
7f9e81d504 Clean up 2023-08-22 12:55:00 +00:00
Robert Schulze
f2fb7365e6
Add settings for 1. size_ratio (all caches) and 2. policy (index caches)
1. is an expert-level setting, default is 0.5, applies only to SLRU.

Also, I noticed that we expose cache policy settings for the mark and
the uncompresed cache but not for the index mark and the index
uncompressed cache. Changed that as well, it simplifies the code a bit.
2023-08-22 11:04:29 +00:00
Robert Schulze
acaa2eee58
Merge pull request #53556 from ClibMouse/feature/big-endian-UUID-correction
Change Big Endian-UUID to work the same as Little Endian-UUID
2023-08-22 11:57:44 +02:00
Alexey Gerasimchuck
3140958132 Added client_info validation 2023-08-22 03:52:57 +00:00
Robert Schulze
583d9b33f0
Merge pull request #51446 from rschu1ze/recfgable-caches
Runtime-reconfigurable cache sizes
2023-08-21 23:27:21 +02:00
Nikita Mikhaylov
145c99ee94
Merge pull request #53280 from evillique/better-stop-listen
Add EXCEPT clause to SYSTEM STOP LISTEN query
2023-08-21 19:03:49 +02:00
Robert Schulze
96c8b250ce
Allow to configure cache sizes at runtime 2023-08-21 13:51:10 +00:00
Alexey Milovidov
47b565861b Add maximize and drag options for the dashboard 2023-08-21 06:23:58 +02:00
Alexey Milovidov
11757f6540 No Grammarly for SQL 2023-08-20 13:42:00 +02:00
Alexey Milovidov
6895f441bc Include params in the editor 2023-08-20 09:32:42 +02:00
Alexey Milovidov
7dd0e1f888 Resolve TODO 2023-08-20 09:19:10 +02:00
Alexey Milovidov
1a4b54875a Add mass editor 2023-08-20 09:17:22 +02:00
Alexey Milovidov
b2462a1bb7 Add mass editor 2023-08-20 09:16:38 +02:00
Alexey Milovidov
fe610d0394 Fix bad JavaScript 2023-08-20 08:07:11 +02:00
Alexey Milovidov
59fced8e99 Fix errors in dashboard 2023-08-20 08:00:04 +02:00
Kseniia Sumarokova
3d2fb2eced
Merge pull request #53124 from kssenii/allowed-caches-dir-for-dynamic-disks
Allow to restrict fs caches paths (mainly useful for dynamic disks)
2023-08-19 13:30:23 +04:00
kssenii
5382442da0 Merge remote-tracking branch 'upstream/master' into allowed-caches-dir-for-dynamic-disks 2023-08-19 08:44:36 +04:00
Alexey Milovidov
68e694815c The dashboard just got better 2023-08-19 01:38:22 +02:00
kothiga
f33c585bc5
Addressing feedback. 2023-08-18 13:50:31 -07:00
kothiga
b905703909
Correct to-from pairing for transformEndianness. 2023-08-18 11:25:08 -07:00
Austin Kothig
6b42975d33
Change BE-UUID to work the same as LE-UUID. Included high and low getters to provide cleaner code when accessing undertype. 2023-08-18 08:19:46 -07:00
pufit
2e69a1d3a2 Fix keeper default path check 2023-08-17 22:07:39 -04:00
robot-ch-test-poll
ce58b90ea1
Merge pull request #53455 from rschu1ze/respect-changed-cgroups-limit
Respect cgroup memory limit when reloading configuration
2023-08-18 00:03:35 +02:00
Alexander Tokmakov
89c365803f
Merge pull request #53424 from ClickHouse/exception_message_patterns6
Less exceptions with runtime format string
2023-08-17 17:58:04 +03:00
Robert Schulze
ec7daed52f
Merge pull request #50276 from ClibMouse/feature/mergetree-checksum-big-endian-support
MergeTree & SipHash checksum big-endian support
2023-08-17 13:27:18 +02:00
Robert Schulze
5253a7f650
Respect cgroup memory limit when reloading configuration
Cgroups allows to change the amount of memory available to a process
while it runs. The previous logic calculated the amount of available
memory only once at server startup. As a result, memory thresholds set
via cgroups were not picked up when the settings changed. We now always
incorporate the current limits during re-configuraton.

Note 1: getMemoryAmount() opens/reads a file which is potentially
        expensive. Should be fine though since that happens only when
        the server configuration changes.

Note 2: An better approach would be to treat cgroup limit changes as
        another trigger for ClickHouse server re-configuration (which
        currently only happens when the config files change). Shied away
        from that for now because of the case that when the cgroup limit
        is lowered, there is no guarantee that ClickHouse can shrink the
        memory amount accordingly in time (afaik, it does so only lazily
        by denying new allocations). As a result, the OOM killer would
        kill the server. The same will happen with this PR but at a
        lower implementation complexity.
2023-08-17 09:22:13 +00:00
Nikolay Degterinsky
a893f75884 Merge remote-tracking branch 'upstream/master' into better-stop-listen 2023-08-16 23:06:18 +00:00
Alexander Tokmakov
ba44d7260e fix 2023-08-16 00:20:28 +02:00
kssenii
164b4f0ae3 Merge remote-tracking branch 'upstream/master' into allowed-caches-dir-for-dynamic-disks 2023-08-15 20:30:01 +04:00
Robert Schulze
8343ebd4ec
Clarify comment 2023-08-15 14:44:13 +00:00
Alexander Tokmakov
83c10dad18 Merge branch 'master' into exception_message_patterns6 2023-08-15 15:20:09 +02:00
Robert Schulze
f317903073
Merge branch 'ClickHouse:master' into consistency-fixes-for-caches 2023-08-15 10:25:08 +02:00
Alexander Tokmakov
894ec8e0d0 less exceptions with runtime format string 2023-08-14 21:45:59 +02:00
ltrk2
2846ea49b4
Merge branch 'master' into feature/mergetree-checksum-big-endian-support 2023-08-14 13:02:30 -04:00
Robert Schulze
7ed5166c8a
Cosmetics: Make re-cfg of query cache similar to re-cfg of other caches
This doesn't change semantics, it only changes in which places the
configuration is parsed. This makes the logic more consistent across
caches.
2023-08-14 15:42:32 +00:00
Robert Schulze
ed90463888
Add comment 2023-08-14 15:42:32 +00:00
Robert Schulze
bb53d635df
More consistency: Run same mark cache size check in ch-local
Server.cpp had a check that the configured mark cache size is not 0. Run
the same check in LocalServer.cpp.
2023-08-14 15:42:32 +00:00
Robert Schulze
f126e54b0d
Respect max_cache_size for all caches
So far, max_cache_size was only respected in Server.cpp, and in this
file only for the mark cache and the uncompressed cache. This commit
respects it also for the other cache types in Server.cpp, as well for
all caches in LocalServer.cpp.
2023-08-14 15:42:32 +00:00
Robert Schulze
54e54aed74
Cosmetics: Introduce constants for default cache sizes and policies 2023-08-14 15:42:32 +00:00
Mikhail f. Shiryaev
3655df0f40
Attempt to address reset ENV in init.d script 2023-08-14 16:32:52 +02:00
kssenii
c3b8bc0267 Merge remote-tracking branch 'upstream/master' into allowed-caches-dir-for-dynamic-disks 2023-08-13 21:14:42 +04:00