Better support of GCP storage#38069
Conversation
| if (size == 0) | ||
| { | ||
| LOG_TRACE(log, "Skipping single part upload. Buffer is empty."); | ||
| return; | ||
| } | ||
|
|
There was a problem hiding this comment.
Actually this PR fixes removing of empty parts from GCP storage. The bug was here: we didn't write empty files at all and then we couldn't delete them. It doesn't reproduce with aws s3, because in it DeleteObject always returns OK even if key doesn't exist.
|
@Mergifyio update |
✅ Branch has been successfully updated |
|
@Mergifyio update |
✅ Branch has been successfully updated |
Flaky now? |
|
Always has been #35765 |
|
Stateless tests (release, s3 storage, actions) : AST Fuzzer and Stress Test are unrelated. |
GCS server does not handle requests with port, and simply report an
error:
```xml
<?xml version="1.0"?>
<?xml version='1.0' encoding='UTF-8'?>
<Error>
<Code>InvalidURI</Code>
<Message>Couldn't parse the specified URI.</Message>
<Details>Invalid URL: storage.googleapis.com:443/...</Details>
</Error>
```
Removing the port fixes the issue. Note that there is port in the Host
header anyway.
Note, this is a problem only for proxy in a tunnel mode, since only it
sends such requests, other sends requests directly via HTTP methods.
Refs: ClickHouse/poco#22 (comment) (cc @Jokser)
Refs: ClickHouse/poco#63
Refs: ClickHouse#38069 (cc @CurtizJ)
Cc: @alesapin @kssenii
Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
Changelog category (leave one):