[
https://issues.apache.org/jira/browse/HADOOP-16085?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16763078#comment-16763078
]
Aaron Fabbri commented on HADOOP-16085:
---------------------------------------
{quote}My other concern is that this requires enabling object versioning. I
know Aaron Fabbri has done some testing with that and I think eventually hit
issues. Was it just a matter of the space all the versions were taking up, or
was it actually a performance problem once there was enough overhead?{quote}
Yeah I had "broken" certain paths (keys) on an s3 bucket by leaving versioning
enabled on a dev bucket where I'd frequently delete and recreate the same keys.
There appeared to be some scalability limit on the number of versions a
particular key can have. So the lifecycle policy to purge old versions would
be important I think.
I share [[email protected]]'s hesitation on doing this all in S3Guard. Just
from experience with all the corner cases and S3 flakiness. I'm glad you are
looking into it and prototyping, though; we want more people to learn this
codebase.
> S3Guard: use object version to protect against inconsistent read after
> replace/overwrite
> ----------------------------------------------------------------------------------------
>
> Key: HADOOP-16085
> URL: https://issues.apache.org/jira/browse/HADOOP-16085
> Project: Hadoop Common
> Issue Type: Sub-task
> Components: fs/s3
> Affects Versions: 3.2.0
> Reporter: Ben Roling
> Priority: Major
> Attachments: HADOOP-16085_3.2.0_001.patch
>
>
> Currently S3Guard doesn't track S3 object versions. If a file is written in
> S3A with S3Guard and then subsequently overwritten, there is no protection
> against the next reader seeing the old version of the file instead of the new
> one.
> It seems like the S3Guard metadata could track the S3 object version. When a
> file is created or updated, the object version could be written to the
> S3Guard metadata. When a file is read, the read out of S3 could be performed
> by object version, ensuring the correct version is retrieved.
> I don't have a lot of direct experience with this yet, but this is my
> impression from looking through the code. My organization is looking to
> shift some datasets stored in HDFS over to S3 and is concerned about this
> potential issue as there are some cases in our codebase that would do an
> overwrite.
> I imagine this idea may have been considered before but I couldn't quite
> track down any JIRAs discussing it. If there is one, feel free to close this
> with a reference to it.
> Am I understanding things correctly? Is this idea feasible? Any feedback
> that could be provided would be appreciated. We may consider crafting a
> patch.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]