You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ozone.apache.org by "hevinhsu (via GitHub)" <gi...@apache.org> on 2025/09/04 05:06:39 UTC
[PR] HDDS-5195. Support uploading objects with presigned URL [ozone]
hevinhsu opened a new pull request, #9000:
URL: https://github.com/apache/ozone/pull/9000
## What changes were proposed in this pull request?
Support uploading objects with presigned URL.
Please describe your PR in detail:
* Add default `x-amz-content-sha256` header with `UNSIGNED-PAYLOAD` when the payload is not signed.
* Skip strict validation of the `x-amz-content-sha256` header in `StringToSignProducer#validateCanonicalHeaders`.
## What is the link to the Apache JIRA
[HDDS-5195](https://issues.apache.org/jira/browse/HDDS-5195)
## How was this patch tested?
https://github.com/hevinhsu/ozone/actions/runs/17450984179
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For additional commands, e-mail: issues-help@ozone.apache.org
Re: [PR] HDDS-5195. Support uploading objects with presigned URL [ozone]
Posted by "ivandika3 (via GitHub)" <gi...@apache.org>.
ivandika3 commented on code in PR #9000:
URL: https://github.com/apache/ozone/pull/9000#discussion_r2329621551
##########
hadoop-ozone/s3gateway/src/main/java/org/apache/hadoop/ozone/s3/util/S3Utils.java:
##########
@@ -164,9 +164,13 @@ public static void validateMultiChunksUpload(HttpHeaders headers, String amzDeco
}
}
- public static String validateSignatureHeader(HttpHeaders headers, String resource) throws OS3Exception {
+ public static String validateSignatureHeader(HttpHeaders headers, String resource, boolean isSignedPayload)
+ throws OS3Exception {
String xAmzContentSha256Header = headers.getHeaderString(X_AMZ_CONTENT_SHA256);
if (xAmzContentSha256Header == null) {
+ if (!isSignedPayload) {
Review Comment:
Yes, this seems to be the root cause. There is a regression introduced by HDDS-12935. I think previously presigned PUT should already work.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For additional commands, e-mail: issues-help@ozone.apache.org
Re: [PR] HDDS-5195. Support uploading objects with presigned URL [ozone]
Posted by "hevinhsu (via GitHub)" <gi...@apache.org>.
hevinhsu commented on code in PR #9000:
URL: https://github.com/apache/ozone/pull/9000#discussion_r2329791924
##########
hadoop-ozone/integration-test-s3/src/test/java/org/apache/hadoop/ozone/s3/awssdk/v2/AbstractS3SDKV2Tests.java:
##########
@@ -616,6 +613,212 @@ public void testPresignedUrlHead() throws Exception {
}
}
+ @Test
+ public void testPresignedUrlPut() throws Exception {
+ final String bucketName = getBucketName();
+ final String keyName = getKeyName();
+ s3Client.createBucket(b -> b.bucket(bucketName));
+
+ try (S3Presigner presigner = createS3Presigner()) {
+
+ PutObjectRequest objectRequest = PutObjectRequest.builder()
+ .bucket(bucketName)
+ .key(keyName)
+ .contentType("text/plain")
Review Comment:
> Whether the exceptions an expected behavior or not? If it's expected behavior, perhaps the following put object should also set the Content-Type to "text/plain"
Oops, this is my mistake. In [AWS example](https://docs.aws.amazon.com/AmazonS3/latest/API/s3_example_s3_Scenario_PresignedUrl_section.html) , the original request does not include a Content-Type header, so the exception is expected. I'll remove `contentType("text/plain")` to fit the example.
> Why does it work for multi S3G setup, but not single S3G?
As for why it works in a multi-S3G setup but not with a single S3G, it seems that Jetty Proxy automatically adds a Content-Type header if it’s missing. I’m currently looking for a reference to confirm this behavior.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For additional commands, e-mail: issues-help@ozone.apache.org
Re: [PR] HDDS-5195. Support uploading objects with presigned URL [ozone]
Posted by "ivandika3 (via GitHub)" <gi...@apache.org>.
ivandika3 merged PR #9000:
URL: https://github.com/apache/ozone/pull/9000
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For additional commands, e-mail: issues-help@ozone.apache.org
Re: [PR] HDDS-5195. Support uploading objects with presigned URL [ozone]
Posted by "hevinhsu (via GitHub)" <gi...@apache.org>.
hevinhsu commented on PR #9000:
URL: https://github.com/apache/ozone/pull/9000#issuecomment-3274056577
Hi @ivandika3 , @jojochuang .
I’ve used presigned URLs for Multipart Upload (create/init, upload parts, and complete).
I also added tag count verification in the tests.
PTAL when you have time. Thanks!
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For additional commands, e-mail: issues-help@ozone.apache.org
Re: [PR] HDDS-5195. Support uploading objects with presigned URL [ozone]
Posted by "ivandika3 (via GitHub)" <gi...@apache.org>.
ivandika3 commented on PR #9000:
URL: https://github.com/apache/ozone/pull/9000#issuecomment-3268612696
@jojochuang How about we wait until all the presigned requests are all supported and update the docs that presigned URLs are now supported.
From what I see, we only need to test Presigned DeleteObject. I raised HDDS-13663 to test this, @hevinhsu you can take this if you are interested. I think it should already been supported so should be fairly straighforward.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For additional commands, e-mail: issues-help@ozone.apache.org
Re: [PR] HDDS-5195. Support uploading objects with presigned URL [ozone]
Posted by "ivandika3 (via GitHub)" <gi...@apache.org>.
ivandika3 commented on PR #9000:
URL: https://github.com/apache/ozone/pull/9000#issuecomment-3251910708
> Correct me if I'm wrong. From what I see, the current implementation does not actually use x-amz-content-sha256 to verify the payload. Because of that, the current version still fails the Mint test, which expects a failure with XAmzContentSHA256Mismatch.
Yes, currently it's not supported.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For additional commands, e-mail: issues-help@ozone.apache.org
Re: [PR] HDDS-5195. Support uploading objects with presigned URL [ozone]
Posted by "hevinhsu (via GitHub)" <gi...@apache.org>.
hevinhsu commented on code in PR #9000:
URL: https://github.com/apache/ozone/pull/9000#discussion_r2329799390
##########
hadoop-ozone/s3gateway/src/main/java/org/apache/hadoop/ozone/s3/util/S3Utils.java:
##########
@@ -164,9 +164,13 @@ public static void validateMultiChunksUpload(HttpHeaders headers, String amzDeco
}
}
- public static String validateSignatureHeader(HttpHeaders headers, String resource) throws OS3Exception {
+ public static String validateSignatureHeader(HttpHeaders headers, String resource, boolean isSignedPayload)
+ throws OS3Exception {
String xAmzContentSha256Header = headers.getHeaderString(X_AMZ_CONTENT_SHA256);
if (xAmzContentSha256Header == null) {
+ if (!isSignedPayload) {
Review Comment:
Thanks for confirming. I’ll fix the related comments soon.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For additional commands, e-mail: issues-help@ozone.apache.org
Re: [PR] HDDS-5195. Support uploading objects with presigned URL [ozone]
Posted by "hevinhsu (via GitHub)" <gi...@apache.org>.
hevinhsu commented on PR #9000:
URL: https://github.com/apache/ozone/pull/9000#issuecomment-3269370504
Sorry, I missed some scenarios for Multipart Upload. The `Create`, `Upload Part`, and `Complete` operations all have presigned URL support, but the current implementation only tests the `Upload Part`.
I’ll add tests for the other scenarios soon.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For additional commands, e-mail: issues-help@ozone.apache.org
Re: [PR] HDDS-5195. Support uploading objects with presigned URL [ozone]
Posted by "ivandika3 (via GitHub)" <gi...@apache.org>.
ivandika3 commented on code in PR #9000:
URL: https://github.com/apache/ozone/pull/9000#discussion_r2329875834
##########
hadoop-ozone/integration-test-s3/src/test/java/org/apache/hadoop/ozone/s3/awssdk/v2/AbstractS3SDKV2Tests.java:
##########
@@ -616,6 +613,212 @@ public void testPresignedUrlHead() throws Exception {
}
}
+ @Test
+ public void testPresignedUrlPut() throws Exception {
+ final String bucketName = getBucketName();
+ final String keyName = getKeyName();
+ s3Client.createBucket(b -> b.bucket(bucketName));
+
+ try (S3Presigner presigner = createS3Presigner()) {
+
+ PutObjectRequest objectRequest = PutObjectRequest.builder()
+ .bucket(bucketName)
+ .key(keyName)
+ .contentType("text/plain")
Review Comment:
> Whether the exceptions an expected behavior or not? If it's expected behavior, perhaps the following put object should also set the Content-Type to "text/plain"
Seems this is an expected behavior, adding the "Content-Type" header explicitly in the subsequent `PutObject` request works (https://github.com/ivandika3/ozone/commit/6333b6c0efbaed5fa8684615813b79a2c0b2bc89).
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For additional commands, e-mail: issues-help@ozone.apache.org
Re: [PR] HDDS-5195. Support uploading objects with presigned URL [ozone]
Posted by "hevinhsu (via GitHub)" <gi...@apache.org>.
hevinhsu commented on code in PR #9000:
URL: https://github.com/apache/ozone/pull/9000#discussion_r2329796908
##########
hadoop-ozone/s3gateway/src/test/java/org/apache/hadoop/ozone/s3/endpoint/EndpointBuilder.java:
##########
@@ -74,6 +76,11 @@ public EndpointBuilder<T> setRequestId(RequestIdentifier newRequestId) {
return this;
}
+ public EndpointBuilder<T> setSignatureInfo(SignatureInfo newSignatureInfo) {
+ this.signatureInfo = newSignatureInfo;
+ return this;
+ }
Review Comment:
Thanks for pointing this out. That’s a good idea, I’ll give it a try.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For additional commands, e-mail: issues-help@ozone.apache.org
Re: [PR] HDDS-5195. Support uploading objects with presigned URL [ozone]
Posted by "ivandika3 (via GitHub)" <gi...@apache.org>.
ivandika3 commented on code in PR #9000:
URL: https://github.com/apache/ozone/pull/9000#discussion_r2329829725
##########
hadoop-ozone/integration-test-s3/src/test/java/org/apache/hadoop/ozone/s3/awssdk/v2/AbstractS3SDKV2Tests.java:
##########
@@ -616,6 +613,212 @@ public void testPresignedUrlHead() throws Exception {
}
}
+ @Test
+ public void testPresignedUrlPut() throws Exception {
+ final String bucketName = getBucketName();
+ final String keyName = getKeyName();
+ s3Client.createBucket(b -> b.bucket(bucketName));
+
+ try (S3Presigner presigner = createS3Presigner()) {
+
+ PutObjectRequest objectRequest = PutObjectRequest.builder()
+ .bucket(bucketName)
+ .key(keyName)
+ .contentType("text/plain")
Review Comment:
Thanks, this brings us to another topic on whether we should parameterize testing on a single S3G and multiple S3Gs to catch this difference. I assume that Jetty Proxy should be very thin and should be a pass through.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For additional commands, e-mail: issues-help@ozone.apache.org
Re: [PR] HDDS-5195. Support uploading objects with presigned URL [ozone]
Posted by "ivandika3 (via GitHub)" <gi...@apache.org>.
ivandika3 commented on code in PR #9000:
URL: https://github.com/apache/ozone/pull/9000#discussion_r2332223166
##########
hadoop-ozone/integration-test-s3/src/test/java/org/apache/hadoop/ozone/s3/awssdk/v2/AbstractS3SDKV2Tests.java:
##########
@@ -616,6 +613,212 @@ public void testPresignedUrlHead() throws Exception {
}
}
+ @Test
+ public void testPresignedUrlPut() throws Exception {
+ final String bucketName = getBucketName();
+ final String keyName = getKeyName();
+ s3Client.createBucket(b -> b.bucket(bucketName));
+
+ try (S3Presigner presigner = createS3Presigner()) {
+
+ PutObjectRequest objectRequest = PutObjectRequest.builder()
+ .bucket(bucketName)
+ .key(keyName)
+ .contentType("text/plain")
Review Comment:
Thanks for researching. Since "application/octet-stream" differs from "text/plain", if the signature validation is implemented, this issue should be detected. I raised HDDS-13668 to implement single chunk signature validation (e.g. when `x-amz-content-sha256` actually contains the hash instead of `UNSIGNED-PAYLOAD` or other multi chunk header `STREAMING-AWS4-HMAC-SHA256-PAYLOAD`, etc).
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For additional commands, e-mail: issues-help@ozone.apache.org
Re: [PR] HDDS-5195. Support uploading objects with presigned URL [ozone]
Posted by "hevinhsu (via GitHub)" <gi...@apache.org>.
hevinhsu commented on code in PR #9000:
URL: https://github.com/apache/ozone/pull/9000#discussion_r2320847347
##########
hadoop-ozone/s3gateway/src/main/java/org/apache/hadoop/ozone/s3/util/S3Utils.java:
##########
@@ -164,9 +164,13 @@ public static void validateMultiChunksUpload(HttpHeaders headers, String amzDeco
}
}
- public static String validateSignatureHeader(HttpHeaders headers, String resource) throws OS3Exception {
+ public static String validateSignatureHeader(HttpHeaders headers, String resource, boolean isSignedPayload)
+ throws OS3Exception {
String xAmzContentSha256Header = headers.getHeaderString(X_AMZ_CONTENT_SHA256);
if (xAmzContentSha256Header == null) {
+ if (!isSignedPayload) {
Review Comment:
In the [AWS example](https://docs.aws.amazon.com/AmazonS3/latest/API/s3_example_s3_Scenario_PresignedUrl_section.html), the request does not include the `x-amz-content-sha256` header. To align with this behavior, I followed [minio's impelemtation](https://github.com/minio/minio/blob/master/cmd/signature-v4-utils.go#L109) and use `UNSIGNED-PAYLOAD` as the default value when header is missing.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For additional commands, e-mail: issues-help@ozone.apache.org
Re: [PR] HDDS-5195. Support uploading objects with presigned URL [ozone]
Posted by "hevinhsu (via GitHub)" <gi...@apache.org>.
hevinhsu commented on PR #9000:
URL: https://github.com/apache/ozone/pull/9000#issuecomment-3251895061
Correct me if I'm wrong. From what I see, the current implementation does not actually use `x-amz-content-sha256` to verify the payload. Because of that, the current version still fails the Mint test, which expects a failure with XAmzContentSHA256Mismatch.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For additional commands, e-mail: issues-help@ozone.apache.org
Re: [PR] HDDS-5195. Support uploading objects with presigned URL [ozone]
Posted by "hevinhsu (via GitHub)" <gi...@apache.org>.
hevinhsu commented on code in PR #9000:
URL: https://github.com/apache/ozone/pull/9000#discussion_r2332157153
##########
hadoop-ozone/integration-test-s3/src/test/java/org/apache/hadoop/ozone/s3/awssdk/v2/AbstractS3SDKV2Tests.java:
##########
@@ -616,6 +613,212 @@ public void testPresignedUrlHead() throws Exception {
}
}
+ @Test
+ public void testPresignedUrlPut() throws Exception {
+ final String bucketName = getBucketName();
+ final String keyName = getKeyName();
+ s3Client.createBucket(b -> b.bucket(bucketName));
+
+ try (S3Presigner presigner = createS3Presigner()) {
+
+ PutObjectRequest objectRequest = PutObjectRequest.builder()
+ .bucket(bucketName)
+ .key(keyName)
+ .contentType("text/plain")
Review Comment:
After researching the Jetty source code, I found that Jetty uses [HttpClient](https://github.com/apache/ozone/pull/8366/files#diff-14d87cf314243dab3800ff6fddf04984a1d8b3c5ec308b79f10fae921e34dec5)
to send requests. During request processing, `HttpClient` automatically adds a default `Content-Type` header with the value `"application/octet-stream"`.
This explains why `multi-s3G` passes the test without an explicit `Content-Type` header.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For additional commands, e-mail: issues-help@ozone.apache.org
Re: [PR] HDDS-5195. Support uploading objects with presigned URL [ozone]
Posted by "ivandika3 (via GitHub)" <gi...@apache.org>.
ivandika3 commented on code in PR #9000:
URL: https://github.com/apache/ozone/pull/9000#discussion_r2329315399
##########
hadoop-ozone/integration-test-s3/src/test/java/org/apache/hadoop/ozone/s3/awssdk/v2/AbstractS3SDKV2Tests.java:
##########
@@ -616,6 +613,212 @@ public void testPresignedUrlHead() throws Exception {
}
}
+ @Test
+ public void testPresignedUrlPut() throws Exception {
+ final String bucketName = getBucketName();
+ final String keyName = getKeyName();
+ s3Client.createBucket(b -> b.bucket(bucketName));
+
+ try (S3Presigner presigner = createS3Presigner()) {
+
+ PutObjectRequest objectRequest = PutObjectRequest.builder()
+ .bucket(bucketName)
+ .key(keyName)
+ .contentType("text/plain")
Review Comment:
FYI, I encountered the following exceptions when running this test on a single S3G in https://github.com/ivandika3/ozone/tree/PRESIGN-PUT-URL-HDDS-5195 branch.
`2025-09-08 14:48:55,244 [qtp2090953436-526] ERROR signature.StringToSignProducer (StringToSignProducer.java:buildCanonicalRequest(194)) - Header content-type not present in request but requested to be signed.`
This branch is set before the HDDS-11679 (multi S3G test) since I encountered some exceptions when running the tests locally (not sure the root cause yet, possibly due to some local hostname conf). Anyway, the presigned URL generated looks like
http://0.0.0.0:15008/testpresignedurlputbucket/testpresignedurlputkey?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Date=20250908T022938Z&X-Amz-SignedHeaders=content-type%3Bhost&X-Amz-Credential=user%2F20250908%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Expires=600&X-Amz-Signature=3f76eb9e76ec55efe096c19f55ee521e1aa55ba825267b95ee7239ed57a40621
However, I suspect that because the following upload with the `HttpURLConnection` does not specify the "content-type" header, but the presigned specify "content-type" as SigneHeaders, which causes the signature to fail. When I remove the `contentType("text/plain")`, it seems to work.
There are a few things to confirm:
- Whether the exceptions an expected behavior or not? If it's expected behavior, perhaps the following put object should also set the Content-Type to "text/plain"
- Why does it work for multi S3G setup, but not single S3G?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For additional commands, e-mail: issues-help@ozone.apache.org
Re: [PR] HDDS-5195. Support uploading objects with presigned URL [ozone]
Posted by "ivandika3 (via GitHub)" <gi...@apache.org>.
ivandika3 commented on PR #9000:
URL: https://github.com/apache/ozone/pull/9000#issuecomment-3277305647
Thanks @hevinhsu for the patch and @jojochuang for the review.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For additional commands, e-mail: issues-help@ozone.apache.org
Re: [PR] HDDS-5195. Support uploading objects with presigned URL [ozone]
Posted by "hevinhsu (via GitHub)" <gi...@apache.org>.
hevinhsu commented on PR #9000:
URL: https://github.com/apache/ozone/pull/9000#issuecomment-3277329524
Thanks @jojochuang for the review and @ivandika3 for the review and merge.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For additional commands, e-mail: issues-help@ozone.apache.org
Re: [PR] HDDS-5195. Support uploading objects with presigned URL [ozone]
Posted by "hevinhsu (via GitHub)" <gi...@apache.org>.
hevinhsu commented on PR #9000:
URL: https://github.com/apache/ozone/pull/9000#issuecomment-3283881381
Hi, I raised a [Jira ticket](https://issues.apache.org/jira/browse/HDDS-13676)
for this user doc update.
Feel free to adjust the description as you see fit.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For additional commands, e-mail: issues-help@ozone.apache.org
Re: [PR] HDDS-5195. Support uploading objects with presigned URL [ozone]
Posted by "ivandika3 (via GitHub)" <gi...@apache.org>.
ivandika3 commented on code in PR #9000:
URL: https://github.com/apache/ozone/pull/9000#discussion_r2329700292
##########
hadoop-ozone/s3gateway/src/test/java/org/apache/hadoop/ozone/s3/endpoint/EndpointBuilder.java:
##########
@@ -74,6 +76,11 @@ public EndpointBuilder<T> setRequestId(RequestIdentifier newRequestId) {
return this;
}
+ public EndpointBuilder<T> setSignatureInfo(SignatureInfo newSignatureInfo) {
+ this.signatureInfo = newSignatureInfo;
+ return this;
+ }
Review Comment:
How about we set
```java
SignatureInfo signatureInfo = mock(SignatureInfo.class);
when(signatureInfo.isSignPayload()).thenReturn(true);
```
as a default value `SignatureInfo` to the `EndpointBuilder` (similar to `OzoneConfiguration` and `RequestIdenfitifer`). This way, we don't need to add codes in each of the tests (in the spirit of HDDS-12116).
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For additional commands, e-mail: issues-help@ozone.apache.org
Re: [PR] HDDS-5195. Support uploading objects with presigned URL [ozone]
Posted by "ivandika3 (via GitHub)" <gi...@apache.org>.
ivandika3 commented on code in PR #9000:
URL: https://github.com/apache/ozone/pull/9000#discussion_r2329700292
##########
hadoop-ozone/s3gateway/src/test/java/org/apache/hadoop/ozone/s3/endpoint/EndpointBuilder.java:
##########
@@ -74,6 +76,11 @@ public EndpointBuilder<T> setRequestId(RequestIdentifier newRequestId) {
return this;
}
+ public EndpointBuilder<T> setSignatureInfo(SignatureInfo newSignatureInfo) {
+ this.signatureInfo = newSignatureInfo;
+ return this;
+ }
Review Comment:
How about we set
```java
SignatureInfo signatureInfo = mock(SignatureInfo.class);
when(signatureInfo.isSignPayload()).thenReturn(true);
```
as a default value `SignatureInfo` to the `EndpointBuilder` (similar to `OzoneConfiguration` and `RequestIdenfitifer`). This way, we don't need to add codes in each of the tests (in the spirit of HDDS-12117).
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For additional commands, e-mail: issues-help@ozone.apache.org