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

Steve Loughran updated HADOOP-19256:
------------------------------------
    Release Note: S3A client now uses S3 conditional overwrite PUT requests to 
perform overwrite protection checks at end of PUT request (stream close()). 
This saves a HEAD request on file creation, and actually delivers an atomic 
creation. It may not be supported on third party stores: set 
fs.s3a.create.conditional.enabled to false to revert to the old behavior. 
Consult the third-party-stores documentation for details.  (was: S3A client now 
uses S3 conditional overwrite PUT requests to perform overwrite protection 
checks at end of PUT request (stream close()). This saves a HEAD request on 
file creation, and actually delivers an atomic creation. It may not be 
supported on third party stores: set fs.s3a.create.conditional.enabled to false 
to revert to the old behavior)

> S3A: Support S3 Conditional Writes
> ----------------------------------
>
>                 Key: HADOOP-19256
>                 URL: https://issues.apache.org/jira/browse/HADOOP-19256
>             Project: Hadoop Common
>          Issue Type: Sub-task
>          Components: fs/s3
>            Reporter: Ahmar Suhail
>            Assignee: Saikat Roy
>            Priority: Major
>              Labels: pull-request-available
>             Fix For: 3.5.0, 3.4.2
>
>
> S3 Conditional Write (Put-if-absent) capability is now generally available - 
> [https://aws.amazon.com/about-aws/whats-new/2024/08/amazon-s3-conditional-writes/]
> S3A should allow passing in this put-if-absent header to prevent over writing 
> of files. 
> There is a feature branch for this: HADOOP-19256-s3-conditional-writes
> + support etags to allow an overwrite to be restricted to overwriting a 
> specific version. This can be done through a createFile option.
> https://docs.aws.amazon.com/AmazonS3/latest/userguide/conditional-writes.html
> Fun fact; third party stores will not reject overwrites if they don't 
> recognise the headers, so there's no way to be sure they are supported 
> without testing.
> we need a flag to enable/disable conditional writes which can be exposed in a 
> hasPathCapability()



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

---------------------------------------------------------------------
To unsubscribe, e-mail: common-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: common-issues-h...@hadoop.apache.org

Reply via email to