Commit Graph

1597 Commits

Author SHA1 Message Date
serxa
5afec7b64d Merge branch 'master' into fix-db-iterator-waits 2024-04-03 09:29:32 +00:00
avogar
22fb91a6ef Fix tests 2024-04-02 18:18:32 +00:00
Raúl Marín
c35a436435 Remove nested dependency on DateLutImpl 2024-04-02 14:45:48 +02:00
Raúl Marín
40a22ffa63 Remove a few nested include dependencies 2024-04-02 13:43:14 +02:00
kssenii
ca1c119115 Merge remote-tracking branch 'origin/master' into use-iobject-storage-for-table-engines-1 2024-03-27 22:32:44 +01:00
Nikita Taranov
7b17b14aa0
Merge pull request #61671 from GrigoryPervakov/master
Reload certificate chain during certificate reload
2024-03-27 21:19:32 +01:00
kssenii
e0c02bf3af Merge remote-tracking branch 'origin/master' into use-iobject-storage-for-table-engines-1 2024-03-27 19:27:07 +01:00
avogar
98f99db6b2 Remove unneded change 2024-03-26 16:01:56 +00:00
Azat Khuzhin
b9469e2729 Do not try to INSERT into readonly replicas for Distributed engine
Sometimes replica may be readonly for a long time, and this will make
some INSERT queries fail, but it does not make sense to INSERT into
readonly replica, so let's ignore them.

But note, that this will require to extend TableStatus (not extend, but
introduce new version), that will have is_readonly field.

Also before background INSERT into Distributed does not uses
getManyChecked() which means that they do not request TableStatus
packet, while now they would, though this is minor (just a note).

v2: Add a note about max_replica_delay_for_distributed_queries for INSERT
v3: Skip read-only replicas for async INSERT into Distributed
v4: Remove extra @insert parameter for ConnectionPool*::get*
    It make sense only when the table name had passed --
    ConnectionPoolWithFailover::getManyChecked()
v5: rebase on top LoggerPtr
v6: rebase
v7: rebase
v8: move TryResult::is_readonly into the end

Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
2024-03-26 11:21:38 +01:00
Pervakov Grigorii
a2ad832dfe fix error handling 2024-03-25 17:13:30 +00:00
kssenii
46941e7243 Merge remote-tracking branch 'origin/master' into use-iobject-storage-for-table-engines-1 2024-03-25 15:10:11 +01:00
Pervakov Grigorii
570dc32b07 fix style 2024-03-25 14:09:53 +00:00
Pervakov Grigorii
6b50f5bf10 Reload certificate chain during certificate reload 2024-03-25 14:09:53 +00:00
Alexey Milovidov
baef1cd4d2 Merge branch 'master' into get-client-http-header 2024-03-24 21:37:14 +01:00
Alexey Milovidov
d249d53de6 Remove DataStreams 2024-03-24 02:07:41 +01:00
Alexey Milovidov
e195806c5b Add function getClientHTTPHeader, part 1 2024-03-23 20:52:26 +01:00
Alexey Milovidov
a56c113c83 Fix for clang-19 2024-03-22 22:12:59 +01:00
Sean Haynes
dc677f0f18 Use scheduleOrThrow in MergeTree data selector thread pool
At the moment, the use of scheduleOrThrowOnError doesn't currently
have a timeout. So if you reach a point of saturation and use all
threads available in the global pool, threads block infinitely
and lead to a deadlock.

This changes that behaviour so that MergeTree data selector threads
will have a timeout and return a "No threads available" exception
to clients.

Credit to Nikita Mikhaylov for the proposition here:

https://github.com/ClickHouse/ClickHouse/pull/56431
2024-03-22 16:46:20 +00:00
avogar
47095f63b1 Fix writing exception message in output format in HTTP when http_wait_end_of_query is used 2024-03-22 16:03:28 +00:00
Alexander Tokmakov
9082a018a5
Merge pull request #59082 from ClickHouse/fix_race_async_inserts_queue
Fix race on `Context::async_insert_queue`
2024-03-22 16:06:13 +01:00
serxa
67819b1484 Merge branch 'master' into fix-db-iterator-waits 2024-03-21 10:53:54 +00:00
Alexander Tokmakov
5d7e5e5a72 Merge branch 'master' into fix_race_async_inserts_queue 2024-03-19 19:39:25 +01:00
kssenii
0122c3e883 Merge remote-tracking branch 'origin/master' into use-iobject-storage-for-table-engines-1 2024-03-19 19:31:02 +01:00
Raúl Marín
de855ca917 Reduce header dependencies 2024-03-19 17:04:29 +01:00
serxa
051103b0e0 Fix db iterator wait during async metrics collection 2024-03-18 15:39:21 +00:00
Robert Schulze
c17536c3b3
Enable clang-tidy in headers 2024-03-18 08:00:09 +00:00
Alexey Milovidov
01136bbc3b Limit backtracking in parser 2024-03-17 19:54:45 +01:00
kssenii
bfc4f5e1d3 Merge remote-tracking branch 'origin/master' into use-iobject-storage-for-table-engines-1 2024-03-11 14:57:15 +01:00
Anton Popov
61859ee865
Merge pull request #61055 from CurtizJ/fix-async-insert-deadlock
Fix deadlock in async inserts to `Log` tables via native protocol
2024-03-08 11:36:49 +01:00
Nikita Mikhaylov
8e3fc1044f
Reject INSERT if async_insert=1 + deduplicate_blocks_in_dependent_materialized_views=1 (#60888) 2024-03-07 20:39:56 +01:00
Anton Popov
b9d6f4b3ed fix deadlock in async inserts via native protocol 2024-03-07 17:42:50 +00:00
kssenii
0aade3765f Merge remote-tracking branch 'origin/master' into use-iobject-storage-for-table-engines-1 2024-03-06 17:02:50 +08:00
kssenii
0c293bce11 Merge remote-tracking branch 'origin/master' into use-iobject-storage-for-table-engines-1 2024-03-06 12:06:19 +08:00
Antonio Andelic
fb8241c651 Better 2024-03-04 16:36:46 +01:00
Antonio Andelic
9f5fe176ad Catch exceptions on finalize 2024-03-04 14:42:11 +01:00
Alexey Milovidov
c362bbc9ca
Merge pull request #60390 from ClickHouse/redirect-handlers
Allow configuring HTTP redirect handlers for clickhouse-server
2024-03-02 05:15:31 +03:00
Mikhail Koviazin
11371e886c
Update protobuf to v25.1
The new version deprecates `syntax()` and makes it inaccessible. Instead, the
attributes corresponding to a feature should be used. This commit addresses
this.
2024-03-01 17:03:10 +02:00
Yakov Olkhovskiy
7d5b5a094d
don't move from capture - it is used repeatedly 2024-02-29 18:50:25 -05:00
Robert Schulze
4ee1aa8c7c
Fixing more headers 2024-02-29 15:40:30 +00:00
Alexey Milovidov
b0ab0b37db
Merge pull request #60434 from ClickHouse/revert-60216-revert-59697-check-stack-size-in-parser
Revert "Revert "Check stack size in Parser""
2024-02-28 19:20:49 +03:00
Alexey Milovidov
9ea7ff231b
Merge pull request #60448 from ClickHouse/clang-19
Update to clang-19
2024-02-27 23:38:08 +03:00
Alexey Milovidov
0f3c9963d1 Merge branch 'master' of github.com:ClickHouse/ClickHouse into revert-60216-revert-59697-check-stack-size-in-parser 2024-02-27 17:30:32 +01:00
Alexey Milovidov
c192a448d0 Update to clang-19 2024-02-27 14:37:21 +01:00
Alexey Milovidov
0b90076a36
Revert "Revert "Check stack size in Parser"" 2024-02-27 01:34:50 +03:00
Alexey Milovidov
fbfc4afb46
Merge branch 'master' into redirect-handlers 2024-02-27 01:27:38 +03:00
Robert Schulze
ac7a3cd18d
Merge remote-tracking branch 'rschu1ze/master' into mysql-friday-evening-fix 2024-02-26 22:00:45 +00:00
Alexey Milovidov
bbf9561a65
Merge pull request #60389 from ClickHouse/allow-remap-web-ui-handlers
Allow to map UI handlers to different paths
2024-02-26 21:03:59 +03:00
Alexey Milovidov
bad7ee271c Merge branch 'redirect-handlers' of github.com:ClickHouse/ClickHouse into redirect-handlers 2024-02-26 17:27:48 +01:00
Alexey Milovidov
0469bdb639 Fix tidy 2024-02-26 17:27:29 +01:00
Antonio Andelic
5b01c4feb3
Revert "Fix: IAST::clone() for RENAME" 2024-02-26 08:47:05 +01:00
Alexey Milovidov
34e85959c1
Update HTTPServerResponse.cpp 2024-02-26 03:34:35 +03:00
Alexey Milovidov
9f4041e3f7 Add support for HTTP redirects 2024-02-25 23:45:09 +01:00
Alexey Milovidov
2756160aea Allow to map UI handlers to different paths 2024-02-25 23:04:39 +01:00
Robert Schulze
b9f5a2f620
Enable prefer_column_name_to_alias in MySQL Handler, default enable two MySQL settings 2024-02-23 17:42:54 +00:00
mikhnenko
e6aaa278a2 Add missed #include <mutex> 2024-02-23 17:23:11 +03:00
Igor Nikonov
90b1f8544a
Merge pull request #60227 from ClickHouse/fix-clone-ast-for-rename
Fix: IAST::clone() for RENAME
2024-02-23 14:48:14 +01:00
Azat Khuzhin
87fb8d187b Change back how receive_timeout is handled for INSERTs
Right now the receive_timeout for INSERT works as a timeout for
receiving data block, however this is not very convenient, since
sometimes server may not send data for quite some time (i.e. due to in
order aggregation), Ping packets is there for a reason (also Progress
and ProfileEvents as well, though the purpose is different).

Initially this special handling of receive_timeout had been added in
6a5ef9be83 ("dbms: fixed error with
hanging INSERTs [#METR-16514]"), but the behaviour was different, since
that time the receivePacket() was outside loop, only poll() was there,
and that was the workaround for poll() timeout (which does not triggers
the socket timeout).

But in fabd7193bd ("Code cleanups and
improvements"), receivePacket() had been moved into the loop, and so
this changed the behaviour of the timeout to current one.

Though all of this will not help for INSERT queries anyway, since there
are no Ping packets for them. Yet.

Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
2024-02-22 14:26:21 +01:00
kothiga
0bc7c0a558
Addressing feedback. 2024-02-21 17:01:16 -08:00
kothiga
692b31e467
Fix http exception codes. 2024-02-21 10:53:49 -08:00
Igor Nikonov
f4643b8341 Fix: RENAME AST clone
+ minor cleanup
2024-02-21 14:14:33 +00:00
Antonio Andelic
fee1565780
Revert "Check stack size in Parser" 2024-02-21 11:33:08 +01:00
kssenii
e23b929e18 Merge remote-tracking branch 'origin/master' into use-iobject-storage-for-table-engines-1 2024-02-19 19:55:47 +01:00
Alexey Milovidov
fa1ca348a4 Miscellaneous 2024-02-19 03:19:21 +01:00
Alexey Milovidov
6fd563df52 Miscellaneous 2024-02-19 02:58:51 +01:00
Alexey Milovidov
2f315e0eb5 Style check for abbreviations 2024-02-17 02:14:15 +01:00
kssenii
1cccb3ccdf Merge remote-tracking branch 'origin/master' into use-iobject-storage-for-table-engines-1 2024-02-16 15:21:10 +01:00
Kruglov Pavel
4d6f167e0c
Merge pull request #59092 from Avogar/auto-format-detection
Try to detect file format automatically during schema inference if it's unknown
2024-02-16 14:32:18 +01:00
Antonio Andelic
0f489de46e
Merge pull request #59945 from ClickHouse/keeper-prometheus-filtered-events
Send only Keeper related metrics/events for Prometheus
2024-02-16 09:43:43 +01:00
Konstantin Bogdanov
dbb6804a70
Merge pull request #59976 from ClickHouse/add-cloud-placement
Add `PlacementInfo`
2024-02-15 19:16:56 +03:00
Julia Kartseva
b1b58ef9a3
Revert "Insert synchronously if dependent MV deduplication is enabled" 2024-02-14 12:54:42 -08:00
Antonio Andelic
0bee591a0c Fix build 2024-02-14 14:10:58 +01:00
Konstantin Bogdanov
83f28b8537
Move definition to cpp 2024-02-14 12:51:14 +01:00
Konstantin Bogdanov
e6450f8af2
More missing headers 2024-02-14 11:48:03 +01:00
Konstantin Bogdanov
5f2358b014
Add missing header 2024-02-14 11:22:47 +01:00
Konstantin Bogdanov
914fd27d5b
Add PlacementInfo 2024-02-14 10:19:36 +01:00
Kruglov Pavel
1dbfeafb42
Merge branch 'master' into auto-format-detection 2024-02-13 19:08:33 +01:00
Antonio Andelic
0d151e3f0d Send only specific events/metrics for Keeper prometheus 2024-02-13 16:01:50 +01:00
kssenii
3cca841038 Unite s3/hdfs/azure storage implementations into a single class on top of IObjectStorage 2024-02-09 21:32:04 +01:00
Maksim Kita
9c3b363c81 Fixed tests 2024-02-09 21:39:36 +03:00
Maksim Kita
2fc8895ae8 Fixed tests 2024-02-09 21:39:36 +03:00
Julia Kartseva
ece4febe32 Insert synchronously if dependent MV deduplication is enabled 2024-02-08 08:42:04 +00:00
Sema Checherinda
8581bdbe58 do not call value() on empty optional query_info 2024-02-05 13:24:51 +01:00
Igor Nikonov
931fc6572c Call getFQDNOrHostName() once 2024-02-02 14:33:34 +00:00
Igor Nikonov
8c60c6b669 Use always host_name for profile events block 2024-02-02 14:27:09 +00:00
Igor Nikonov
4c75b4bc7c Return display name 2024-02-02 14:04:27 +00:00
Igor Nikonov
7cd78b7fc4 Fix clang-tidy warning 2024-02-02 13:09:23 +00:00
Igor Nikonov
d8a6e53d0b Use FQDN as host name by default for TCP
- instead of display_name setting value
2024-01-30 20:27:30 +00:00
Alexey Milovidov
a286d500c3
Merge pull request #59124 from amosbird/dashboard-compress-state
Compress state of dashboard
2024-01-30 08:05:38 +01:00
slvrtrn
7cef679f6d Address PR feedback 2024-01-29 20:11:02 +01:00
slvrtrn
eb909a5db4 Reapply add MySQL net write/read settings 2024-01-27 18:36:38 +01:00
Kruglov Pavel
46a6b84a5a
Merge branch 'master' into auto-format-detection 2024-01-25 22:11:07 +01:00
Maksim Kita
2a327107b6 Updated implementation 2024-01-25 14:31:49 +03:00
avogar
617cc514b7 Try to detect file format automatically during schema inference if it's unknown 2024-01-23 18:59:39 +00:00
Amos Bird
7e86c0e928
Compress state of dashboard 2024-01-23 23:04:19 +08:00
Alexander Tokmakov
4cfc8d1a34 better method name 2024-01-23 00:30:42 +01:00
Azat Khuzhin
d940afd6cd Fix timeouts for HTTP/1.1 non-chunked requests (missing Connection: close)
Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
2024-01-19 14:48:50 +03:00
Azat Khuzhin
38ad4ef493 Fix timeout for prometheus exporter for HTTP/1.1 (due to keep-alive)
Before:

    $ time curl -s --http1.1 127.1:9363/metrics > /dev/null
    real    0m10.018s # default keep_alive_timeout is 10 seconds
    user    0m0.005s
    sys     0m0.001s

After

    $ time curl -s --http1.1 127.1:9363/metrics > /dev/null
    real    0m0.008s
    user    0m0.006s
    sys     0m0.000s

And if you will look at the test_prometheus_endpoint, you will see that
it takes > 30 seconds (it obtains metrics 3 times), after this patch it
should be finished more or less instantly.

Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
2024-01-19 13:29:17 +03:00
Robert Schulze
cf115e696b
Merge pull request #58929 from slvrtrn/mysql-show-warnings
Add `SHOW WARNINGS` support in MySQL interface
2024-01-18 16:24:50 +01:00
slvrtrn
cb8372a3f9 Add SHOW WARNINGS support in MySQL interface 2024-01-17 22:00:48 +01:00
Yakov Olkhovskiy
92d42567fa separate explicit finalization for buffers 2024-01-16 22:15:35 +00:00
Alexander Tokmakov
661500a140
Revert "Add support for MySQL net_write_timeout and net_read_timeout settings" 2024-01-16 15:01:14 +01:00
Yakov Olkhovskiy
fcd4297d20 fix compressors finalization 2024-01-16 00:22:17 +00:00
slvrtrn
204a291384 Remove an unnecessary include 2024-01-15 17:52:58 +01:00
slvrtrn
8ad6b03649 Add a test for MySQL settings replacements 2024-01-15 17:15:07 +01:00
slvrtrn
d37ac1954e Add support for net_write/read_timeout MySQL settings 2024-01-15 16:05:36 +01:00
Yakov Olkhovskiy
84809b36c3
Merge pull request #58475 from ClickHouse/revert-58450-revert-56064-feature-server-iface-metrics
Second attempt: Use CH Buffer for HTTP out stream, add metrics for interfaces
2024-01-11 12:06:59 -05:00
Robert Schulze
38f1a5eb27
Follow-up to #58458
In MySQLHandler.cpp,
    return 1 == std::regex_match(query, expr);
was converted to
    return re2::RE2::PartialMatch(query, expr);

Should have been FullMatch(query, expr)
2024-01-10 17:03:53 +00:00
Yakov Olkhovskiy
4fc11e189c
Merge branch 'master' into revert-58450-revert-56064-feature-server-iface-metrics 2024-01-10 12:03:47 -05:00
Yakov Olkhovskiy
45d5e29ba0 master merge adjustments 2024-01-10 16:55:09 +00:00
Yakov Olkhovskiy
2e124b19b8
Merge branch 'master' into revert-58450-revert-56064-feature-server-iface-metrics 2024-01-10 09:05:18 -05:00
Robert Schulze
499227b9cf
Merge remote-tracking branch 'rschu1ze/master' into replace-std_regexp-by-re2 2024-01-10 10:02:53 +00:00
Robert Schulze
ced9e93ac6
Merge remote-tracking branch 'rschu1ze/master' into qatzstd_main 2024-01-09 20:36:02 +00:00
Robert Schulze
f553b55e3a
Merge remote-tracking branch 'rschu1ze/master' into regex-std-re2 2024-01-07 22:31:35 +00:00
Robert Schulze
8e804487f3
Some fixups 2024-01-07 22:28:08 +00:00
Robert Schulze
53965bb9f1
Merge remote-tracking branch 'rschu1ze/master' into qatzstd_main 2024-01-07 14:11:22 +00:00
Yakov Olkhovskiy
84dd4a74bc fix exception leaking from destructor 2024-01-05 15:45:36 +00:00
Duc Canh Le
2e14cfb526 add settings for output compression level and window size
Signed-off-by: Duc Canh Le <duccanh.le@ahrefs.com>
2024-01-04 08:16:00 +00:00
Yakov Olkhovskiy
85f03478ef
Revert "Revert "Use CH Buffer for HTTP out stream, add metrics for interfaces"" 2024-01-03 11:47:15 -05:00
Robert Schulze
8d4b519bb1
Replace std::regex by re2 2024-01-03 15:06:20 +00:00
Yakov Olkhovskiy
db97764e98 fix tests, some refactoring 2023-12-31 12:56:37 +00:00
Alexey Milovidov
01c7562cc3 Merge with master 2023-12-30 16:01:17 +01:00
Alexey Milovidov
aa462fa7cd
Merge branch 'master' into feature-server-iface-metrics 2023-12-29 22:37:52 +01:00
Kruglov Pavel
c03e36e012
Merge branch 'master' into better-parsing-exceptions 2023-12-29 18:07:32 +01:00
Alexey Milovidov
c2f93ecf4d
Merge pull request #58211 from ClickHouse/binary-viewer
Binary (symbols) viewer
2023-12-25 04:52:57 +01:00
Azat Khuzhin
3be3b0a280 Fix incorrect Exceptions
Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
2023-12-24 21:26:32 +01:00
Alexey Milovidov
0e89d01b94 Binary (symbols) viewer 2023-12-24 12:14:45 +01:00
jinjunzh
aaf98f0ed7 refine setting with enable_zstd_qat_codec 2023-12-22 14:24:15 -05:00
Yakov Olkhovskiy
d8bfb0184d fix after merge 2023-12-21 00:23:42 +00:00
Yakov Olkhovskiy
5dc88542cb
Merge branch 'master' into feature-server-iface-metrics 2023-12-20 16:46:29 -05:00
santrancisco
1e86fb298a
Fixing check for HTTP POST request 2023-12-20 12:37:36 +11:00
Nikita Mikhaylov
6360b76792 Merge branch 'master' of github.com:ClickHouse/ClickHouse into remove-the-limit-for-connections-per-endpoint 2023-12-18 21:49:31 +00:00
Raúl Marín
65728f14ce Review error codes 2023-12-18 10:40:02 +01:00
Yakov Olkhovskiy
001a38048f use ProfileEvents instead of CurrentMetrics 2023-12-15 19:17:42 +00:00
Raúl Marín
b269f87f4c Better text_log with ErrnoException 2023-12-15 19:27:56 +01:00
Yakov Olkhovskiy
24e1e65dc0 update after merge 2023-12-14 20:25:31 +00:00
Yakov Olkhovskiy
febdd542f8 Merge remote-tracking branch 'origin/master' into feature-server-iface-metrics 2023-12-14 18:59:44 +00:00
Yakov Olkhovskiy
6d20082134 return the early release and instead restore prepared_client_info and reset session_context 2023-12-14 17:25:47 +00:00
Nikita Mikhaylov
a0af0392cd
Random changes in random files (#57642) 2023-12-14 12:47:11 +01:00
Nikita Mikhaylov
8372c70958 Merge branch 'master' of github.com:ClickHouse/ClickHouse into remove-the-limit-for-connections-per-endpoint 2023-12-13 18:29:56 +00:00
Kruglov Pavel
ee39dca8c7
Merge branch 'master' into better-parsing-exceptions 2023-12-12 17:10:38 +01:00
Konstantin Bogdanov
ea123ed5c1
Change response structure 2023-12-12 11:35:01 +01:00
Konstantin Bogdanov
69a022f72a
Add observer status 2023-12-12 09:42:32 +01:00
Konstantin Bogdanov
be9fac3a55
Lint includes
Co-authored-by: alesapin <alesapin@clickhouse.com>
2023-12-12 09:26:06 +01:00
Konstantin Bogdanov
7172a8ec9a
Remove redundant include 2023-12-11 10:20:43 +01:00
Konstantin Bogdanov
76966818ba
Fix FreeBSD build 2023-12-11 10:20:34 +01:00
Konstantin Bogdanov
771d5c58ea
Fix Keeper standalone build 2023-12-11 10:19:49 +01:00
Konstantin Bogdanov
89ba4a8452
Add HTTP readiness endpoint 2023-12-11 10:19:42 +01:00
Nikita Mikhaylov
5251548753 Fix tests and build 2023-12-08 17:28:26 +00:00
Nikita Mikhaylov
c979124cfe Merge branch 'master' of github.com:ClickHouse/ClickHouse into remove-the-limit-for-connections-per-endpoint 2023-12-08 16:25:02 +00:00
Nikita Mikhaylov
08cc9408f2 Better 2023-12-07 17:53:40 +01:00