[
https://issues.apache.org/jira/browse/HADOOP-16190?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16792755#comment-16792755
]
Steve Loughran commented on HADOOP-16190:
-----------------------------------------
these operations return 412 "precondition failed" on errors
* exception translation will need to handle that, mapping to
RemoteFileChangedException (presumably do this everywhere)
* going to be hard to recreate the failure mode we want here to test the
failure mode reliably.
Also: copyFile must return (etag, version) so that the attributes of the copied
file can be used to update the S3Guard DDB tables
> S3A copyFile operation to include source versionID or etag in the copy request
> ------------------------------------------------------------------------------
>
> Key: HADOOP-16190
> URL: https://issues.apache.org/jira/browse/HADOOP-16190
> Project: Hadoop Common
> Issue Type: Sub-task
> Components: fs/s3
> Affects Versions: 3.2.0
> Reporter: Steve Loughran
> Priority: Major
>
> The S3 {{CopyObjectRequest}} structure used to build a copy request takes,
> optionally
> * a version ID of the source file
> * the etag of the source file
> using these will guarantee that the source file is copied exactly once
> 1. When working with S3Guard in auth mode, and the etag/version are kept in
> the DDB table, that should be the authoritative source of metadata: fail fast
> if the file is out of date
> 2. And when non-auth mode is used, the getObjectMetadata check made should
> update the s3guard table if needed.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]