This is an automated email from the ASF dual-hosted git repository. stevel pushed a commit to branch branch-3.3.3 in repository https://gitbox.apache.org/repos/asf/hadoop.git
The following commit(s) were added to refs/heads/branch-3.3.3 by this push: new 1c7b0bc5f47 HADOOP-18330. S3AFileSystem removes Path when calling createS3Client (#4557) 1c7b0bc5f47 is described below commit 1c7b0bc5f47025d305d7654f9bcc06148c62aa7a Author: ashutoshpant <51799223+ashutoshp...@users.noreply.github.com> AuthorDate: Sat Jul 16 12:52:48 2022 -0400 HADOOP-18330. S3AFileSystem removes Path when calling createS3Client (#4557) Adds a new attribute to S3A client builder parameter object containing the full filesystem path used when creating the S3A FileSystem instance. Contributed by Ashutosh Pant. --- .../org/apache/hadoop/fs/s3a/S3AFileSystem.java | 1 + .../org/apache/hadoop/fs/s3a/S3ClientFactory.java | 27 ++++++++++++++++++++++ .../hadoop/fs/s3a/ITestS3AEndpointRegion.java | 1 + .../ITestSessionDelegationInFileystem.java | 1 + 4 files changed, 30 insertions(+) diff --git a/hadoop-tools/hadoop-aws/src/main/java/org/apache/hadoop/fs/s3a/S3AFileSystem.java b/hadoop-tools/hadoop-aws/src/main/java/org/apache/hadoop/fs/s3a/S3AFileSystem.java index 5219b04f179..86b9319ca1a 100644 --- a/hadoop-tools/hadoop-aws/src/main/java/org/apache/hadoop/fs/s3a/S3AFileSystem.java +++ b/hadoop-tools/hadoop-aws/src/main/java/org/apache/hadoop/fs/s3a/S3AFileSystem.java @@ -888,6 +888,7 @@ public class S3AFileSystem extends FileSystem implements StreamCapabilities, S3ClientFactory.S3ClientCreationParameters parameters = null; parameters = new S3ClientFactory.S3ClientCreationParameters() .withCredentialSet(credentials) + .withPath(name) .withEndpoint(endpoint) .withMetrics(statisticsContext.newStatisticsFromAwsSdk()) .withPathStyleAccess(conf.getBoolean(PATH_STYLE_ACCESS, false)) diff --git a/hadoop-tools/hadoop-aws/src/main/java/org/apache/hadoop/fs/s3a/S3ClientFactory.java b/hadoop-tools/hadoop-aws/src/main/java/org/apache/hadoop/fs/s3a/S3ClientFactory.java index 5ef99ed6f5c..6ff239c6d82 100644 --- a/hadoop-tools/hadoop-aws/src/main/java/org/apache/hadoop/fs/s3a/S3ClientFactory.java +++ b/hadoop-tools/hadoop-aws/src/main/java/org/apache/hadoop/fs/s3a/S3ClientFactory.java @@ -115,6 +115,12 @@ public interface S3ClientFactory { */ private String userAgentSuffix = ""; + /** + * S3A path. + * added in HADOOP-18330 + */ + private URI pathUri; + /** * List of request handlers to include in the chain * of request execution in the SDK. @@ -264,5 +270,26 @@ public interface S3ClientFactory { public Map<String, String> getHeaders() { return headers; } + + /** + * Get the full s3 path. + * added in HADOOP-18330 + * @return path URI + */ + public URI getPath() { + return pathUri; + } + + /** + * Set full s3a path. + * added in HADOOP-18330 + * @param value new value + * @return the builder + */ + public S3ClientCreationParameters withPath( + final URI value) { + pathUri = value; + return this; + } } } diff --git a/hadoop-tools/hadoop-aws/src/test/java/org/apache/hadoop/fs/s3a/ITestS3AEndpointRegion.java b/hadoop-tools/hadoop-aws/src/test/java/org/apache/hadoop/fs/s3a/ITestS3AEndpointRegion.java index 761dd558063..db19a6bb858 100644 --- a/hadoop-tools/hadoop-aws/src/test/java/org/apache/hadoop/fs/s3a/ITestS3AEndpointRegion.java +++ b/hadoop-tools/hadoop-aws/src/test/java/org/apache/hadoop/fs/s3a/ITestS3AEndpointRegion.java @@ -176,6 +176,7 @@ public class ITestS3AEndpointRegion extends AbstractS3ATestBase { S3ClientFactory.S3ClientCreationParameters parameters = new S3ClientFactory.S3ClientCreationParameters() .withCredentialSet(new AnonymousAWSCredentialsProvider()) + .withPath(new URI("s3a://localhost/")) .withEndpoint(endpoint) .withMetrics(new EmptyS3AStatisticsContext() .newStatisticsFromAwsSdk()); diff --git a/hadoop-tools/hadoop-aws/src/test/java/org/apache/hadoop/fs/s3a/auth/delegation/ITestSessionDelegationInFileystem.java b/hadoop-tools/hadoop-aws/src/test/java/org/apache/hadoop/fs/s3a/auth/delegation/ITestSessionDelegationInFileystem.java index 47fad292156..767848f65c7 100644 --- a/hadoop-tools/hadoop-aws/src/test/java/org/apache/hadoop/fs/s3a/auth/delegation/ITestSessionDelegationInFileystem.java +++ b/hadoop-tools/hadoop-aws/src/test/java/org/apache/hadoop/fs/s3a/auth/delegation/ITestSessionDelegationInFileystem.java @@ -590,6 +590,7 @@ public class ITestSessionDelegationInFileystem extends AbstractDelegationIT { S3ClientFactory.S3ClientCreationParameters parameters = null; parameters = new S3ClientFactory.S3ClientCreationParameters() .withCredentialSet(testingCreds) + .withPath(new URI("s3a://localhost/")) .withEndpoint(DEFAULT_ENDPOINT) .withMetrics(new EmptyS3AStatisticsContext() .newStatisticsFromAwsSdk()) --------------------------------------------------------------------- To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org