-
Notifications
You must be signed in to change notification settings - Fork 6.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix crash for uploading parts which size is greater then INT_MAX to S3 #47693
Conversation
9f5beae
to
6d869e3
Compare
@azat a submodule is updated by mistake. |
stringstream, as well as iostreams - are not allowed in the ClickHouse source code. |
Parts should be uploaded in a streaming fashion without extra buffering or copying. |
It was done by intention, since submodule update contain a fix for the
I'm not the fan of them either, but aws-cpp-sdk accepts them.
By default they "do" (as you can see the test sets But recently I've played with R2 storage, and it does not work nicely with multi-part upload, I've tried to upload everything in one part and server crashed, and after some digging I found this bug in the libc++ implementation of Also default size of |
e7d69bc
to
5c701b0
Compare
Changes to the LLVM submodule are merged, let's update and merge this PR. |
Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
Seems that the IO is too slow [1]. [1]: https://s3.amazonaws.com/clickhouse-test-reports/47693/6d869e3b0d3e439260eb54c32e3fa99acecae063/stateless_tests_flaky_check__asan_.html Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
Seems that version of MinIO that is used on CI is too slow for this [1], I've tried the same locally with RELEASE.2023-02-10T18-48-39Z and everythings works OK, but I have NVME locally and more recent MinIO. [1]: https://s3.amazonaws.com/clickhouse-test-reports/47693/5c701b090c3ec10cb2a4a708b60d364eb02192fe/stateless_tests_flaky_check__asan_.html Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
Reverts: ClickHouse#48816 Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
Refs: https://reviews.llvm.org/D146294 Refs: ClickHouse/llvm-project#9 Refs: ClickHouse/llvm-project#16 Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
b690664
to
fff6062
Compare
|
Changelog category (leave one):
Changelog entry (a user-readable short description of the changes that goes to CHANGELOG.md):
Fix crash for uploading parts which size is greater then INT_MAX to S3
The problem was that
std::stringstream
from libc++ crashes when you have > INT_MAX bytes there (after callinggcount()
).Refs: ClickHouse/llvm-project#9
Refs: ClickHouse/llvm-project#16
Fixes: #47679
Reverts: #48816
Cc: @rschu1ze