Vladimir Chebotarev
579f8da573
Added SSE-C support in S3 client.
2021-01-28 09:32:41 +03:00
alexey-milovidov
7c240d0ca7
Merge pull request #17870 from excitoon-favorites/s3testiostream
...
Update of AWS C++ SDK
2021-01-28 07:12:52 +03:00
Vladimir Chebotarev
afdea5eff0
Changed handling of PocoHTTPClientConfiguration
in order to ensure AWS SDK is initialized.
2021-01-27 09:38:35 +03:00
Anton Popov
09e5bdd1ef
fix style check
2021-01-27 03:57:28 +03:00
Anton Popov
b15848e2f0
Update IDisk.h
2021-01-27 03:32:18 +03:00
Anton Popov
c7070da85a
better abstractions in disk interface
2021-01-26 17:49:35 +03:00
kreuzerkrieg
29a2ef3089
Add IStoragePolicy interface
2021-01-26 10:55:28 +02:00
Alexander Gololobov
0a155ee2f1
Fix IDisk::open parameters to match posix open
2021-01-21 19:38:13 +03:00
Anton Ivashkin
357d98eb36
Merge master
2021-01-20 12:23:03 +03:00
Pavel Kovalenko
1e3a059f64
Merge remote-tracking branch 'origin/master' into disk-s3-backup-restore-metadata
...
# Conflicts:
# src/Disks/DiskCacheWrapper.cpp
# src/Disks/S3/DiskS3.cpp
2021-01-18 13:39:49 +03:00
Alexander Kuzmenkov
d22c04568d
Merge pull request #13405 from excitoon-favorites/s3keepalive
...
Connection pools for S3
2021-01-18 12:52:37 +03:00
Alexey Milovidov
ee13dd4fef
Fix error
2021-01-14 19:58:44 +03:00
Alexey Milovidov
8276a1c8d2
Faster parts removal, more safe and efficient interface of IDisk
2021-01-14 19:24:13 +03:00
Pavel Kovalenko
53389f79c0
Ability to backup-restore metadata files for DiskS3 (minor fixes)
2021-01-13 15:05:32 +03:00
Pavel Kovalenko
b09862b7b9
Ability to backup-restore metadata files for DiskS3 (fixes and tests)
2021-01-12 20:18:40 +03:00
Pavel Kovalenko
0856b2c514
Ability to backup-restore metadata files for DiskS3 (fixes and tests)
2021-01-11 20:37:08 +03:00
Alexey Milovidov
6eb5a5f4d9
Remove useless code
2021-01-10 03:28:59 +03:00
Vladimir Chebotarev
5cbc25c647
Added global setting s3_max_connections
.
2021-01-05 13:34:55 +03:00
Pavel Kovalenko
2848b32af1
Ability to backup-restore metadata files for DiskS3 (WIP)
2020-12-23 18:11:37 +03:00
Pavel Kovalenko
cc3b5958b0
Ability to backup-restore metadata files for DiskS3 (WIP)
2020-12-23 15:35:52 +03:00
Pavel Kovalenko
18fe1c796b
Ability to backup-restore metadata files for DiskS3 (WIP)
2020-12-22 21:47:47 +03:00
Anton Ivashkin
0f0500ca0c
Merge master
2020-12-16 18:31:13 +03:00
Pavel Kovalenko
346c241c20
Merge remote-tracking branch 'origin/master' into s3-adaptive-single-part-upload
...
# Conflicts:
# src/Disks/S3/DiskS3.cpp
2020-12-14 11:00:30 +03:00
alexey-milovidov
04e222f6f3
Merge pull request #17986 from azat/fwd-decl
...
More forward declaration for generic headers
2020-12-13 01:12:05 +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
Pavel Kovalenko
25df6bae78
Add nested exception when handle Disk S3 metadata file read error.
2020-12-12 17:11:47 +03:00
Pavel Kovalenko
59a5e63417
Merge remote-tracking branch 'origin/master' into s3-adaptive-single-part-upload
...
# Conflicts:
# src/Disks/S3/DiskS3.cpp
# src/Disks/S3/DiskS3.h
# src/Disks/S3/registerDiskS3.cpp
# src/IO/WriteBufferFromS3.cpp
# src/IO/WriteBufferFromS3.h
2020-12-11 18:28:41 +03:00
Pavel Kovalenko
72a55c192e
Fix master branch merge artifact.
2020-12-11 18:23:59 +03:00
Pavel Kovalenko
75bdb813ea
Merge remote-tracking branch 'origin/master' into disk-s3-remove-empty-metadata-files
...
# Conflicts:
# src/Disks/S3/DiskS3.cpp
2020-12-11 18:22:31 +03:00
Pavel Kovalenko
de4a7a8865
Correct handling S3 disk metadata file read exceptions.
2020-12-11 14:27:58 +03:00
Pavel Kovalenko
5bf388683c
Correct handling S3 disk metadata file read exceptions.
2020-12-11 14:21:54 +03:00
Kruglov Pavel
9a785dbbf5
Merge branch 'master' into disk-s3-send-metadata
2020-12-10 20:17:41 +03:00
Vladimir Chebotarev
39d867e56d
Added proper authentication for S3 client ( #16856 )
2020-12-10 12:19:42 +03:00
Pavel Kovalenko
5802633f95
Fix parameter name in constructor of DiskS3
2020-12-09 18:38:02 +03:00
Pavel Kovalenko
818cdd353a
Remove empty or bad metadata files from FS for DiskS3.
2020-12-09 18:01:30 +03:00
Pavel Kovalenko
db7a87089b
Adaptive choose of single/multi part upload in WriteBufferFromS3.
2020-12-09 17:09:04 +03:00
Pavel Kovalenko
dfbb31174e
Ability to set metadata when put S3 object
2020-12-08 21:31:57 +03:00
Alexey Milovidov
4ecfe8fef4
Remove unused headers
2020-12-08 02:10:22 +03:00
Alexander Tokmakov
bfbf150c67
fix segfault when 'not enough space'
2020-12-02 17:49:43 +03:00
alesapin
45f09fe293
Merge pull request #17220 from ianton-ru/s3_max_redirects
...
S3 max redirects
2020-11-24 12:13:10 +03:00
Anton Ivashkin
aa208a9d9f
Use only 's3_max_redirect' in params instead of all settings
2020-11-23 14:02:17 +03:00
Pavel Kovalenko
f6041c2280
Use default value for read-only flag in metadata for Disk3.
2020-11-23 00:14:52 +03:00
Pavel Kovalenko
9cbb251be6
Store read-only flag into metadata file for DiskS3.
2020-11-20 14:08:43 +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
Anton Ivashkin
026f7e0a27
Add 's3_max_redirects' setting
2020-11-13 19:31:51 +03:00
Alexey Milovidov
b56486510f
Improve Arcadia
2020-11-05 12:55:01 +03:00
Anton Ivashkin
1742fb3256
Merge master
2020-11-03 12:27:16 +03:00
Anton Ivashkin
78021714f1
S3 zero copy replication: more simple s3 check
2020-11-03 12:20:26 +03:00
Maxim Akhmedov
3627fabfb9
Remove -g0 form Arcadia build settings.
2020-10-29 17:37:23 +03:00
Anton Ivashkin
e3879afa69
S3 zero copy replication: fix virtual method default parameter
2020-10-23 16:27:50 +03:00
Anton Ivashkin
652c56e74e
Fix style, fix build
2020-10-22 16:07:20 +03:00
alesapin
4b65d5469f
Fix some unrelated performance issues in select parts for merge
2020-10-22 15:41:01 +03:00
Anton Ivashkin
f833501c77
Merge branch 'master' into s3_zero_copy_replication
2020-10-22 11:17:21 +03:00
Vladimir Chebotarev
aa5f207fd4
Added disable_merges
option for volumes in multi-disk configuration ( #13956 )
...
Co-authored-by: Alexander Kazakov <Akazz@users.noreply.github.com>
2020-10-20 18:10:24 +03:00
Alexey Milovidov
94592819ad
Add comment
2020-10-20 04:29:13 +03:00
Pavel Kovalenko
a474bdcabf
Merge remote-tracking branch 'origin/master' into idempotent-part-move
2020-10-16 13:02:40 +03:00
Anton Ivashkin
b877459cf7
Zero copy replication over S3: check s3 storage
2020-10-14 18:05:59 +03:00
Alexey Milovidov
269b6383f5
Check for #pragma once in headers
2020-10-10 21:37:02 +03:00
Anton Ivashkin
766dbfd2be
Merge master
2020-10-09 15:00:14 +03:00
Anton Ivashkin
acf86568a7
S3 zero copy replication proof of concept
2020-10-08 18:45:10 +03:00
Pavel Kovalenko
69c126f1f1
Possibility to move part to another disk/volume if first attempt was failed.
2020-10-07 14:35:28 +03:00
Pavel Kovalenko
69b4bc6f33
Proper error handling during insert into MergeTree with S3.
2020-10-06 12:38:00 +03:00
alexey-milovidov
5e37ba4335
Update DiskS3.cpp
2020-10-03 03:47:45 +03:00
alexey-milovidov
3ca7fca48a
Update DiskS3.cpp
2020-10-03 03:42:33 +03:00
Anton Ivashkin
c18cdec77c
Use S3 multi object delete
...
Some strange with s3_with_proxy test
2020-09-28 11:47:04 +03:00
alexey-milovidov
1474b80ecc
Merge pull request #15008 from ClickHouse/clang-tidy-11-without-enabling
...
Fix terribly wrong code
2020-09-20 02:00:54 +03:00
Alexey Milovidov
ef5363b87f
Fix terribly wrong code
2020-09-19 02:05:13 +03:00
Pavel Kovalenko
da04a130ed
Add option to disable ttl move on data part insert - minor fixes.
2020-09-18 20:45:30 +03:00
Pavel Kovalenko
0da19ab46d
Add option to disable ttl move on data part insert
2020-09-18 18:30:00 +03:00
Artem Zuikov
51ba12c2c3
Try speedup build ( #14809 )
2020-09-15 12:55:57 +03:00
Anton Popov
af4089c606
Merge remote-tracking branch 'upstream/master' into HEAD
2020-09-11 00:39:21 +03:00
Pavel Kovalenko
3632b0bdb3
Add option to DiskS3 that allows it's usage if S3 unavailable ( #14497 )
2020-09-09 02:35:57 +03:00
alesapin
bea15175d6
Merge pull request #14496 from Jokser/disk-s3-shutdown
...
Disable S3 requests processing during context shutdown to speed up termination process
2020-09-08 15:21:54 +03:00
Pavel Kovalenko
5e39f8b32b
Add comment explaining DiskS3::shutdown
2020-09-08 15:20:35 +03:00
Alexey Milovidov
e3924b8057
Fix "Arcadia"
2020-09-08 01:14:13 +03:00
Pavel Kovalenko
c933f72adb
Disable S3 requests processing during context shutdown to speed up termination process.
2020-09-04 17:17:27 +03:00
Anton Popov
4331158d30
merge with master
2020-08-24 16:09:23 +03:00
Anton Popov
4df5c72878
Merge remote-tracking branch 'upstream/master' into HEAD
2020-08-24 12:57:27 +03:00
alexey-milovidov
7b53a0ef33
Revert "Added allow_merges
option for volumes in multi-disk configuration ( #13402 )"
...
This reverts commit 1e2616542a
.
2020-08-21 18:44:29 +03:00
Vladimir Chebotarev
1e2616542a
Added allow_merges
option for volumes in multi-disk configuration ( #13402 )
2020-08-21 12:04:13 +03:00
Alexander Kuzmenkov
ef5882639b
Merge pull request #13459 from Jokser/s3-multithreaded-disk-copy
...
Move parts from DiskLocal to DiskS3 in parallel
2020-08-12 07:36:03 +03:00
Pavel Kovalenko
ea46ee74ae
Don't allocate Executor instance on each disk->getExecutor() call.
2020-08-11 22:08:32 +03:00
Vladimir Chebotarev
7371cf6bd1
Proper remote host checking in S3 redirects ( #13404 )
...
* Proper remote host checking in S3 redirects.
Co-authored-by: Alexander Kazakov <Akazz@users.noreply.github.com>
2020-08-11 09:09:08 +03:00
Pavel Kovalenko
bece61b1cc
Fix codestyle.
2020-08-10 14:40:31 +03:00
Pavel Kovalenko
f503273d41
Merge remote-tracking branch 'origin/master' into s3-multithreaded-disk-copy
...
# Conflicts:
# src/Disks/S3/DiskS3.cpp
2020-08-10 14:35:26 +03:00
Alexey Milovidov
b4ac900462
Fix "Arcadia" build
2020-08-09 02:38:53 +03:00
Alexander Kuzmenkov
6a596d5c40
Merge pull request #13076 from Jokser/s3-file-cache
...
Ability to cache mark and index files for S3 disk
2020-08-08 01:04:53 +03:00
Pavel Kovalenko
562102161b
Missed override.
2020-08-07 18:53:40 +03:00
Pavel Kovalenko
53ecd95302
Remove unused dependencies.
2020-08-07 14:44:35 +03:00
Pavel Kovalenko
a6ee09f696
Move parts to DiskS3 in parallel refactoring.
2020-08-07 14:40:19 +03:00
Pavel Kovalenko
7856852010
Move parts to DiskS3 in parallel.
2020-08-05 19:36:10 +03:00
Pavel Kovalenko
1703e5a1ca
Download through tmp file in DiskCacheWrapper.cpp
2020-08-03 15:37:53 +03:00
Alexey Milovidov
6f690b7c0d
Normalize ya.make files, fix "Arcadia" build
2020-08-02 16:57:38 +03:00
Pavel Kovalenko
a6d162961f
Fix directories creation in DiskCacheWrapper.cpp
2020-08-01 22:09:05 +03:00
Pavel Kovalenko
d7785f8c2d
Fix checkstyle.
2020-07-30 18:48:32 +03:00
Pavel Kovalenko
7a41fc1b9b
DiskS3 with cache tests.
2020-07-30 17:49:56 +03:00
alesapin
df0dcf4a31
Fix error codes
2020-07-30 17:27:11 +03:00
Pavel Kovalenko
00181d34fd
DiskS3 caching improvements.
2020-07-30 16:42:05 +03:00
alesapin
1c8aa4b6c1
Fix get disk interface
2020-07-30 14:08:56 +03:00
alesapin
d3ea1d914b
Tiny fixes and avoid dynamic casts
2020-07-30 13:04:49 +03:00
Pavel Kovalenko
ba8d770a76
Change comment in DiskCacheWrapper.cpp
2020-07-29 22:54:00 +03:00
Pavel Kovalenko
644d4c7aaa
Cache mark and index files for DiskS3.
2020-07-29 21:15:20 +03:00
Pavel Kovalenko
2b962e699b
Cache mark and index files for DiskS3.
2020-07-29 18:05:02 +03:00
Vladimir Chebotarev
faedb04722
Minor fixes.
2020-07-28 19:45:46 +03:00
Vladimir Chebotarev
6d22069f55
Review fixes.
2020-07-27 18:59:09 +03:00
Vladimir Chebotarev
ee21fde3fe
Review fixes.
2020-07-26 21:27:36 +03:00
Gleb Novikov
aac97957ce
Fixed integration test_tmp_policy
2020-07-26 21:27:36 +03:00
Gleb Novikov
99d52552e1
Small fixes for tests
2020-07-26 21:27:36 +03:00
Gleb Novikov
f4080ed6cc
removed unused error code
2020-07-26 21:27:36 +03:00
Gleb Novikov
e4699e297e
removed default clause in switch for VolumeType enum
2020-07-26 21:27:36 +03:00
Gleb Novikov
2c39584a44
Braces style fix
2020-07-26 21:27:36 +03:00
Gleb Novikov
adef249c34
Small fix of VolumeRAID1Ptr
2020-07-26 21:27:36 +03:00
Gleb Novikov
7f5b6fba78
Generic volume is coming...
...
1. SingleDiskVolume for temporary volumes
2. Generic VolumePtr in StoragePolicies
3. Removed max_data_part_size in system.storage_policies, added volume_type
2020-07-26 21:27:36 +03:00
Gleb Novikov
96c7cc8724
Small clang-10 warning fixes + ya.make
2020-07-26 21:27:36 +03:00
Gleb Novikov
db56820fab
Style fixes and added UNKNOWN_RAID_TYPE exception to createVolumeFromConfig
2020-07-26 21:27:36 +03:00
Gleb Novikov
3585b24f16
MultiDiskReservation, VolumeRAID1 and createVolumeFromConfig
...
1. Implemented MultiDiskReservation to maintain multiple reservations under one
2. Implemented VolumeRAID1 as child of VolumeJBOD (since RAID1 is quite similar)
3. Implemented createVolumeFromConfig
2020-07-26 21:27:36 +03:00
Alexey Milovidov
6df282e813
Fixup
2020-07-16 11:33:51 +03:00
Alexey Milovidov
a6016b95ce
Fix clang-tidy
2020-07-16 05:34:43 +03:00
Alexey Milovidov
3408b7e259
Merge branch 'master' into log-engine-rollback-on-insert-error
2020-07-16 05:34:02 +03:00
Vladimir Chebotarev
a479a20ba4
Review fixes.
2020-07-13 03:24:49 +03:00
Vladimir Chebotarev
d3ade3492e
Update DiskS3.h
2020-07-13 03:09:37 +03:00
alexey-milovidov
c6a5b77843
Update registerDiskS3.cpp
2020-07-13 03:04:46 +03:00
Vladimir Chebotarev
4802a785b5
Added read_seek_threshold
setting to DiskS3.
2020-07-13 02:51:25 +03:00
Vladimir Chebotarev
718523b0ee
Working wrapper.
2020-07-13 02:47:22 +03:00
Alexey Milovidov
204a4af394
Rollback insertion error in Log engines #12402
2020-07-12 05:32:18 +03:00
alexey-milovidov
26d32f2ce5
Merge pull request #12412 from Jokser/s3-https
...
S3 HTTPS integration tests
2020-07-12 03:36:37 +03:00
Pavel Kovalenko
f43428a4d5
S3 HTTPS integration test.
2020-07-10 22:42:18 +03:00
Vladimir Chebotarev
faf6be6576
Implemented single part uploads for DiskS3 ( #12026 )
...
* Implemented single part uploads for DiskS3.
* Added `min_multi_part_upload_size` to disk configuration.
2020-07-09 17:09:17 +03:00
Alexander Kazakov
1c0c8a7bf6
Merge pull request #11892 from excitoon-favorites/relatives3paths
...
Switched paths in S3 metadata to relative
2020-07-07 00:13:07 +03:00
alexey-milovidov
ec563e54dc
Merge pull request #12138 from ClickHouse/codeql
...
Fix warnings from CodeQL
2020-07-05 18:22:49 +03:00
alexey-milovidov
c257255759
Merge pull request #12134 from matwey/fix/missed_include
...
Add missed <atomic> include in ProxyListConfiguration
2020-07-05 04:22:42 +03:00
Alexey Milovidov
96e8e93c64
Fix warnings from CodeQL
2020-07-05 02:16:16 +03:00
Matwey V. Kornilov
caafbe19a4
Add missed <atomic> include in ProxyListConfiguration
2020-07-04 15:32:02 +03:00
Anton Ivashkin
23b44ca6fe
Add type column in system.disks
2020-07-03 15:45:54 +03:00
Vladimir Chebotarev
8128ca10f4
Switched paths in S3 metadata to relative.
2020-06-30 07:59:22 +03:00
Alexey Milovidov
1462a66d1e
Fix typos
2020-06-27 22:05:00 +03:00
Anton Popov
b2aa565a37
allow to turn on fsync on inserts, merges and fetches
2020-06-27 17:52:16 +03:00
Anton Popov
f8f67a788e
allow to turn on fsync on inserts and merges
2020-06-25 19:55:45 +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
7e1813825b
Return old names of macros
2020-05-24 01:24:01 +03:00
Alexey Milovidov
18febd7b97
find {base,src,programs} -name '*.h' -or -name '*.cpp' | xargs grep -l -P 'LOG_[^\_(]+\([^,]+, "[^"]+" << [^<]+ << "[^"]+" << [^<]+ << "[^"]+" << [^<]+ << "[^"]+" << [^<]+ << "[^"]+"\);' | while read file; do perl -pne 's/(LOG_[^\_(]+)\(([^,]+), "([^"]+)" << ([^<]+) << "([^"]+)" << ([^<]+) << "([^"]+)" << ([^<]+) << "([^"]+)" << ([^<]+) << "([^"]+)"\);/${1}_FORMATTED(${2}, "${3}{}${5}{}${7}{}${9}{}${11}", ${4}, ${6}, ${8}, ${10});/' $file > ${file}.tmp; mv ${file}.tmp $file; done
2020-05-23 22:56:05 +03:00
Alexey Milovidov
d5b7883451
find {base,src,programs} -name '*.h' -or -name '*.cpp' | xargs grep -l -P 'LOG_[^\_(]+\([^,]+, "[^"]+" << [^<]+ << "[^"]+" << [^<]+ << "[^"]+" << [^<]+ << "[^"]+"\);' | xargs sed -i -r -e 's/(LOG_[^\_(]+)\(([^,]+), "([^"]+)" << ([^<]+) << "([^"]+)" << ([^<]+) << "([^"]+)" << ([^<]+) << "([^"]+)"\);/\1_FORMATTED(\2, "\3{}\5{}\7{}\9", \4, \6, \8);/'
2020-05-23 22:41:08 +03:00
Alexey Milovidov
0ab3ca8534
Apply all transformations again
2020-05-23 22:32:44 +03:00
Alexey Milovidov
29762240de
Remove duplicate whitespaces (preparation)
2020-05-23 22:31:54 +03:00
Alexey Milovidov
7fed65cbe2
Remove duplicate whitespaces (preparation)
2020-05-23 22:14:58 +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
9d24908e53
Progress on task
2020-05-23 20:52:11 +03:00