[ 
https://issues.apache.org/jira/browse/FLINK-39560?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Badma Ochirov updated FLINK-39560:
----------------------------------
    Description: 
*Current behavior:*

Incoming release-2.3 provides new Native S3 File System with AWS S3 v2 support. 
Filesystem constructs its internal _S3Client_ and _S3AsyncClient_ directly 
within the filesystem implementation.

*Proposed Improvement:*

I would like to propose an enhancement to allow users to inject externally 
created and pre-configured instances of {_}S3Client{_}, _S3AsyncClient_ into 
the Native S3 File System.

The change should be fully backward compatible. If no custom factory or clients 
are provided, the filesystem should behave exactly as it does now.

This is valuable in environments where:
 # The application already manages AWS SDK client lifecycle (e.g., for other 
services).
 # There are strict architectural or security requirements to use a specific, 
centrally configured client (e.g., with custom interceptors, metrics, tracing, 
or credential resolution chains).
 # It simplifies configuration by reusing existing client factories or 
dependency injection contexts.

  was:
*Current behavior:*

Incoming release-2.3 provides new Native S3 File System with AWS S3 v2 support. 
Filesystem constructs its internal _S3Client_ and _S3AsyncClient_ (and 
associated {_}AwsCredentialsProvider{_}) directly within the filesystem 
implementation.

*Proposed Improvement:*

I would like to propose an enhancement to allow users to inject externally 
created and pre-configured instances of {_}S3Client{_}, {_}S3AsyncClient{_}, 
and _AwsCredentialsProvider_ into the Native S3 File System.

The change should be fully backward compatible. If no custom factory or clients 
are provided, the filesystem should behave exactly as it does now.

This is valuable in environments where:
 # The application already manages AWS SDK client lifecycle (e.g., for other 
services).
 # There are strict architectural or security requirements to use a specific, 
centrally configured client (e.g., with custom interceptors, metrics, tracing, 
or credential resolution chains).
 # It simplifies configuration by reusing existing client factories or 
dependency injection contexts.


> [PROPOSAL] Allow custom, pre-configured AWS S3 clients to be injected into 
> new Native S3 filesystem
> ---------------------------------------------------------------------------------------------------
>
>                 Key: FLINK-39560
>                 URL: https://issues.apache.org/jira/browse/FLINK-39560
>             Project: Flink
>          Issue Type: Improvement
>          Components: Runtime / State Backends
>    Affects Versions: 2.3.0
>            Reporter: Badma Ochirov
>            Priority: Major
>
> *Current behavior:*
> Incoming release-2.3 provides new Native S3 File System with AWS S3 v2 
> support. Filesystem constructs its internal _S3Client_ and _S3AsyncClient_ 
> directly within the filesystem implementation.
> *Proposed Improvement:*
> I would like to propose an enhancement to allow users to inject externally 
> created and pre-configured instances of {_}S3Client{_}, _S3AsyncClient_ into 
> the Native S3 File System.
> The change should be fully backward compatible. If no custom factory or 
> clients are provided, the filesystem should behave exactly as it does now.
> This is valuable in environments where:
>  # The application already manages AWS SDK client lifecycle (e.g., for other 
> services).
>  # There are strict architectural or security requirements to use a specific, 
> centrally configured client (e.g., with custom interceptors, metrics, 
> tracing, or credential resolution chains).
>  # It simplifies configuration by reusing existing client factories or 
> dependency injection contexts.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to