Commit Graph

435 Commits

Author SHA1 Message Date
Sema Checherinda
d9e15c00c9 limit the delay before next try in S3 2023-09-14 19:45:07 +02:00
robot-ch-test-poll4
839f69c940
Merge pull request #53765 from vitlibar/sync-uuids-of-tables-on-replicas
Sync UUIDs of tables on replicas after RESTORE
2023-09-08 17:30:32 +02:00
Vitaly Baranov
2643e48310
Remove unused code 2023-09-08 13:23:59 +02:00
robot-clickhouse-ci-1
7403ee689f
Merge pull request #53877 from vitlibar/add-restore-setting-allow-broken-parts
Add restore setting "restore_broken_parts_as_detached"
2023-09-05 21:28:08 +02:00
Vitaly Baranov
82b1c09150 Simplify coordination of UUIDs. 2023-09-05 20:49:43 +02:00
Vitaly Baranov
8060407c70 Add backup setting "check_parts" and restore setting "restore_broken_parts_as_detached". 2023-09-04 18:54:03 +02:00
Victor Krasnov
52cce27e81 Merge branch 'master' into ADQM-987 2023-09-01 18:00:20 +03:00
Victor Krasnov
55f6f78078 Clarify setNumFilesAndSize() method 2023-08-31 08:52:32 +03:00
Azat Khuzhin
d0397acafc Add ability to override credentials for accessing base backup in S3
Sometimes credentials with which the backup had been done are inactive
already, and ClickHouse will not be able to read the metadata file to
continue and fail.

Add a setting to allow ignoring credential from base_backup -
`use_same_s3_credentials_for_base_backup` (default to true).

And the same for RESTORE.

Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
2023-08-30 20:16:22 +02:00
Victor Krasnov
81db0f3b0f Rename BackupOperationInfo::ID to BackupOperationID 2023-08-30 18:52:43 +03:00
Victor Krasnov
921f0c8b5d Merge branch 'master' into ADQM-987 2023-08-25 21:20:23 +03: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
Vitaly Baranov
5154c1b9d0 Use same UUIDs for tables on replicas created by RESTORE ON CLUSTER. 2023-08-23 22:55:46 +02:00
Victor Krasnov
258f9927b4 Merge branch 'master' into ADQM-987 2023-08-22 16:49:32 +03:00
Nikita Mikhaylov
5c4edc0790 Better 2023-08-21 18:20:20 +00:00
Nikita Mikhaylov
262c81d911 Better 2023-08-21 16:55:56 +00:00
Antonio Andelic
ed15babddd
Merge pull request #53198 from ClickHouse/improve-archive-reading
Improve reading from archives
2023-08-21 14:11:25 +02:00
Victor Krasnov
a7813260c0 Merge branch 'master' into ADQM-987 2023-08-21 14:45:13 +03:00
Michael Kolupaev
557bfea4d8 Use long timeout for S3 copy requests 2023-08-17 19:36:45 +00:00
Alexander Tokmakov
894ec8e0d0 less exceptions with runtime format string 2023-08-14 21:45:59 +02:00
Victor Krasnov
9c34ef899e Add backup_log table 2023-08-10 15:46:04 +03:00
Victor Krasnov
a89d711113 Move BackupsWorker::Info to a separate file BackupOperationInfo.h 2023-08-10 13:29:20 +03:00
Antonio Andelic
0e17d26b88 More formats supported, read single archive from 1 thread 2023-08-09 11:58:37 +00:00
Vitaly Baranov
6af6247f8a
Merge pull request #52970 from arenadata/ADQM-985
Add `storage_policy` parameter in the `SETTINGS` clause of `RESTORE` statements
2023-08-07 19:01:08 +02:00
Victor Krasnov
a2f48e5bb3 Merge branch 'master' into ADQM-985 2023-08-04 19:02:18 +03:00
Daniel Pozo Escalona
ed43d6f780
Merge branch 'master' into s3_request_throttling_on_backups 2023-08-04 16:57:47 +02:00
Vitaly Baranov
6ac61b1fdd Fix tests. 2023-08-03 13:52:35 +02:00
Vitaly Baranov
556ecf5c1c Renamed backup setting "read_from_filesystem_cache_if_exists_otherwise_bypass_cache" -> "read_from_filesystem_cache". 2023-08-03 13:52:35 +02:00
Vitaly Baranov
e127d27453 Disable using fs cache for backup/restore #2. 2023-08-03 13:52:35 +02:00
Vitaly Baranov
f427c779eb Disable using fs cache for backup/restore. 2023-08-03 13:52:32 +02:00
Dani Pozo
fc7f47d083 Make it possible to throttle S3 requests on backups 2023-08-03 11:06:24 +02:00
Victor Krasnov
d8792bf429 Merge branch 'master' into ADQM-985
# Conflicts:
#	docs/en/operations/backup.md
2023-08-02 20:17:59 +03:00
Victor Krasnov
35941ddb92 Refine RestorerFromBackup::applyCustomStoragePolicy infinitesimally 2023-08-02 11:57:38 +03:00
robot-ch-test-poll4
5b67cff6b2
Merge pull request #52829 from ClickHouse/throw-s3-exception-whenever-possible
Throw S3Exception whenever possible.
2023-08-01 04:35:27 +02:00
Nikolai Kochetov
c4a00b8c68 Throw S3Exception whenever possible. 2023-07-31 15:39:20 +00:00
Victor Krasnov
04ad661968 Introduce clean-up of the source storage policy by setting it to an empty string 2023-07-27 18:17:47 +03:00
Victor Krasnov
eb689708a8 Fix typo 2023-07-26 15:26:38 +03:00
Victor Krasnov
0b5b0df58f Apply custom storage policy to the restored table 2023-07-26 15:24:35 +03:00
Victor Krasnov
06b782d37a Add storage_policy to RestoreSettings in order to allow it in the SETTINGS clause of RESTORE queries 2023-07-26 14:40:50 +03:00
Roman Vasin
2cf79ac592 Merge branch 'master' of github.com:ClickHouse/ClickHouse into ADQM-984 2023-07-26 09:58:26 +00:00
Roman Vasin
19c1f39286 Refactor code to support storage class only via settings 2023-07-21 05:59:25 +00:00
Roman Vasin
a3a576cd86 Add usage of in s3_storage_class in SETTINGS 2023-07-14 17:35:31 +00:00
Roman Vasin
c27f0691a8 Clean extra whitespace 2023-07-14 05:38:55 +00:00
Roman Vasin
6c3b7f76d4 Add S3 storage class as 4th parameter 2023-07-13 16:00:01 +00:00
Azat Khuzhin
1844ac37d7 Remove create_read_buffer argument for copyS3File()
Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
2023-07-09 08:20:03 +02:00
Azat Khuzhin
559d328178 Rename BACKUP setting native_copy to allow_s3_native_copy
Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
2023-07-09 08:20:03 +02:00
Azat Khuzhin
5835e72fd6 More generic approach to disable native copy
Previous patch implements this only for BACKUP/RESTORE, but it can be
useful for regular disks as well, so add allow_native_copy for disks.

Note, that there is s3_allow_native_copy query setting, since it looks
redundant, since it make sense only for S3 disks, and not on a per query
basis.

Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
2023-07-09 08:20:02 +02:00
Azat Khuzhin
00cf66ab7a Add ability to disable native copy for BACKUP/RESTORE
Native copy uses CopyObject for S3/GCS, but in GCS the CopyObject is
buggy - it does not always works.

Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
2023-07-09 08:19:10 +02:00
Alexey Milovidov
b1d1918607
Merge branch 'master' into retry 2023-07-08 03:08:48 +03:00
Alexander Tokmakov
fdbd59ec6c
Merge pull request #51135 from ClickHouse/fix_trash_in_disks
Try to fix some trash in Disks and part moves
2023-07-07 02:02:17 +03:00