Giter VIP home page Giter VIP logo

Comments (5)

ggtakec avatar ggtakec commented on May 18, 2024

Hi,

s3fs does not support versioning(x-amz-versionid header, /?versions request, etc.)
Now s3fs does nothing about versioning, so user only sets versioning attribute to their bucket on AWS console. s3fs reads/writes/does only latest objects.

If s3fs supported versioning, I thought the user interface was very difficult. because same name many object(file)s is in directory(under mount point).

Regards,

from s3fs-fuse.

sqlbot avatar sqlbot commented on May 18, 2024

@hetzbh to clarify this point, even though s3fs does not "support" versioning, s3fs still _does work correctly_ on buckets with versioning enabled because Amazon designed versioning to work transparently with clients (like s3fs) that are not aware of versioning, and you get the advantanges of versioning that you mentioned.

That's how I am using it, and for the same reason. You can't see old versions the objects or delete markers in the mounted "filesystem," because s3fs doesn't see them when it interacts with the S3 API using non-version-aware calls -- but the object versions are still accessible via the AWS console and the REST API... so you have the ability to recover from inadvertent overwrites, deletions, etc., that is a significant advantage of bucket versioning. It would probably have been a terrible mistake for s3fs to have attempted to actually "support" versioning in the sense of trying to expose the versioned objects through fuse.

The only caveat is, any change to a stored object (chown, chmod, chgrp, touch, rename, move) creates a whole new version of the object with the new attributes, because it changes the metadata. This happens because that's how versioning works -- the same thing happens when you edit metadata in the AWS console with a versioned bucket, and the "Versions: Hide" button is selected -- it makes a new version of the object, with the new metadata, leaving the previous "version" as it was).

This means eventually you'll want to clean things up, manually or with a script or background job... or you'll want to use bucket lifecycle policies to delete obsolete versions after some period of time. To me, the potential extra storage cost seems justified by the reduced risk. I have not had any issues since I began using it this way.

from s3fs-fuse.

ggtakec avatar ggtakec commented on May 18, 2024

I'm sorry for that this issue had been left at a long period of time.

If you have this problem yet, please try to use latest code.

Thanks in advance for your help.

from s3fs-fuse.

plaformsre avatar plaformsre commented on May 18, 2024

Hi @ggtakec ,
Could you confirm, if s3fs supports retrieval (read) of versioned objects? I am struggling with lack of technical documentation.
Thank you

from s3fs-fuse.

ggtakec avatar ggtakec commented on May 18, 2024

@plaformsre
You can see following comments in issues(one of them is this issue's comment and it is very clear explanation.)
#67 (comment)
#91 (comment)

from s3fs-fuse.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.